feat(brev): Update Brev getting started notebook - #412
Conversation
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
WalkthroughThe getting-started notebook updates Nemotron Super and Ultra assignments, setup requirements, deep-research guidance, frontend instructions, optional Guardrails and OpenShell profiles, Together.ai instructions, documentation links, and NVIDIA Build URL link-check exclusions. ChangesAI-Q getting-started notebook and link-check configuration
Estimated code review effort: 2 (Simple) | ~10 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 5
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/notebooks/0_Getting_Started_with_AIQ.ipynb`:
- Line 840: Update the “Customization Guide” link in the notebook’s Next Steps
content to use the current AI-Q Blueprint URL under
docs.nvidia.com/aiq-blueprint/latest/customization/index.html, preserving the
existing link text and surrounding flow.
- Line 407: Update the `functions` description in the
`config_simple_researcher.yml` notebook cell to match the generated YAML by
removing “the clarifier agent” unless the configuration also defines
`functions.clarifier_agent` and enables `workflow.enable_clarifier: true`;
preserve the existing descriptions of the other registered functions.
- Line 665: Update the Guardrails bullet in the notebook to list only the
boundaries enforced by configs/config_web_default_guardrails.yml: workflow and
async deep research. Remove the shallow-research claim unless the profile is
also updated to attach shallow_agent_guardrails to
functions.shallow_research_agent.
- Line 805: Update the Together.ai provider example in the notebook to use the
official OpenAI-compatible base URL https://api.together.ai/v1, replacing any
legacy .xyz endpoint references while preserving the Nemotron configuration
guidance.
- Around line 645-647: Update the notebook guidance around the Brev
port-exposure instructions to warn that REQUIRE_AUTH=false leaves the AI-Q UI
without job-ownership enforcement: keep the Brev URL private and restrict use to
trusted local demos, or enable authentication before sharing. Include
OpenShell’s durable Files artifacts in the same warning when OpenShell is
enabled.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Enterprise
Run ID: eb33eedd-3842-47fa-adf4-8a27ad028067
📒 Files selected for processing (1)
docs/notebooks/0_Getting_Started_with_AIQ.ipynb
📜 Review details
⏰ Context from checks skipped due to timeout. (3)
- GitHub Check: Lint and Hooks
- GitHub Check: Script Validation
- GitHub Check: Pytest and Coverage
🧰 Additional context used
📓 Path-based instructions (2)
**/*
📄 CodeRabbit inference engine (AGENTS.md)
**/*: Keep changes inside this repository, avoid editing adjacent repositories, and scope changes to the smallest relevant independent package, especially undersources/.
Run the narrowest relevant validation command first and broaden to the full suite only when a change crosses shared boundaries.
Keep pull requests scoped, exclude unrelated files and generated artifacts, never include secrets, and provide validation commands and results.
**/*: Do not include secrets, credentials, private hostnames, internal-only logs, customer data, or generated local artifacts.
Add or update tests for behavior changes.
Files:
docs/notebooks/0_Getting_Started_with_AIQ.ipynb
{docs/**,README.md,CONTRIBUTING.md,SECURITY.md,CODE-OF-CONDUCT.md}
⚙️ CodeRabbit configuration file
{docs/**,README.md,CONTRIBUTING.md,SECURITY.md,CODE-OF-CONDUCT.md}: Review documentation for command accuracy, branch-name consistency, current CI and copy-pr-bot behavior, public
vs internal boundary clarity, stale examples, and links that no longer match the repository layout.
Files:
docs/notebooks/0_Getting_Started_with_AIQ.ipynb
🔇 Additional comments (2)
docs/notebooks/0_Getting_Started_with_AIQ.ipynb (2)
54-54: LGTM!Also applies to: 74-81, 97-97, 184-197, 335-351, 378-382, 405-406, 408-409, 431-433, 452-455, 475-479, 649-653, 661-664, 668-668, 838-839
421-421: 🗄️ Data Integrity & IntegrationNo change is required.
configs/config_frontier_models.ymlassignsopenai_gpt_5_2to orchestration, planning, and writing, andnemotron_ultra_llmto source routing and research.> Likely an incorrect or invalid review comment.
3885278 to
8aee26a
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@ci/markdown-link-check-config.json`:
- Around line 24-26: Update the NVIDIA Build URL patterns in
ci/markdown-link-check-config.json (lines 24-26) and docs/source/conf.py (lines
93-94) to require an exact hostname boundary after build.nvidia.com, preventing
matches for lookalike domains such as build.nvidia.com.evil.example. Add
regression coverage confirming the legitimate host matches while the malicious
hostname does not.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Enterprise
Run ID: ff3f7131-3f51-4e36-81c3-285a390edfad
📒 Files selected for processing (3)
ci/markdown-link-check-config.jsondocs/notebooks/0_Getting_Started_with_AIQ.ipynbdocs/source/conf.py
📜 Review details
⏰ Context from checks skipped due to timeout. (3)
- GitHub Check: Script Validation
- GitHub Check: Pytest and Coverage
- GitHub Check: Lint and Hooks
🧰 Additional context used
📓 Path-based instructions (5)
**/*
📄 CodeRabbit inference engine (AGENTS.md)
**/*: Keep changes inside this repository, avoid editing adjacent repositories, and scope changes to the smallest relevant independent package, especially undersources/.
Run the narrowest relevant validation command first and broaden to the full suite only when a change crosses shared boundaries.
Keep pull requests scoped, exclude unrelated files and generated artifacts, never include secrets, and provide validation commands and results.
**/*: Do not include secrets, credentials, private hostnames, internal-only logs, customer data, or generated local artifacts.
Add or update tests for behavior changes.
Files:
ci/markdown-link-check-config.jsondocs/source/conf.pydocs/notebooks/0_Getting_Started_with_AIQ.ipynb
{.github/**,ci/**,.pre-commit-config.yaml,pyproject.toml,uv.lock,mcp/pyproject.toml,mcp/uv.lock}
⚙️ CodeRabbit configuration file
{.github/**,ci/**,.pre-commit-config.yaml,pyproject.toml,uv.lock,mcp/pyproject.toml,mcp/uv.lock}: Review automation and packaging changes for least-privilege permissions, pinned versions where appropriate,
copy-pr-bot pull-request/ branch behavior, reproducible uv/npm setup, secret handling, and consistency with
the documented validation matrix.
Files:
ci/markdown-link-check-config.json
**/*.py
📄 CodeRabbit inference engine (AGENTS.md)
**/*.py: Format and lint Python with Ruff using a 120-character line length, Python 3.11 target, rules E/F/W/I/PL/UP, and single-line imports; avoid reformatting unrelated code.
Never print or log secret values, including through tool output or error messages.
**/*.py: Runuv run ruff check .anduv run ruff format --check .for root Python changes.
Runuv run pytestfor root project Python changes.
Files:
docs/source/conf.py
docs/source/**/*
📄 CodeRabbit inference engine (AGENTS.md)
Update canonical documentation under
docs/source/when behavior, configuration, or workflows change; do not duplicate full documentation pages into skills.
Files:
docs/source/conf.py
{docs/**,README.md,CONTRIBUTING.md,SECURITY.md,CODE-OF-CONDUCT.md}
⚙️ CodeRabbit configuration file
{docs/**,README.md,CONTRIBUTING.md,SECURITY.md,CODE-OF-CONDUCT.md}: Review documentation for command accuracy, branch-name consistency, current CI and copy-pr-bot behavior, public
vs internal boundary clarity, stale examples, and links that no longer match the repository layout.
Files:
docs/source/conf.pydocs/notebooks/0_Getting_Started_with_AIQ.ipynb
🔇 Additional comments (14)
docs/notebooks/0_Getting_Started_with_AIQ.ipynb (14)
407-407: Keep thefunctionsdescription consistent with the generated YAML.The YAML in this cell does not define
clarifier_agent. Remove “the clarifier agent” or add the agent and enable the clarification flow.
645-647: Warn before exposing the no-auth frontend.
REQUIRE_AUTH=falsedisables AI-Q job-ownership enforcement. State that users must keep the Brev URL private and use it only for trusted demonstrations, or enable authentication before sharing it. Include generated Files artifacts when OpenShell is enabled.As per path instructions, review documentation for “public vs internal boundary clarity.”
Source: Path instructions
665-665: Describe only Guardrails boundaries that the profile enforces.The profile does not establish the stated shallow-research Guardrails boundary. Remove that claim unless
shallow_agent_guardrailsis attached tofunctions.shallow_research_agent.As per path instructions, review documentation for “command accuracy” and “public vs internal boundary clarity.”
Source: Path instructions
805-805: Use the current Together API endpoint.Update the example endpoint from
https://api.together.xyz/v1tohttps://api.together.ai/v1.As per path instructions, review documentation for “stale examples.”
Source: Path instructions
840-840: Fix the customization-guide link.Replace
https://docs.nvidia.com/aiq/latest/customization/index.htmlwith the current AI-Q Blueprint customization URL underaiq-blueprint/latest.As per path instructions, review documentation for “links that no longer match the repository layout.”
Source: Path instructions
54-54: LGTM!
74-81: LGTM!Also applies to: 97-97
184-197: LGTM!
335-351: LGTM!Also applies to: 378-389
405-405: LGTM!Also applies to: 409-409, 421-421
431-433: LGTM!Also applies to: 452-455, 475-479
649-653: LGTM!
666-668: LGTM!
838-838: LGTM!
591f12b to
9340795
Compare
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
docs/notebooks/0_Getting_Started_with_AIQ.ipynb (1)
335-351: 🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick winAdd a focused regression check for the generated model wiring.
These cells change model identifiers, token settings, and deep-research role assignments. Add a test or validation cell that parses the generated YAML, verifies every referenced LLM key exists, and asserts the intended Super/Ultra mapping for orchestration, source routing, research, planning, and writing. End-to-end execution alone can miss configuration drift.
As per coding guidelines, “Add or update tests for behavior changes.”
Also applies to: 378-389
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/notebooks/0_Getting_Started_with_AIQ.ipynb` around lines 335 - 351, Add a focused validation cell for the generated YAML configuration near the model definitions, parsing the YAML and checking every referenced LLM key resolves to a declared model. Assert that the Super and Ultra models remain assigned to the intended orchestration, source-routing, research, planning, and writing roles, covering the related configuration block as well.Source: Coding guidelines
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Outside diff comments:
In `@docs/notebooks/0_Getting_Started_with_AIQ.ipynb`:
- Around line 335-351: Add a focused validation cell for the generated YAML
configuration near the model definitions, parsing the YAML and checking every
referenced LLM key resolves to a declared model. Assert that the Super and Ultra
models remain assigned to the intended orchestration, source-routing, research,
planning, and writing roles, covering the related configuration block as well.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Enterprise
Run ID: 476aa26f-4ce7-4b8c-9ab8-38d0569ad2cc
📒 Files selected for processing (1)
docs/notebooks/0_Getting_Started_with_AIQ.ipynb
📜 Review details
⏰ Context from checks skipped due to timeout. (3)
- GitHub Check: Lint and Hooks
- GitHub Check: Pytest and Coverage
- GitHub Check: Script Validation
🧰 Additional context used
📓 Path-based instructions (2)
**/*
📄 CodeRabbit inference engine (AGENTS.md)
**/*: Keep changes inside this repository, avoid editing adjacent repositories, and scope changes to the smallest relevant independent package, especially undersources/.
Run the narrowest relevant validation command first and broaden to the full suite only when a change crosses shared boundaries.
Keep pull requests scoped, exclude unrelated files and generated artifacts, never include secrets, and provide validation commands and results.
**/*: Do not include secrets, credentials, private hostnames, internal-only logs, customer data, or generated local artifacts.
Add or update tests for behavior changes.
Files:
docs/notebooks/0_Getting_Started_with_AIQ.ipynb
{docs/**,README.md,CONTRIBUTING.md,SECURITY.md,CODE-OF-CONDUCT.md}
⚙️ CodeRabbit configuration file
{docs/**,README.md,CONTRIBUTING.md,SECURITY.md,CODE-OF-CONDUCT.md}: Review documentation for command accuracy, branch-name consistency, current CI and copy-pr-bot behavior, public
vs internal boundary clarity, stale examples, and links that no longer match the repository layout.
Files:
docs/notebooks/0_Getting_Started_with_AIQ.ipynb
🔇 Additional comments (2)
docs/notebooks/0_Getting_Started_with_AIQ.ipynb (2)
407-407: LGTM!
421-421: 🗄️ Data Integrity & IntegrationNo change needed. The description correctly identifies Nemotron 3 Ultra for source routing and research.
> Likely an incorrect or invalid review comment.
There was a problem hiding this comment.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
docs/notebooks/0_Getting_Started_with_AIQ.ipynb (1)
74-81: 🔒 Security & Privacy | 🟠 Major | ⚡ Quick winDocument OpenShell’s trust boundary.
The new component list presents OpenShell without stating that this profile is experimental, intended for a trusted single operator, and not a multi-tenant isolation boundary. The 2.2.0-rc1 configuration reference describes
configs/config_openshell.ymlas using one pre-provisioned named sandbox. Per-job directories do not provide multi-tenant isolation. (docs.nvidia.com)Add this warning next to the component entry. Point users to the authenticated gateway setup. Do not present the profile as a general production dependency. (docs.nvidia.com)
As per path instructions, review documentation for public-versus-internal boundary clarity.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@docs/notebooks/0_Getting_Started_with_AIQ.ipynb` around lines 74 - 81, Update the OpenShell component entry in the notebook’s dependency list to state that the profile is experimental, intended for a single trusted operator, and is not a multi-tenant isolation boundary; note that per-job directories do not provide tenant isolation. Link users to the authenticated gateway setup documentation, and avoid presenting OpenShell as a general production dependency.Sources: Path instructions, MCP tools
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/notebooks/0_Getting_Started_with_AIQ.ipynb`:
- Line 650: Update the notebook’s backend configuration instructions to show
selecting the OpenShell profile with
BACKEND_CONFIG=/app/configs/config_openshell.yml, and include the accurate
Docker Compose restart or recreate command needed to apply the change. Ensure
the documented path and command match the repository’s existing deployment
instructions.
---
Outside diff comments:
In `@docs/notebooks/0_Getting_Started_with_AIQ.ipynb`:
- Around line 74-81: Update the OpenShell component entry in the notebook’s
dependency list to state that the profile is experimental, intended for a single
trusted operator, and is not a multi-tenant isolation boundary; note that
per-job directories do not provide tenant isolation. Link users to the
authenticated gateway setup documentation, and avoid presenting OpenShell as a
general production dependency.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Enterprise
Run ID: 197626ce-41b2-4862-8fb2-deab92248ee3
📒 Files selected for processing (1)
docs/notebooks/0_Getting_Started_with_AIQ.ipynb
📜 Review details
⏰ Context from checks skipped due to timeout. (2)
- GitHub Check: Pytest and Coverage
- GitHub Check: Lint and Hooks
🧰 Additional context used
📓 Path-based instructions (2)
**/*
📄 CodeRabbit inference engine (AGENTS.md)
**/*: Keep changes inside this repository, avoid editing adjacent repositories, and scope changes to the smallest relevant independent package, especially undersources/.
Run the narrowest relevant validation command first and broaden to the full suite only when a change crosses shared boundaries.
Keep pull requests scoped, exclude unrelated files and generated artifacts, never include secrets, and provide validation commands and results.
**/*: Do not include secrets, credentials, private hostnames, internal-only logs, customer data, or generated local artifacts.
Add or update tests for behavior changes.
Files:
docs/notebooks/0_Getting_Started_with_AIQ.ipynb
{docs/**,README.md,CONTRIBUTING.md,SECURITY.md,CODE-OF-CONDUCT.md}
⚙️ CodeRabbit configuration file
{docs/**,README.md,CONTRIBUTING.md,SECURITY.md,CODE-OF-CONDUCT.md}: Review documentation for command accuracy, branch-name consistency, current CI and copy-pr-bot behavior, public
vs internal boundary clarity, stale examples, and links that no longer match the repository layout.
Files:
docs/notebooks/0_Getting_Started_with_AIQ.ipynb
🔇 Additional comments (8)
docs/notebooks/0_Getting_Started_with_AIQ.ipynb (8)
54-54: LGTM!
97-97: LGTM!
321-337: LGTM!Also applies to: 364-375
387-387: LGTM!Also applies to: 399-402
414-416: LGTM!Also applies to: 435-438, 458-462
630-631: LGTM!
797-797: LGTM!
825-825: LGTM!
Signed-off-by: Soumili Nandi <soumilin@nvidia.com>
Signed-off-by: Soumili Nandi <soumilin@nvidia.com>
Signed-off-by: Soumili Nandi <soumilin@nvidia.com>
Signed-off-by: Soumili Nandi <soumilin@nvidia.com>
ba836f0 to
4ff8a48
Compare
AjayThorve
left a comment
There was a problem hiding this comment.
This looks good to me, no red flags
|
/merge |
fbc6ed4
into
NVIDIA-AI-Blueprints:release/2.2
#### Overview Update AIQ 2.2 for the August model-deprecation wave while preserving the existing intent and shallow-research behavior until Nano 3.5 is publicly available: - retain Nemotron 3 Super 120B A12B, with its existing aliases and generation profiles, for intent classification and shallow research; - use Nemotron 3 Ultra 550B A55B for clarification and every default deep-research role; - preserve the GPT Sol/Luna deep-role topology introduced by #413 in `config_frontier_models.yml`, while retaining Super for its intent/shallow fast path; - replace the summary, embedding, and VLM defaults with Gemma 4 31B IT, Nemotron 3 Embed 1B, and Nemotron 3 Nano Omni respectively; and - keep public configs on canonical Build model identifiers and NAT's standard `https://integrate.api.nvidia.com/v1` endpoint. The Super exception is intentionally narrow and temporary. Nano 3.5 is excluded because its GA date is August 11. The intent/shallow switch, benchmarked shallow profile, and tool-first runtime guard are isolated in stacked draft #419 so this migration can merge without depending on a not-yet-public endpoint. The migration covers shipping configs, benchmark profiles, knowledge-layer defaults, agent-skill assets, README/docs, launchable examples, and executable notebook config cells. Repository-wide regression tests enforce the Super intent/shallow and Ultra deep-role boundary while rejecting every other replaced model identifier and private inference endpoint reference. This PR also makes persisted embedding stores fail closed when their model metadata is absent, incompatible, or owned by a different logical collection. Chroma and OpenSearch users receive explicit re-ingestion errors instead of silently querying vectors generated by a different embedding model; Azure AI Search already isolates and validates model/dimension compatibility. The branch is rebased on #412. Its updated Brev getting-started notebook is preserved, with only the targeted model references and deep-role configuration changed here. #### DCO sign-off for the squash commit Signed-off-by: Ajay Thorve <athorve@nvidia.com> #### Validation - [x] `uv run pytest` — 2052 passed, 13 skipped - [x] `uv run pre-commit run --all-files` — all hooks passed, including Ruff, YAML, secrets, agent-skill validation, notebook output clearing, and Markdown link checking - [x] Focused knowledge-layer and default-profile tests — 64 passed - [x] Shipping and FreshQA intent/shallow profiles match `release/2.2` exactly - [x] All three changed notebooks parse as valid JSON after output clearing - [x] `git diff --check` - [x] All commits are DCO-signed and have verified GPG signatures - [x] No Nano 3.5 identifier, private inference endpoint, secret, or credential is included #### Where should reviewers start? Start with `tests/aiq_agent/test_default_model_profiles.py` for the enforced model invariants, the shipping configs for the role mapping, and `sources/knowledge_layer/src/{llamaindex,opensearch}/adapter.py` for the embedding compatibility and ownership guards. #### Related Issues - Builds on the frontier-model compatibility work merged in #413. - Preserves the Brev notebook update merged in #412. - Relates to the August model endpoint deprecation migration. ## Summary by CodeRabbit * **New Features** * Added role-specific Nemotron Ultra and Ultra Writer configurations for clarification, deep research, orchestration, and writing. * Retained the existing Nemotron Super profiles for intent classification and shallow research. * Updated default models for summaries, embeddings, and vision processing. * Added validation to detect incompatible, legacy, or incorrectly owned embedding indexes and collections before ingestion or search. * **Documentation** * Refreshed setup guides, examples, notebooks, hardware guidance, and troubleshooting for the updated model lineup. * Added collection-safe migration guidance for embedding indexes and collections. * **Tests** * Expanded coverage for model assignments, embedding compatibility, ownership checks, and fail-before-request behavior. Authors: - Ajay Thorve (https://github.com/AjayThorve) Approvers: - Soumili Nandi (https://github.com/soumilinandi) URL: #414
…s#412) #### Overview Update in Brev launchable notebook to reflect 2.2 feature updates and model changes. #### DCO sign-off for the squash commit Signed-off-by: Soumili Nandi <soumilin@nvidia.com> #### Validation Ran the notebook e2e to verify - [x] I ran the relevant local checks or explained why they are not applicable. - [ ] I added or updated tests for behavior changes. - [x] I updated documentation for user-facing or contributor-facing changes. - [x] I confirmed this PR does not include secrets, credentials, or internal-only data. - [x] I certify this contribution under the Developer Certificate of Origin (DCO) and signed my commits with `git commit -s` or an equivalent sign-off. - [x] I replaced the DCO sign-off placeholder with my GitHub commit identity and kept the required angle brackets around the email address. #### Where should reviewers start? #### Related Issues - Relates to # ## Summary by CodeRabbit * **Documentation** * Updated the AI-Q getting-started notebook with current Nemotron Super and Ultra model assignments. * Added guidance for optional Guardrails and OpenShell profiles, frontend usage, security, Together.ai endpoints, and deep-research configuration. * Refreshed setup instructions, documentation links, deployment guidance, and next steps. * **Maintenance** * Improved documentation link checking by excluding NVIDIA Build URLs that may return temporary HTTP 202 responses. Authors: - Soumili Nandi (https://github.com/soumilinandi) Approvers: - Ajay Thorve (https://github.com/AjayThorve) URL: NVIDIA-AI-Blueprints#412
) #### Overview Update AIQ 2.2 for the August model-deprecation wave while preserving the existing intent and shallow-research behavior until Nano 3.5 is publicly available: - retain Nemotron 3 Super 120B A12B, with its existing aliases and generation profiles, for intent classification and shallow research; - use Nemotron 3 Ultra 550B A55B for clarification and every default deep-research role; - preserve the GPT Sol/Luna deep-role topology introduced by NVIDIA-AI-Blueprints#413 in `config_frontier_models.yml`, while retaining Super for its intent/shallow fast path; - replace the summary, embedding, and VLM defaults with Gemma 4 31B IT, Nemotron 3 Embed 1B, and Nemotron 3 Nano Omni respectively; and - keep public configs on canonical Build model identifiers and NAT's standard `https://integrate.api.nvidia.com/v1` endpoint. The Super exception is intentionally narrow and temporary. Nano 3.5 is excluded because its GA date is August 11. The intent/shallow switch, benchmarked shallow profile, and tool-first runtime guard are isolated in stacked draft NVIDIA-AI-Blueprints#419 so this migration can merge without depending on a not-yet-public endpoint. The migration covers shipping configs, benchmark profiles, knowledge-layer defaults, agent-skill assets, README/docs, launchable examples, and executable notebook config cells. Repository-wide regression tests enforce the Super intent/shallow and Ultra deep-role boundary while rejecting every other replaced model identifier and private inference endpoint reference. This PR also makes persisted embedding stores fail closed when their model metadata is absent, incompatible, or owned by a different logical collection. Chroma and OpenSearch users receive explicit re-ingestion errors instead of silently querying vectors generated by a different embedding model; Azure AI Search already isolates and validates model/dimension compatibility. The branch is rebased on NVIDIA-AI-Blueprints#412. Its updated Brev getting-started notebook is preserved, with only the targeted model references and deep-role configuration changed here. #### DCO sign-off for the squash commit Signed-off-by: Ajay Thorve <athorve@nvidia.com> #### Validation - [x] `uv run pytest` — 2052 passed, 13 skipped - [x] `uv run pre-commit run --all-files` — all hooks passed, including Ruff, YAML, secrets, agent-skill validation, notebook output clearing, and Markdown link checking - [x] Focused knowledge-layer and default-profile tests — 64 passed - [x] Shipping and FreshQA intent/shallow profiles match `release/2.2` exactly - [x] All three changed notebooks parse as valid JSON after output clearing - [x] `git diff --check` - [x] All commits are DCO-signed and have verified GPG signatures - [x] No Nano 3.5 identifier, private inference endpoint, secret, or credential is included #### Where should reviewers start? Start with `tests/aiq_agent/test_default_model_profiles.py` for the enforced model invariants, the shipping configs for the role mapping, and `sources/knowledge_layer/src/{llamaindex,opensearch}/adapter.py` for the embedding compatibility and ownership guards. #### Related Issues - Builds on the frontier-model compatibility work merged in NVIDIA-AI-Blueprints#413. - Preserves the Brev notebook update merged in NVIDIA-AI-Blueprints#412. - Relates to the August model endpoint deprecation migration. ## Summary by CodeRabbit * **New Features** * Added role-specific Nemotron Ultra and Ultra Writer configurations for clarification, deep research, orchestration, and writing. * Retained the existing Nemotron Super profiles for intent classification and shallow research. * Updated default models for summaries, embeddings, and vision processing. * Added validation to detect incompatible, legacy, or incorrectly owned embedding indexes and collections before ingestion or search. * **Documentation** * Refreshed setup guides, examples, notebooks, hardware guidance, and troubleshooting for the updated model lineup. * Added collection-safe migration guidance for embedding indexes and collections. * **Tests** * Expanded coverage for model assignments, embedding compatibility, ownership checks, and fail-before-request behavior. Authors: - Ajay Thorve (https://github.com/AjayThorve) Approvers: - Soumili Nandi (https://github.com/soumilinandi) URL: NVIDIA-AI-Blueprints#414
Overview
Update in Brev launchable notebook to reflect 2.2 feature updates and model changes.
DCO sign-off for the squash commit
Signed-off-by: Soumili Nandi soumilin@nvidia.com
Validation
Ran the notebook e2e to verify
git commit -sor an equivalent sign-off.Where should reviewers start?
Related Issues
Summary by CodeRabbit