-
Notifications
You must be signed in to change notification settings - Fork 550
docs(examples): add nemoguards cache configuration example #1459
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
6a7474e
to
630eafa
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
630eafa
to
9dbb323
Compare
Updates abstract method implementations in CacheInterface to use ellipsis (...) instead of pass, following modern Python conventions for abstract method stubs.
Extends the cache system to store and restore LLM metadata (model name and provider name) alongside cache entries. This allows cached results to maintain provenance information about which model and provider generated the original response. - Added LLMMetadataDict and LLMCacheData TypedDict definitions for type safety - Extended CacheEntry to include optional llm_metadata field - Implemented extract_llm_metadata_for_cache() to capture model and provider info from context - Implemented restore_llm_metadata_from_cache() to restore metadata when retrieving cached results - Updated get_from_cache_and_restore_stats() to handle metadata extraction and restoration - Added comprehensive test coverage for metadata caching functionalit
…output checks Extends the LLM caching system to support topic safety input checks and content safety output checks. Both actions now cache their results along with LLM stats and metadata to improve performance on repeated queries. Changes - Added caching support to topic_safety_check_input() with cache hit/miss logic - Added caching support to content_safety_check_output() with cache hit/miss logic - Both actions now extract and store LLM metadata alongside stats in cache entries - Added model_caches parameter to both actions for optional cache injection - Comprehensive test coverage for both new caching implementations - Tests verify cache hits, stats restoration, and metadata handling
Extends the LLM caching system to support jailbreak detection. The jailbreak detection action now caches results with metadata, properly tracks call information for tracing, and includes a fix to skip unnecessary LLM initialization for jailbreak detection models in the Rails configuration. Changes - Added caching support to jailbreak_detection_model() with cache hit/miss logic - Implemented LLM call info tracking for jailbreak detection (duration, timestamps, cache status) - Added processing log integration for tracing jailbreak detection calls - Modified LLMRails to skip LLM initialization for jailbreak_detection type models - Comprehensive test coverage including cache hits, misses, and model initialization behavior - Tests verify that jailbreak detection models with cache configs are registered correctly
9495808
to
27685a2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need a description of how this config is different to the regular hero-workflow one (i.e. caching) and how they're configured. I can update the PR as you have so many others on your plate
@@ -0,0 +1,24 @@ | |||
# NeMoGuard Safety Rails Example | |||
|
|||
This example showcases the use of NVIDIA's NeMoGuard NIMs for comprehensive AI safety including content moderation, topic control, and jailbreak detection. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you add some more description about how this enables caching, and how this is different from our regular hero-workflow config (nemoguards
)? I'm happy to do this as you have so many other PRs to review
9dbb323
to
d38eb0b
Compare
Description
This is PR 5/5 (final) in the NeMoGuards caching feature stack.
Test Plan
results: