griptape icon indicating copy to clipboard operation
griptape copied to clipboard

Add before and after hooks for masking data in prompts

Open vasinov opened this issue 1 year ago • 1 comments

Some users would like to mask and unmask data that goes out to external APIs as part the LLM prompt (e.g., customer PII). To solve this problem I propose adding the following to the framework:

  1. Add BasePromptStackProcessor class that contains before_run and after_run methods. Let's think of better names.
  2. Add prompt_stack_processors: list[PromptStackProcessork] property that contains a list of optional prompt stack processors.
  3. Run PromptStackProcessor.before_run in BasePromptDriver.before_run and PromptStackProcessor.after_runinBasePromptDriver.after_run` in all prompt processors.
  4. Add AmazonComprehendPiiProcessor that uses Amazon Comprehend to filter out PII data.
  5. Add PromptDriverPiiProcessor that can use an arbitrary prompt driver to filter out PII data.

vasinov avatar Nov 05 '23 21:11 vasinov

can I work on this?

ashkaaar avatar Nov 06 '23 22:11 ashkaaar