Base de datos de embeddings de código abierto para aplicaciones de IA, que almacena documentos y vectores para habilitar búsquedas semánticas, híbridas y de texto completo.
aurelio-labs/semantic-router
Una capa de decisión para LLM y agentes que enruta solicitudes por similitud semántica o con un modelo de decisión pequeño y devuelve una confianza calibrada.
- Estrellas
- 3,962
- Forks
- 382
- Issues abiertos
- 138
- Último commit
- hace 9 horas
¿Qué es?
Semantic Router decide a qué ruta corresponde una solicitud del usuario sin esperar a que un LLM termine de generarla. Cada ruta se define con ejemplos de frases; las consultas entrantes se convierten en embeddings y se comparan con esos ejemplos en el espacio vectorial, por lo que la decisión tarda milisegundos. Como alternativa, DecisionRouter pide a un modelo de decisión pequeño (Jev, Laya o Von) que elija la ruta aplicable en una sola llamada.
Las puntuaciones de confianza se pueden calibrar con fit() para convertirlas en probabilidades, y un umbral de confianza permite que el router devuelva None cuando no corresponde ninguna ruta. Los routers se pueden combinar con Chain, que recurre a un router más lento cuando no tiene suficiente certeza, y con Merge, que promedia varios routers. También se admiten búsqueda híbrida mediante un codificador sparse, índices de Pinecone, Qdrant o Postgres y rutas multimodales basadas en imágenes, con codificadores de OpenAI, Cohere, Hugging Face y FastEmbed para usarlo todo de forma local.
Funciones clave
- 01Enruta solicitudes por similitud semántica mediante ejemplos de frases y embeddings vectoriales.
- 02Ofrece DecisionRouter, basado en modelos de decisión pequeños, para seleccionar una ruta en una sola llamada.
- 03Calibra las puntuaciones de confianza como probabilidades con fit() y un umbral de confianza.
- 04Combina routers con Chain para recurrir a otra opción y con Merge para promediarlos.
- 05Admite búsqueda híbrida, varios almacenes vectoriales y rutas multimodales basadas en imágenes.
- 06Funciona completamente de forma local con FastEmbed, sin claves de API.
Casos de uso
- Decidir qué herramienta o agente debe invocar un chatbot antes de llamar a un LLM.
- Filtrar consultas fuera de tema o sensibles en un asistente de atención al cliente.
- Crear una clasificación de intenciones de baja latencia para líneas de atención telefónica o flujos de triaje.
- Enrutar mensajes de usuarios a distintos prompts o pipelines según el tema.
Inicio rápido
- 1
Instala Semantic Router con el codificador FastEmbed local
pip install -qU "semantic-router[fastembed]" - 2
Define las rutas, crea un codificador FastEmbed y construye un IndexedRouter; después, llámalo con una consulta
Antes de usarlo
- La calidad del enrutamiento depende de las frases de ejemplo que escribas y de ajustar los umbrales con datos etiquetados.
- Algunas funciones (OpenAI, Cohere, Pinecone y otras) requieren claves de API o servicios externos.
Temas
Preguntas frecuentes
- ¿Qué es semantic-router?
- Una capa de decisión para LLM y agentes que enruta solicitudes por similitud semántica o con un modelo de decisión pequeño y devuelve una confianza calibrada. Semantic Router decide a qué ruta corresponde una solicitud del usuario sin esperar a que un LLM termine de generarla. Cada ruta se define con ejemplos de frases; las consultas entrantes se convierten en embeddings y se comparan con esos ejemplos en el espacio vectorial, por lo que la decisión tarda milisegundos. Como alternativa, DecisionRouter pide a un modelo de decisión pequeño (Jev, Laya o Von) que elija la ruta aplicable en una sola llamada.
- ¿semantic-router es gratuito? ¿Qué licencia tiene?
- semantic-router es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿semantic-router sigue mantenido?
- Mantenimiento activo. El último commit de semantic-router fue el 21 oct 2026.
- ¿Para qué puedo usar semantic-router?
- Decidir qué herramienta o agente debe invocar un chatbot antes de llamar a un LLM. Filtrar consultas fuera de tema o sensibles en un asistente de atención al cliente. Crear una clasificación de intenciones de baja latencia para líneas de atención telefónica o flujos de triaje. Enrutar mensajes de usuarios a distintos prompts o pipelines según el tema.
- ¿Cómo se instala semantic-router?
- Instala Semantic Router con el codificador FastEmbed local: pip install -qU "semantic-router[fastembed]" Define las rutas, crea un codificador FastEmbed y construye un IndexedRouter; después, llámalo con una consulta
- ¿Dónde consigo semantic-router?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/aurelio-labs/semantic-router
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Un asistente personal de IA autohospedado que funciona en tus propios dispositivos y te responde a través de apps de mensajería como WhatsApp, Telegram, Slack y Discord.
AutoGPT es una plataforma de código abierto para crear, ejecutar y programar agentes de IA que completan flujos de trabajo de varios pasos a partir de descripciones en lenguaje natural o de un editor visual.
Segundo cerebro con IA autoalojable que responde preguntas sobre la web y tus propios documentos, con agentes personalizados y automatizaciones programadas.
SDK para crear agentes de IA y sistemas multiagente en Python, .NET y Java, con integraciones de modelos, plugins y bases de datos vectoriales.
Plataforma autoalojada para crear agentes y asistentes de IA que responden preguntas sobre tus documentos, con citas y cualquier modelo.