Aim Security post-call guardrails support #8356
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Title
This PR adds support for post-call Aim Security guardrails. Aim guards can analyze LLM output in streaming mode using websockets, in order to ensure a smooth user experience while securing the streamed content with increasing context rather than processing it chunk by chunk.
Type
🆕 New Feature
Changes
I've added a new CustomGuardrail hook that allows Guardrails to consume the response stream as an iterator instead of chunk by chunk. An example usage is in
aim.py
.[REQUIRED] Testing - Attach a screenshot of any new tests passing locally
If UI changes, send a screenshot/GIF of working UI fixes
Tested on python 3.9 - 3.12 (3.8 seems to have some dependency issues at the moment).
Thanks in advance for your review :)
Tomer