NVIDIA / NVIDIA/NeMo-Agent-Toolkit-Examples
New example proposal: 3GPP spec Q&A with clause citations and an abstention gate (telecom RAG)
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 32
- Forks
- 23
- PR merge metrics
- No merged PRs in 30d
Description
Hi — I'd like to contribute a telecom-domain example and wanted to check the fit before opening the PR (per CONTRIBUTING).
What it demonstrates: a ReAct agent (native tool calling) over a custom retrieval function with two behaviors I haven't seen in the existing examples: (1) domain-aware chunking — 3GPP specs from the public GSMA/3GPP HF dataset are chunked at clause boundaries so every retrieved passage carries a citable reference like [TS 38.331 §5.3.5.3], and the agent cites clauses in its answers; (2) a calibrated abstention gate — below a cosine relevance floor the tool returns an explicit ABSTAIN and the agent tells the user the indexed specs don't cover the question, instead of answering from prior knowledge.
Stack: nvidia/nemotron-3-nano-30b-a3b (agent) + nvidia/nemotron-3-embed-1b (embeddings), both via build.nvidia.com — no local GPU. Corpus is downloaded by the user from the public GSMA dataset; no spec text ships in the repo.
Status: built and tested against nvidia-nat 1.8 — offline pytest suite for the chunker/index/abstention, and both the cited-answer and abstain paths verified end-to-end with nat run. Follows the nat workflow create layout (nat_clausefinder_3gpp module, configs symlink, pyproject with nat.components entry point).
It's a distillation of a larger open-source project of mine (https://github.com/chinthave657/clausefinder — full hybrid retrieval + citation validator + NeMo Guardrails on the same corpus), scoped down to one clean teachable pattern.
Happy to adjust scope or naming — PR is ready to open whenever.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with CONTRIBUTING and the existing nat workflow create layout, then inspect the described nat_clausefinder_3gpp module, configs symlink, and pyproject entry point. Run the offline pytest suite and the cited-answer and abstain paths with nat run; done means the example follows the repository layout and all listed checks pass without shipping spec text.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- ai, search
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100