LLMs are defined in the llms section and referenced by agents and tools. You can swap NIM models, change parameters, or add alternative providers.
AI-Q 2.2 ships these exact model assignments and parameters:
| Configuration | Intent and shallow roles | Clarification and deep-research roles | Optional summary role |
|---|---|---|---|
configs/config_cli_default.yml, configs/config_web_default_llamaindex.yml |
nvidia/nemotron-3.5-lightning-30b-a3b |
nvidia/nemotron-3-ultra-550b-a55b for clarification, orchestration, source routing, research, planning, and writing |
google/gemma-4-31b-it in the web profile |
configs/config_frontier_models.yml |
gpt-5.6-luna |
gpt-5.6-sol for clarification, orchestration, planning, and writing; gpt-5.6-luna for source routing and research |
google/gemma-4-31b-it |
The checked-in files define the documented compatibility boundary; they are not a substitute for an end-to-end run against your provider endpoints and credentials. Changing a model, endpoint, role assignment, prompt, or inference parameter creates a custom profile outside that boundary. OpenAI-compatible transport alone does not establish workflow compatibility. Other bring-your-own models can require provider-specific prompt, hyperparameter, tool-calling, and structured-output tuning, and should be treated as experimental until the complete workflow is evaluated in that exact configuration.
Nemotron 3.5 Lightning can intermittently produce citation-incomplete or malformed shallow drafts when served through
the NVIDIA API Catalog endpoint. AI-Q fails closed rather than publishing those drafts. See
[Nemotron 3.5 Lightning on NVIDIA API Catalog](../resources/troubleshooting.md#nemotron-35-lightning-on-nvidia-api-catalog)
for the validated mitigation choices. Model weights alone do not define the compatibility boundary; the serving
profile is part of the deployment contract.
Example: NIM model (default)
llms:
nemotron_lightning_agent_llm:
_type: nim
model_name: nvidia/nemotron-3.5-lightning-30b-a3b
base_url: "https://integrate.api.nvidia.com/v1"
api_key: ${NVIDIA_API_KEY}
temperature: 0.2
top_p: 0.7
max_tokens: 8192
num_retries: 5
parallel_tool_calls: false
chat_template_kwargs:
enable_thinking: trueExample: NIM with thinking (for example, for deep research)
llms:
nemotron_ultra_llm:
_type: nim
model_name: nvidia/nemotron-3-ultra-550b-a55b
base_url: "https://integrate.api.nvidia.com/v1"
api_key: ${NVIDIA_API_KEY}
temperature: 0.2
top_p: 0.7
max_tokens: 16384
chat_template_kwargs:
enable_thinking: trueModel roles: The workflow maps LLMs to roles (orchestrator, researcher, planner, etc.) through the LLMProvider. In YAML you assign which named LLM each agent uses (for example, orchestrator_llm: nemotron_ultra_llm, llm: nemotron_lightning_agent_llm). Use different keys in llms and point agents at them to swap models per role.
By default, configs use NVIDIA's hosted NIM API (integrate.api.nvidia.com). You can also run NIMs locally or on your own infrastructure for lower latency, data privacy, or offline use.
Browse available NIMs at build.nvidia.com. Each model page includes a "Self-Host" tab with Docker pull commands and setup instructions.
# Example: run Nemotron on port 8080
docker run --gpus all -p 8080:8000 \
nvcr.io/nim/nvidia/nemotron-3-ultra-550b-a55b:latestRefer to the NIM documentation for GPU requirements, environment variables, and multi-GPU setup.
Change base_url to point to your local NIM instance instead of the hosted API. Use the model identifier returned by the local NIM's /v1/models endpoint; it can differ from the hosted API identifier. You can remove api_key since local NIMs typically don't require one.
llms:
local_ultra_llm:
_type: nim
model_name: nvidia/nemotron-3-ultra-550b-a55b
base_url: "http://localhost:8080/v1" # local NIM
temperature: 0.2
max_tokens: 16384
num_retries: 5**Hosted Endpoint Availability:** The default profiles use Nemotron 3.5 Lightning for intent and shallow research, and Nemotron 3 Ultra for clarification and every deep-research role. Shared hosted endpoints can have limited availability during high demand (HTTP 429 or 503 responses), and the API Catalog Lightning serving profile has a separate [shallow citation-output limitation](../resources/troubleshooting.md#nemotron-35-lightning-on-nvidia-api-catalog). For production deployments requiring consistent throughput, refer to the [self-hosting guidance](../resources/troubleshooting.md#nemotron-hosted-endpoint-availability).
You can mix hosted and local NIMs in the same config -- for example, use a hosted endpoint for shallow research and a local downloadable Ultra NIM for deep research:
llms:
hosted_shallow_llm:
_type: nim
model_name: nvidia/nemotron-3.5-lightning-30b-a3b
base_url: "https://integrate.api.nvidia.com/v1"
api_key: ${NVIDIA_API_KEY}
temperature: 0.2
top_p: 0.7
max_tokens: 8192
parallel_tool_calls: false
chat_template_kwargs:
enable_thinking: true
local_ultra_llm:
_type: nim
model_name: nvidia/nemotron-3-ultra-550b-a55b
base_url: "http://localhost:8080/v1"
temperature: 0.2
max_tokens: 16384
functions:
shallow_research_agent:
_type: shallow_research_agent
llm: hosted_shallow_llm
# ...
deep_research_agent:
_type: deep_research_agent
orchestrator_llm: local_ultra_llm
# ...The default configs use https://integrate.api.nvidia.com/v1, NVIDIA API Catalog's OpenAI-compatible endpoint. This service is convenient for getting started but has limitations that matter for production use and long-running evaluations.
Model availability
Models served through integrate.api.nvidia.com are subject to change:
- Model versions may be updated or deprecated without notice
- Preview model identifiers can change when a model reaches general availability
- Check build.nvidia.com for current model availability and changelogs
| Issue | Recommended action |
|---|---|
| Rate limiting during benchmarks | Lower max_concurrency in eval config; add delays between requests |
Frequent 504 timeouts |
Increase timeout parameter; switch to a self-hosted NIM for that role |
| Model removed or deprecated | Update model_name to the replacement model; pin a tested model version when possible |
| Production reliability requirements | Use self-hosted NIMs or an NVIDIA Enterprise API agreement with SLA guarantees |
For self-hosted NIM setup, refer to Using Downloadable NIMs above.