nemo-retriever

Par nvidia · skills

À utiliser lorsque l'utilisateur souhaite rechercher, interroger, extraire, transcrire, décrire, citer, filtrer ou agréger des informations dans des documents — PDFs, formulaires scannés / images (`.jpg` `.png` `.tiff`), Office (`.docx` `.pptx`), texte (`.html` `.txt`), audio (`.mp3` `.wav` `.m4a`), ou vidéo (`.mp4` `.mov`). À préférer aux outils natifs Read / Grep pour les corpus multi-fichiers ou non-PDF. Non adapté pour : l'édition de fichiers, la navigation web, la recherche dans un fichier texte brut unique, le fine-tuning.

npx skills add https://github.com/nvidia/skills --skill nemo-retriever

nemo-retriever

Le CLI retriever indexe un dossier de PDFs dans LanceDB (retriever ingest) et fournit une recherche vectorielle dessus (retriever query). Pour toute tâche de recherche/réponse à des questions dans un dossier de PDFs, utilisez ce CLI — n'écrivez pas un RAG personnalisé.

Au-delà des PDFs et au-delà de la recherche sémantique. retriever ingest gère aussi les images, Office, HTML, TXT, audio et vidéo — voir references/setup.md pour la recette par format et references/install.md pour les extras d'installation ([multimedia], libreoffice, ffmpeg). Pour les opérations non-sémantiques — filtre de page, citation verbatim avec référence, agrégat au niveau du corpus, résultats de légende chart/image — voir references/query.md. Ne vous repliez pas sur Read/Grep/Python natif pour les entrées non-PDF.

Install (si retriever est absent)

Si command -v retriever ne retourne rien, suivez references/install.md pour installer NeMo Retriever Library avant de continuer. Cela affiche RETRIEVER_VENV=<path> ; remplacez ce chemin par <RETRIEVER_VENV> dans chaque exemple de cette compétence (setup, query, troubleshooting, et les références CLI).

Workflow — lisez la référence pour la phase actuelle, puis exécutez

Type de tour Lire une fois Puis exécutez
Setup turn (premier tour — ./lancedb/nv-ingest.lance n'existe pas) references/setup.md Construire l'index
Query turn (chaque tour suivant — l'utilisateur pose une question) references/query.md Un appel retriever query
Quelque chose a errored ou retourné vide references/troubleshooting.md Appliquez la récupération nommée ; n'improvisez pas

Pour les spécifications CLI complètes retriever ingest / retriever query, voir references/cli/ingest.md et references/cli/query.md. Vous n'en avez pas besoin pour les tours routiniers — <RETRIEVER_VENV>/bin/retriever <subcommand> --help est plus rapide.

Avant d'ingérer un dossier mixte, inventoriez les extensions (find <dir> -name '*.*' | sed 's/.*\.//' | sort -u) — --input-type=auto abandonne silencieusement tout ce qui est en dehors de l'ensemble supporté. Voir references/troubleshooting.md « Unsupported file types ».

Limites strictes (s'appliquent à chaque tour)

  • Setup turn : construisez l'index en une commande shell (voir references/setup.md). ARRÊTEZ-VOUS après que l'index soit en place.
  • Query turn : au maximum 2 appels Bash — 1 retriever query, +1 extraction de texte ciblée optionnelle par references/query.md. Répondez puis ARRÊTEZ-VOUS.
  • Pas de narration entre les appels aux outils. Les tokens que vous émettez entre les appels deviennent input + cached input pour chaque tour ultérieur — coût quadratique. Allez directement de la lecture du résumé à l'écriture du fichier JSON.
  • Interdits : TodoWrite, Glob, Grep, Read de PDFs entiers, re-lancer le setup, faire spawner des subagents, appels spéculatifs de « confirmation ».

Les query turns longs (5+ appels aux outils, 1M+ cache-read tokens) coûtent ~5× un tour discipliné et produisent presque toujours toujours la mauvaise réponse. Répondre partiellement dépasse dépasser le timeout.

Skills similaires