Skip to content

Sync upstream develop #27

Merged
m-misiura merged 39 commits into
trustyai-explainability:developfrom
m-misiura:sync-upstream-develop-20260304
Mar 5, 2026
Merged

Sync upstream develop #27
m-misiura merged 39 commits into
trustyai-explainability:developfrom
m-misiura:sync-upstream-develop-20260304

Conversation

@m-misiura
Copy link
Copy Markdown
Collaborator

Need to sync with upstream develop to get the latest functionality of interest i.e.

erickgalinkin and others added 30 commits February 17, 2026 17:49
…VIDIA-NeMo#1644)

* docs(yaml-schema): fix guardrails config, streaming, and prompt docs

- Fix check jailbreak to jailbreak detection heuristics in guardrails
config
- Fix execution rails description to "custom action calls"
- Remove duplicate parallel-rails.md include
- Update gpt-3.5-turbo-instruct to gpt-4o in schema index
- Fix Nemotron to NemoGuard in model configuration
- Add missing prompt template variables and attributes
- Remove outdated stream_usage references from streaming docs
- Remove false StreamingHandler deprecation warning
- Remove deprecated top-level streaming: True from output rail examples
- Add deprecation note for top-level streaming field
…A-NeMo#1641)

* docs(embeddings): fix links, model names, and search interface

- Fix broken links to guardrails process and knowledge base docs
- Update text-embedding-ada-002 to text-embedding-3-small
- Add threshold parameter to EmbeddingsIndex.search signature

* Update docs/configure-rails/other-configurations/embedding-search-providers.md

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Signed-off-by: Pouyan <13303554+Pouyanpi@users.noreply.github.com>

---------

Signed-off-by: Pouyan <13303554+Pouyanpi@users.noreply.github.com>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
…IDIA-NeMo#1640)

- Add Custom Prompts row to components table
- Add prompts.yml to folder structure examples
- Clarify that .co files are loaded recursively from anywhere in config
directory
…DIA-NeMo#1639)

- Update gpt-3.5-turbo-instruct to gpt-4o-mini across all tutorials
- Fix broken relative links to configuration guide, guardrails library,
and Python API
- Remove deprecated top-level streaming: True from output rails tutorial
- Link to GitHub for source code references that moved in doc
restructure
… catalog (NVIDIA-NeMo#1651)

- Fix gpt-3.5-turbo-instruct to gpt-4o-mini
- Fix typos: idenfier to identifier, tourch to torch
- Fix Patronus AI URL missing https://
…erface (NVIDIA-NeMo#1646)

- Remove incorrect ${VAR} env var substitution examples from custom_data
docs
- Add note that custom_data does not support inline env var substitution
- Add **kwargs to EmbeddingModel.__init__ signature to match actual
interface
- Change _acall from "Recommended" to "Yes" (required) in LLM provider
interface
…d sample conversation (NVIDIA-NeMo#1643)

* docs(config): fix configuration reference for jailbreak, streaming, and sample conversation

- Fix check jailbreak to jailbreak detection heuristics in input rails
table
- Add injection detection to output rails table
- Fix sample_conversation format to use Colang syntax
- Deprecate top-level streaming field with proper admonition
- Simplify streaming config to boolean



---------

Signed-off-by: Pouyan <13303554+Pouyanpi@users.noreply.github.com>
Co-authored-by: Miyoung Choi <miyoungc@nvidia.com>
…eMo#1652)

* docs(exceptions): update exception types and remove tracing

- Updated the list of exception types to reflect additional integration-
  specific exceptions in the guardrails library.
- Removed detailed descriptions and Colang examples for each exception
  type, consolidating documentation.
- Deleted the section on integration with tracing, including guidance
  and references to tracing configuration.
* docs(actions): fix action docs to match codebase

- Fix langchain imports from langchain.llms.base to langchain_core
- Add missing special parameters (llm_task_manager, state, __context__)
- Fix built-in action names (generate_next_steps,
jailbreak_detection_heuristics)
- Add output_mapping parameter documentation
- Correct is_system_action and execute_async descriptions
- Fix actions server port 8080 to 8001
- Replace eval() with ast.literal_eval()
- Add third-party integration actions section
…IDIA-NeMo#1647)

* docs(config): fix NemoGuard naming and expand LLM providers table

- rename Nemotron to NemoGuard for NIM microservices section
- add Anthropic, Cohere, Google Vertex AI, HuggingFace, and vLLM to
providers table
- fix prompts location to include prompts.yml

---------

Signed-off-by: Pouyan <13303554+Pouyanpi@users.noreply.github.com>
Co-authored-by: Miyoung Choi <miyoungc@nvidia.com>
…eMo#1653)

* Fix OpenAI GPT-5 and other reasoning models that do not allow stop tokens as parameters in API requests

* Ensure llm_params in llm_call is not modified, also added test.
…VIDIA-NeMo#1638)

* Initial checkin of code, no existing tests broken

* Move test data into its own file

* Clean up tests

* Rebase pyproject.toml from develop and poetry lock --no-update

* Rewrite logic on when IORails is used vs LLMRails

* Remove todos (will do in future PR), fix docstring for _last_content_by_role, remove unused guardrails_models.py

* Propagate **kwargs into the IORails generate_async() method

* Fix output content-safety checking

* Fix RailsManager._render_prompt() docstring

* Address feedback: Use jinja2 not replace, revert pyproject.toml whitespace, update refusal message

* Address self-contained feedback, leaving architectural changes for refactoring later
…1649)

* Initial checkin of code, no existing tests broken

* Move test data into its own file

* Clean up tests

* Rewrite logic on when IORails is used vs LLMRails

* Remove todos (will do in future PR), fix docstring for _last_content_by_role, remove unused guardrails_models.py

* Implement a single engine (IORails / LLMRails) and update tests

* Standardise start/stop for objects which need lifespan hooks (i.e. creating worker tasks, opening clients, etc)

* Fix start/stop ordering and add finally-clause to make sure self._running doesn't get into an inconsistent state

* Clean up start/stop exception handling, fix inaccurate docstrings

* Clean up docstrings and multiple-worker start/stop code in AsyncWorkQueue and ModelManager

* Use _flow_name() to extract the flow name and fix urljoin() in model_engine.py

* Fix IORails start/stop exception handling, add new tests to get line coverage back to 100%

* Revert changes to model manager start/stop

* Fix _has_only_iorails_flows set bug, update test_start_failure_allows_retry to match start/stop methods

* Clean up async work queue start() and tests

* Unpack GenerationOptions object (passed from server api.py) and pass on llm_params to the main LLM call in ModelManager

* Unpack llm parameters to top-level rather than nested under llm_params in HTTP body

* Reformat after rebasing onto develop

* Rebase-merge cleanups
* Add sync generate() method which creates self-contained IORails to run inference

* Remove duplicated generate_async mock in test_use_iorails_true_iorails_config

* Cleanup commit after merging only the commits for this PR
* Initial commit with topic-safety rail support

* Include multi-turn conversations in topic-safety call, address PR feedback
* Initial checkin of jailbreak detection support

* Use get_flow_name and get_flow_model in RailsConfig file rather than staticmethods on rails_manager

* Guard jailbreak score getter

* Remove commented code

* ModelManager now needs the RailsConfig so it can access the jailbreak model information under the **config** rail-type

* Addressing PR feedback

* Add lazy-init to Guardrails so if can be imported in the same way as LLMRails
* Initial checkin of parallel rails code

* clean up task creation in _run_rails_parallel()

* Deterministic parallel rail execution order

* Address PR feedback
* add script for validating redirects

* license headers and ruff-compliant formatting applied

* fix(docs): address review issues in redirect validation

- remove misplaced shebang that appeared after the license header, where
it has no effect
- Use `poetry run` in the Makefile to match every other target
- Switch Sphinx extension from `import logging` to
  `sphinx.util.logging` so warnings are visible to `-W`
- Try exact-match before case-insensitive fallback in the Sphinx
  extension, consistent with the standalone script
- Move the CI validation step from the lint workflow to the
  docs-build workflow: redirect validation is a docs-integrity
  concern, not a code-style concern

---------

Co-authored-by: Pouyanpi <13303554+Pouyanpi@users.noreply.github.com>
…ultiple pages (NVIDIA-NeMo#1669)

* New structure for guardrail catalog

* fill in the content based on the old monolithic page

* move catalog page in toc and remove old one

* fix indentation

* Apply suggestions from code review

Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Signed-off-by: Miyoung Choi <miyoungc@nvidia.com>

* typos

* bring community pages out uder third party api page

* sort

* fix links

* fix more link errors

* fix more links

* incorporate feedback and more indentation fixes

* remove merged page

* fix a redirect

---------

Signed-off-by: Miyoung Choi <miyoungc@nvidia.com>
Co-authored-by: Christopher Parisien <64271260+cparisien@users.noreply.github.com>
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
* Add trackable request ID and logging in Guardrails and below

* Clean linting error

* Add request ID test, remove ModelManager time logging that duplicates ModelEngine's

* Use SingleUseBarrier rather than asyncio.Barrier (Python 3.11+), remove duplicate log from ModelManager

* Fix configure_logging()

* Clean up logging handler level changes

* Fix handler shadowing

* Address PR feedback

* Remove redundant log line
)

Signed-off-by: Christina Xu <chrxu@redhat.com>
@m-misiura m-misiura merged commit 296a84b into trustyai-explainability:develop Mar 5, 2026
5 of 30 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants