RAG Blueprint
NVIDIAOfficialCreated by NVIDIA RAG
- Skill
- Tool integration
- Automation and integrations
- Apache-2.0
- Medium risk
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
The NVIDIA RAG Blueprint skill provides a structured operational framework for managing RAG services. It automates the detection of deployment environments (Docker, Helm, or library-based) and guides users through installation, configuration, troubleshooting, and teardown procedures. By mapping user intent to specific reference documentation and configuration files, it ensures consistent management of features like Agentic RAG, VLM, guardrails, and ingestion pipelines.
What it does
- Deploys and manages RAG services using Docker Compose or Helm charts.
- Configures specific RAG features such as Agentic RAG, VLM, and NeMo Guardrails.
- Troubleshoots service health and connectivity issues.
- Provides automated environment detection to identify active services and configuration locations.
- Supports lifecycle management including startup, shutdown, and teardown of RAG infrastructure.
- Validates configuration changes against live service states.
When to use it
- When you need to deploy or tear down an NVIDIA RAG Blueprint environment.
- When you need to enable or toggle specific features like Agentic RAG or VLM.
- When a RAG service is reporting errors or is in an unhealthy state.
- When you need to update configuration settings for models, search, or observability.
Advantages
- Standardizes operational procedures across different deployment types.
- Reduces manual configuration errors by referencing source-of-truth documentation.
- Automates environment discovery to quickly identify the correct configuration files.
- Provides clear paths for both global deployment-wide changes and per-request overrides.
Usage examples
- “Deploy the RAG Blueprint.”
- The agent will read the deployment documentation and initiate the setup process based on the detected environment.
- “Enable Agentic RAG.”
- The agent will identify the current deployment mode, locate the relevant configuration file, and guide you through enabling the agentic pipeline.
- “My RAG service is unhealthy.”
- The agent will run diagnostic checks on the containers or pods and suggest troubleshooting steps based on the error state.
- “Stop all RAG services.”
- The agent will execute the shutdown sequence to safely tear down the RAG infrastructure.
Install
Download the skill as a ZIP:
https://mp-staging.autogineer.com/agent-skills/nvidia/rag-blueprint/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip rag-blueprint.zip -d .agents/skills
Documentation by NVIDIA RAG
NVIDIA RAG Blueprint
Purpose
Use this skill for NVIDIA RAG Blueprint operations: deployment, configuration, troubleshooting, shutdown, and feature management across Docker, Helm, and library deployments.
Instructions
Match the user request to the intent routing table below.
Read the referenced playbook before making changes.
Use repository docs and deployment config files as the source of truth.
Verify the affected service or workflow after changes.
Prerequisites
NVIDIA RAG Blueprint repository checkout.
Docker/Compose or Kubernetes/Helm for deployments.
Python 3.11+ for library workflows.
NVIDIA GPU tooling for self-hosted NIM services.
Autonomy Principles
Auto-detect everything: GPU, VRAM, drivers, Docker, CUDA, disk, OS, ports, existing services, NGC key, repo state.
If it can be checked with a command, check it — don't ask the user.
Ask only when user action is required: providing an API key, confirming data deletion, or choosing between equally valid options.
Once analysis is done, route to the correct workflow and execute.
Intent Detection
Determine what the user wants and route immediately:
| User Intent | Action |
|---|---|
| Deploy, install, set up, start RAG | Read and follow references/deploy.md |
| Configure, enable, change, toggle a feature | Use the Configure section below |
| Troubleshoot, debug, fix, error, unhealthy | Read and follow references/troubleshoot.md |
| Stop, shutdown, tear down, clean up | Read and follow references/shutdown.md |
If the intent is ambiguous, infer from context (e.g., "RAG isn't working" → troubleshoot; "get RAG running" → deploy). Only ask if genuinely unclear.
Configure
Requires a running RAG deployment. If services are not running, deploy first via references/deploy.md.
Match the user's request to a reference file, then read and follow it:
| Feature Keywords | Reference |
|---|---|
| VLM, VLM embeddings, image captioning | references/configure/vlm.md |
| NeMo Guardrails | references/configure/guardrails.md |
| Agentic RAG, planning/execution agent, agentic streaming, stage events | references/configure/agentic-rag.md |
| Query rewriting, decomposition, multi-turn | references/configure/query-and-conversation.md |
| Ingestion (text-only, audio, Nemotron Parse, OCR, batch CLI, NV-Ingest, volume mount, performance) | references/configure/ingestion.md |
| Search, retrieval, hybrid search, multi-collection, metadata, filters, Elasticsearch filters, reranker, topK, accuracy/performance | references/configure/search-and-retrieval.md |
| LLM/embedding/ranking model changes, vector DB, Milvus/Elasticsearch auth, service keys, model profiles, ports/GPU | references/configure/models-and-infrastructure.md |
Reasoning, thinking mode, reasoning_content, self-reflection, prompts, generation params (tokens, temperature, citations), per-request LLM params | references/configure/reasoning-and-generation.md |
| Summarization | references/configure/summarization.md |
| Observability (tracing, Zipkin, Grafana, Prometheus) | references/configure/observability.md |
| Multimodal query (image + text) | references/configure/multimodal-query.md |
| Data catalog (collection/document metadata) | references/configure/data-catalog.md |
| User interface (UI settings, reasoning panel, metadata filters) | references/configure/user-interface.md |
| API reference (endpoints, schemas) | references/configure/api-reference.md |
| Evaluation (RAGAS metrics) | references/configure/evaluation.md (and skill rag-eval) |
| MCP server & client, agent toolkit | references/configure/mcp.md |
| Migration (version upgrades) | references/configure/migration.md |
| Notebooks (setup and catalog) | references/configure/notebooks.md |
Configure Flow
Match the user's request to a reference file from the table above.
Detect what's running:
echo "=== NIM ===" && docker ps --format '{{.Names}}' 2>/dev/null | grep -iE '(nim-llm|nemotron-(vlm-)?embedding|nemotron-ranking|nemotron-vlm|nemotron-3-nano-omni|page-elements|graphic-elements|table-structure|nemotron-ocr)' || echo "NO_LOCAL_NIMS"; echo "=== RAG ===" && docker ps --format '{{.Names}}' 2>/dev/null | grep -iE '(rag-server|ingestor-server|elasticsearch|milvus|seaweedfs|lancedb)' || echo "NO_DOCKER_RAG"; echo "=== K8S ===" && kubectl get pods -n rag 2>/dev/null | head -5 || echo "NO_K8S"; echo "=== LIBRARY ===" && ps aux 2>/dev/null | grep -E '(nvidia_rag|uvicorn.*rag)' | grep -v grep || echo "NO_LIBRARY"Use this table to determine platform, deployment type, and where config lives:
Local NIMs running? RAG services running? Deployment Type Config Location Yes (Docker) Any Self-hosted deploy/compose/.envNo Yes (Docker) NVIDIA-hosted deploy/compose/nvdev.envYes (K8s pods) Any Self-hosted values.yaml(NIM sections)No Yes (K8s pods) NVIDIA-hosted values.yaml(envVars)— Library processes Library mode notebooks/config.yamlNo No Not running Deploy first via references/deploy.mdTell the user what you detected and ask to confirm. Example: "I see local NIM containers running (nim-llm-ms, nemotron-vlm-embedding-ms) — this is a self-hosted deployment. Config file is
deploy/compose/.env. Correct?"Check current feature state before changing anything — read the config location from step 3, then cross-check the live service:
Docker:
docker exec rag-server env 2>/dev/null | grep -E "<VAR_NAME>"Helm:
kubectl get pod -n rag -l app=rag-server -o jsonpath='{.items[0].spec.containers[0].env}' 2>/dev/null
If the config file and live service disagree, tell the user the service has stale config and will need a restart.
If the feature needs extra GPUs, check availability against hardware restrictions (see below):
nvidia-smi --query-gpu=index,name,memory.total,memory.used --format=csv,noheader 2>/dev/null || echo "NO_GPU"Read the reference file and apply changes:
Docker: edit the env file (uncomment to enable, re-comment to disable — the env file is the source of truth). Then restart the affected service:
source <env-file> && docker compose -f deploy/compose/<compose-file> up -dService Compose File rag-server docker-compose-rag-server.yamlingestor-server docker-compose-ingestor-server.yamlElasticsearch, Milvus, etcd, SeaweedFS vectordb.yamlNIM containers (LLM, embedding, ranking, VLM, OCR, parse, audio, extraction) nims.yamlguardrails docker-compose-nemo-guardrails.yamlobservability (Grafana, Prometheus, Zipkin) observability.yamlHelm: edit
values.yaml, then upgrade:helm upgrade rag <chart> -n rag -f values.yamlLibrary: edit
notebooks/config.yaml, then restart the Python process
Verify:
Docker:
docker ps --format "table {{.Names}}\t{{.Status}}" | head -20; curl -s http://localhost:8081/v1/health?check_dependencies=true 2>/dev/null | head -1Helm:
kubectl get pods -n rag; kubectl rollout status deployment/rag-server -n rag --timeout=120sLibrary:
curl -s http://localhost:8081/v1/health 2>/dev/null | head -1
If restart fails, read
references/troubleshoot.md. If multiple features requested, repeat from step 1 for each.
Examples
"Deploy RAG" -> route to
references/deploy.md."Enable VLM" -> route to
references/configure/vlm.md."RAG is unhealthy" -> route to
references/troubleshoot.md."Stop RAG" -> route to
references/shutdown.md.
Limitations
Operational guidance only applies to this RAG Blueprint repository.
Live deployment changes require a running Docker, Helm, or library target.
Secrets such as
NGC_API_KEYmust be supplied by the user environment.
Troubleshooting
| Error / signal | What to do |
|---|---|
| Services are not running | Follow references/deploy.md before configuring features. |
| Restart or health check fails | Follow references/troubleshoot.md. |
| User requests teardown | Follow references/shutdown.md and confirm destructive cleanup. |
When User Says "Configure" Without Specifics
Run steps 2–3 above, then read the identified config file to list what's currently enabled:
grep -E "^(export )?(ENABLE_|APP_)" <config-file> 2>/dev/null | sortSummarize what's running and enabled, then ask which feature to change.
Hardware Restrictions
Read docs/support-matrix.md for current GPU requirements per deployment mode.
Read docs/service-port-gpu-reference.md for port mappings and GPU assignments.
| GPU | Feature Restrictions |
|---|---|
| B200 | No VLM, No Guardrails, No Nemotron Parse. May need multi-GPU LLM (LLM_MS_GPU_ID). |
| RTX PRO 6000 | No Nemotron Parse. No Audio on Helm. |
Files
- ATTRIBUTION.mdAdded by AutoGineer901 B
- BENCHMARK.md4.6 KiB
- LICENSELicence file added by AutoGineer11.2 KiB
- SKILL.md11.1 KiB
- eval/h100.json2.5 KiB
- eval/nvidia_hosted.json3.6 KiB
- references/configure/agentic-rag.md5.0 KiB
- references/configure/api-reference.md1.6 KiB
- references/configure/data-catalog.md1.7 KiB
- references/configure/evaluation.md2.8 KiB
- references/configure/guardrails.md1.6 KiB
- references/configure/ingestion.md3.6 KiB
- references/configure/mcp.md1.3 KiB
- references/configure/migration.md1.6 KiB
- references/configure/models-and-infrastructure.md4.6 KiB
- references/configure/multimodal-query.md2.0 KiB
- references/configure/notebooks.md2.8 KiB
- references/configure/observability.md1.4 KiB
- references/configure/query-and-conversation.md3.7 KiB
- references/configure/reasoning-and-generation.md3.8 KiB
- references/configure/search-and-retrieval.md4.0 KiB
- references/configure/summarization.md2.1 KiB
- references/configure/user-interface.md1.7 KiB
- references/configure/vlm.md3.6 KiB
- references/deploy.md7.9 KiB
- references/deploy/docker-nvidia-hosted.md2.2 KiB
- references/deploy/docker-retrieval-only.md1.6 KiB
- references/deploy/docker-self-hosted.md2.3 KiB
- references/deploy/docker.md4.3 KiB
- references/deploy/helm-mig.md2.0 KiB
- references/deploy/helm-openshift.md3.6 KiB
- references/deploy/helm-standard.md2.3 KiB
- references/deploy/helm.md5.6 KiB
- references/deploy/library-full.md2.2 KiB
- references/deploy/library-lite.md1.8 KiB
- references/deploy/library.md2.2 KiB
- references/shutdown.md4.7 KiB
- references/troubleshoot.md8.8 KiB
- skill-card.md3.1 KiB
- skill.oms.sig12.5 KiB
references/configure/models-and-infrastructure.md
Models, Vector DB & Service API Keys
When to Use
User wants to change LLM, embedding, or ranking models; switch vector DB (Elasticsearch/Milvus); configure Elasticsearch or Milvus auth, GPU mode, or custom endpoints; set service-specific API keys; or build a custom VDB operator.
Process
Detect the deployment mode before making changes. Docker: edit the active env file. Helm: edit values.yaml under nimOperator and envVars sections. Library: edit notebooks/config.yaml.
Change Models (LLM, Embedding, Ranking)
Read
docs/change-model.mdfor full model change instructionsRead
docs/model-profiles.mdfor NIM profile selection and GPU-specific profilesKey env vars:
APP_LLM_MODELNAME,APP_EMBEDDINGS_MODELNAME,APP_RANKING_MODELNAMEEmbedding model change requires re-ingesting all documents — update
APP_EMBEDDINGS_DIMENSIONSto matchRestart affected services (RAG server + ingestor for embedding changes)
Verify via health endpoint
Switch Vector DB
Read
docs/change-vectordb.mdfor full setup (Docker and Helm)Key env vars:
APP_VECTORSTORE_URL,APP_VECTORSTORE_NAMEData is not migrated — re-ingest all documents after switching
Elasticsearch is the default backend and uses
rag-vol-elasticsearchin Docker ComposeElasticsearch requires port 9200; check for conflicts
Milvus Configuration
Read
docs/milvus-configuration.mdfor indexing, GPU, auth, and tuningRead
docs/milvus-schema.mdfor collection schema requirementsCPU mode: set
APP_VECTORSTORE_ENABLEGPUSEARCH=False,APP_VECTORSTORE_ENABLEGPUINDEX=False, change Milvus image to non-GPUAuth: download milvus.yaml, enable
authorizationEnabled, set password before first deployment
API Keys
Read
docs/api-key.mdfor NGC API key setup and per-service keysFallback order: service-specific key >
NVIDIA_API_KEY>NGC_API_KEYPer-service keys:
APP_LLM_APIKEY,APP_EMBEDDINGS_APIKEY,APP_RANKING_APIKEY,APP_VLM_APIKEY, etc.
Decision Table
| Goal | Source Doc | Key Action |
|---|---|---|
| Change LLM | docs/change-model.md | Set APP_LLM_MODELNAME, restart RAG server |
| Change embedding | docs/change-model.md | Set APP_EMBEDDINGS_MODELNAME + APP_EMBEDDINGS_DIMENSIONS, re-ingest |
| Change reranker | docs/change-model.md | Set APP_RANKING_MODELNAME, restart RAG server |
| Use/default Elasticsearch | docs/change-vectordb.md | Start vectordb.yaml; data lives in rag-vol-elasticsearch; re-ingest when switching backends |
| Switch to Milvus | docs/change-vectordb.md | Start vectordb.yaml --profile milvus, set env vars, re-ingest |
| Milvus auth | docs/milvus-configuration.md | Download config, enable auth, mount volume |
| Milvus CPU mode | docs/milvus-configuration.md | Change image, disable GPU env vars |
| Custom VDB | docs/change-vectordb.md | Implement VDBRag, register in __init__.py |
| NIM profiles | docs/model-profiles.md | List profiles, set NIM_MODEL_PROFILE |
| Service API keys | docs/api-key.md | Set per-service *_APIKEY vars |
| Collection schema | docs/milvus-schema.md | Required fields: pk, vector, text, source, content_metadata |
Agent-Specific Notes
Current default model family uses
nvidia/nemotron-3-super-120b-a12b,nvidia/llama-nemotron-embed-vl-1b-v2, andnvidia/llama-nemotron-rerank-1b-v2.Nemotron-3-Nano naming:
nvidia/nemotron-3-nano-30b-a3b(NVIDIA-hosted) vsnvidia/nemotron-3-nano(self-hosted NIM) — same model, different namesHelm model changes go in
values.yamlundernimOperatorandenvVarssectionsCustom VDB operator requires implementing
VDBRagbase class — seedocs/change-vectordb.md"Custom Vector Database Operator" sectionVDB auth tokens can be passed per-request via
Authorization: Bearer <token>header; Elasticsearch runtime auth supports API keysMilvus password persists in etcd volume — to change after deployment, must delete volumes (destroys data)
Notebooks
notebooks/building_rag_vdb_operator.ipynb— Custom VDB operator implementation (OpenSearch example)
Source Documentation
docs/change-model.md— Model changes (LLM, embedding, ranking, NIM images)docs/change-vectordb.md— Vector DB switching, Elasticsearch setup, custom VDB operatordocs/milvus-configuration.md— Milvus indexing, GPU config, auth, tuningdocs/milvus-schema.md— Collection schema fields and requirementsdocs/model-profiles.md— NIM profile definitions and selectiondocs/api-key.md— NGC API key setup, per-service keys, fallback orderdocs/service-port-gpu-reference.md— Port mappings and GPU assignments for all services
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Needs: Declares allowed tools, Needs an MCP server, Needs network access, Needs an API key
The author says: NVIDIA RAG Blueprint repository checkout; Docker/Compose or Kubernetes/Helm for deployments; Python 3.11+ for library workflows; NVIDIA GPU tooling for self-hosted NIM services.
Security
What our scanner noticed· Medium risk
- Large base64-encoded blobs
- Instructions that use the network
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- NVIDIA RAG
- Publisher
- NVIDIA (Official)
- Source
- NVIDIA/skills · skills/rag-blueprint · commit fce3cca
- Licence
- Apache License 2.0 (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE-APACHE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by NVIDIA RAG or NVIDIA.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download rag-blueprint.zip