AI Engineering

Most enterprise RAG pilots fail at the PDF, not the prompt. How to build it right with NVIDIA NeMo Retriever and NIM.

NVIDIA's RAG Blueprint treats extraction, retrieval and generation as separate, swappable services. Here is what each one does and the order to build them in.

Manikandan, Chief AI and Innovation Officer
September 17, 2026 · 9 min read
v2.6.0
Current NVIDIA RAG Blueprint, released May 30, 2026 with agentic plan-and-execute RAG
400 MB
Maximum size of a single file upload in the Blueprint, per NVIDIA's release notes
5 to 6 min
Typical startup time for the LLM microservice. Plan health checks around it

Why RAG pilots stall

A RAG demo on clean text takes an afternoon. Then someone uploads a 90-page scanned contract with tables, a benefits schedule saved as an image, or a slide deck full of charts.

The text extractor flattens the tables into noise. The chunks lose their meaning. The LLM answers confidently from the wrong page. The team blames the model and tries a bigger one, and the answers stay wrong, because the problem sits upstream of the model.

NVIDIA's RAG Blueprint, now at version 2.6.0, is built around that failure. You do not have to use all of it. You should understand what each part is for before you replace any of it.

When a RAG system gives wrong answers, check extraction first, retrieval second, and the model last.

The reference architecture in one view

IngestPDF, DOCX, PPTX, images, audio
ExtractPage elements, tables, charts, OCR
Embed and indexEmbedding NIM into Elasticsearch or Milvus
Retrieve and rerankHybrid search plus reranker NIM
Generate and guardLLM NIM with Guardrails
ComponentDefault in Blueprint v2.6.0Why it matters
ExtractionNeMo Retriever page elements, table structure, graphic elements and OCR NIMsKeeps tables and charts structured instead of scrambled
Embeddingllama-nemotron-embed-vl-1b-v2, a vision-language model, now the defaultPages with images and charts become searchable, not just their text
Vector storeElasticsearch by default; Milvus with GPU-accelerated cuVS as an optionWeighted hybrid search catches exact terms like policy codes
RerankerLlama Nemotron rerank NIM, with VLM reranker supportRe-scores candidates so the LLM sees chunks that answer the question
LLMnemotron-3-super-120b-a12b with reasoning enabledOpenAI, AWS, Azure and open models are supported since v2.4.0
Safety and evaluationOptional NeMo Guardrails; RAGAS-based evaluation and performance toolingA quality score before your users give you one

Step by step: from prototype to self-hosted

Step 1. Prove retrieval quality on hosted endpoints

Before deploying a single container, test the three models that decide quality: embedding, reranking and generation. NVIDIA's LangChain connector talks to hosted endpoints today and to your own NIM containers later by changing one URL.

# pip install langchain-nvidia-ai-endpoints
# export NVIDIA_API_KEY=...   (from build.nvidia.com)
# Model IDs change often. Copy current IDs from the API catalogue.
from langchain_nvidia_ai_endpoints import NVIDIAEmbeddings, NVIDIARerank, ChatNVIDIA

embedder = NVIDIAEmbeddings(model="<embedding-model-id>")
reranker = NVIDIARerank(model="<rerank-model-id>", top_n=5)
llm      = ChatNVIDIA(model="<llm-model-id>")

# Later, point the same classes at self-hosted NIM:
# llm = ChatNVIDIA(base_url="http://your-nim-host:8000/v1", model="...")

Build a test set of 50 to 100 real questions, each tagged with the page its answer should come from. Measure how often the right page lands in the top five results, with and without the reranker. That number tells you more than any demo. We covered how to run that comparison in our guide to adding re-ranking to an enterprise RAG pipeline.

Step 2. Fix extraction before you tune anything else

Run your hardest documents through NeMo Retriever extraction and inspect the output by hand. Tables should keep their rows and columns. Chart captions should survive. Scanned pages should come through OCR readable. If extraction is wrong here, no embedding model will rescue it.

Step 3. Deploy the Blueprint with Docker Compose

For a single node, the repository at github.com/NVIDIA-AI-Blueprints/rag ships Compose files for the ingestion server, RAG server, NIMs and vector store. Follow the quick-start for your GPU. Expect the LLM microservice to take five to six minutes to start, and note that single uploads are capped at 400 MB. If you would rather embed the pipeline in your own Python service, there is a library mode and a containerless lite notebook.

Step 4. Tune retrieval for your content

  • Turn on weighted hybrid search if users search by codes, product names or clause numbers
  • Use collection-level metadata and dynamic filters to scope queries by department, date or document type
  • Test query rewriting and decomposition on your question set before leaving them switched on

Step 5. Add guardrails, evaluation and monitoring

Enable the content safety and topic control NIMs if the assistant faces customers or regulated staff. Run RAGAS evaluation on every change to models, chunking or prompts. Log retrieval and reranker scores per query so drift shows up before users report it.

Step 6. Add agentic RAG only after basic RAG works

Version 2.6.0 adds a plan-and-execute agentic pipeline for complex queries, and 2.4.0 brought an MCP server integration. Both help with questions that span several documents. Both also add latency and failure points. Earn them with a working baseline first.

Stuck between a RAG demo and production?

We build RAG and knowledge base systems for healthcare, BFSI and mid-market teams, including on-premise deployments where data cannot leave the building.

Book a Free AI Assessment →

Hardware: what to plan for

StageTypical setupWatch out for
PrototypeHosted NVIDIA endpoints, or one workstation-class GPU running smaller NIMsHosted model IDs and rate limits change. Pin versions in config
Private pilotOn-premise node running the full Blueprint; RTX PRO 6000-class GPUs gained MIG support in v2.5.0Audio ingestion is not supported on Kubernetes with RTX 6000 MIG
ProductionKubernetes or OpenShift with Helm; H100 or A100 recommended for advanced featuresB200 is not supported for image captioning, Guardrails, VLM inference or Nemotron Parse

A 120B-parameter default LLM needs a lot of GPU memory. Many pilots keep NVIDIA's extraction, embedding and reranking on-premise and swap in a smaller model or an external API for generation. Size GPU counts against NVIDIA's published support matrix for your version.

Where this is not the right answer

  • Your corpus is clean text, like a help centre or wiki export. Multimodal extraction adds cost for little gain. Basic embedding and reranking will do.
  • You have no GPU budget and no residency requirement. A managed RAG service on your existing cloud gets you live faster.
  • You need an answer in two weeks with no DevOps capacity. The full Blueprint runs many containers. Start with hosted endpoints and a minimal pipeline.

RAG readiness checklist

  • A scored test set of 50 or more real user questions, each with its source page marked
  • Extraction output on your worst scanned and table-heavy documents checked by a person
  • Top-5 retrieval accuracy measured with and without reranking
  • A written, signed-off rule on which data can leave your network
  • Evaluation that runs on every model, chunking or prompt change
  • A named engineer who owns the pipeline after launch and can debug GPU and container issues

What to do this week

  1. Pull 20 of your messiest documents and 50 questions users have actually asked.
  2. Run the questions against hosted embedding and reranking endpoints and record your top-5 hit rate.
  3. Inspect extraction output on five scanned or table-heavy files.
  4. Decide which components must run inside your network, and deploy only those first.

Frequently asked questions

What is the NVIDIA RAG Blueprint?

It is NVIDIA's open reference implementation of a retrieval-augmented generation pipeline. Version 2.6.0 combines NeMo Retriever extraction, embedding and reranking NIMs, Elasticsearch or Milvus, a Nemotron LLM, optional NeMo Guardrails and RAGAS-based evaluation, deployable with Docker Compose or Helm.

Can I use OpenAI or Azure models with the NVIDIA RAG Blueprint?

Yes. Since version 2.4.0 the Blueprint supports non-NIM models, including OpenAI, AWS, Azure and open-source models, so you can keep NVIDIA's extraction and retrieval while using another LLM for generation.

Which vector database does the NVIDIA RAG Blueprint use?

Elasticsearch is the default as of version 2.6.0. Milvus with GPU-accelerated cuVS indexing remains a supported option. Weighted hybrid search combining keyword and vector retrieval is available.

Why does my RAG system give wrong answers from tables and scanned PDFs?

Usually because text extraction flattens tables and loses chart content before anything is embedded. Structured extraction of page elements, tables, charts and OCR, as in NeMo Retriever, fixes the problem upstream of the model.

Collaborate

Have a problem that does not have a vendor yet?

Research partnerships, sponsored R&D, proof-of-concept builds, or a campus session for your students. Tell us what you are trying to find out and we will tell you honestly whether we are the right team for it.

Who leads it
Manikandan

Manikandan

Co-founder · Chief AI & Innovation Officer

Connect on LinkedIn

Manikandan leads 10decoders' R&D practice — spanning digital signal processing, medical imaging, agricultural sensing, and computer vision pipelines. He'll be straight with you about what's worth doing and what isn't.

200+
Engineers
37+
Global Clients
7
Active Tracks
Partner Program

Love what we're doing? Want to partner and sell our products or services?

Explore partner programs →

Start a conversation

We reply within one business day.

Prefer to write directly?manikandan@10decoders.com