Herramienta RAG Local Construida con Nemotron Nano 9B v2 y Llamadas de Herramienta vLLM

Detalles de Implementación Técnica
Un desarrollador ha compartido su enfoque para construir una herramienta de investigación RAG local-first que funciona completamente en una sola GPU. Todo el backend está contenido en un solo archivo app.py.
Stack y Configuración
La herramienta utiliza Nemotron Nano 9B v2 Japanese en vLLM con cuantización FP16, ejecutándose en una GPU RTX 5090. El backend combina FastAPI + SQLite FTS5 + Jinja2. Para las llamadas a herramientas, el desarrollador utiliza los complementos de análisis oficiales de NVIDIA, específicamente --tool-call-parser nemotron_json y --tool-parser-plugin, señalando que Nemotron v2 requiere complementos de análisis personalizados en lugar de los analizadores integrados de vLLM (que son para v3).
Decisiones de Diseño Clave
El sistema implementa un flujo de dos pasos extraer → ejecutar:
- Cuando se hace una pregunta, el sistema primero extrae palabras clave bilingües (inglés y japonés) mediante LLM
- Ejecuta búsqueda FTS5 en fuentes locales Y búsqueda web DuckDuckGo en paralelo
- Muestra resultados con casillas de verificación para selección del usuario
- Solo después de la selección del usuario genera la respuesta final
Este enfoque evita volcar más de 100k tokens de contexto y esperar que el modelo lo resuelva.
Rendimiento y Características
- Llamadas a Herramientas: El modelo decide autónomamente cuándo buscar en la web, funcionando sorprendentemente bien a temperatura 0.1
- Calentamiento de Caché de Prefijos: En lugar de almacenar todo en caché al cargar la fuente, la caché KV se calienta cuando el usuario ve la vista previa de la fuente. Para cuando hacen clic en Ejecutar, el prefijo ya está en caché usando
--enable-prefix-cachingen vLLM - Búsqueda FTS5 Bilingüe: Consulta del usuario → Nemotron extrae palabras clave en inglés y japonés → consulta MATCH FTS5 unida con OR, efectiva para datos de patentes/investigación multilingües
Números de Rendimiento
- ~80-120 tok/s de salida
- 8192 tokens máximos
- Extracción de fuentes: ~3-5s (extracción de palabras clave + FTS5 + DDG en paralelo)
- Respuesta completa con 5 fuentes + 3 resultados web: ~50s para una respuesta detallada en RTX 5090
Configuración y Source
El código fuente está disponible en https://github.com/soy-tuber/SoyLM. Es una aplicación de un solo archivo que se puede instalar con uv pip install -r requirements.txt. Nota que requiere vLLM con los complementos de análisis Nemotron por separado.
📖 Read the full source: r/LocalLLaMA
👀 Ver también

Desarrollador Crea la Aplicación LibraHQ para Resolver el Problema de Memoria de Agentes de IA
Un desarrollador creó LibraHQ, una aplicación gratuita de notas que sirve como una capa de memoria compartida entre chatbots y agentes de programación. La aplicación registra notas y decisiones importantes de los chats y las almacena para sesiones futuras, abordando el problema de que los agentes de IA olviden decisiones previamente tomadas.

CRM de Terminal Local con Servidor MCP Integrado para Integración con Claude
Un desarrollador creó un CRM personal que se ejecuta en la terminal con almacenamiento local en SQLite e incluye un servidor MCP integrado, dando a Claude acceso a 18 herramientas para gestionar contactos, acuerdos y seguimientos.

OMAR: TUI de código abierto para gestionar jerárquicamente cientos de agentes de codificación de IA
OMAR es un panel basado en terminal que te permite gestionar enjambres de agentes de codificación (Claude Code, Codex, Cursor, Opencode) en organizaciones jerárquicas. Construido sobre tmux. Cuenta con jerarquías agente-que-gestiona-agente, backends heterogéneos e integración con Slack.

Infracost reduce el uso de tokens de Claude en un 79% al rediseñar la CLI para agentes de IA
Infracost rediseñó su CLI para agentes de IA, reduciendo los tokens de salida de Claude en un 79% y el costo de API en un 67% en comparación con una línea base de Claude solo. Movimientos clave: pushdown de predicados en la CLI y un formato de salida eficiente en tokens.