Acelerador RAG alojado en Azure que basa las respuestas de un asistente de chat en tus propios documentos e incluye citas a las fuentes.
Azure-Samples/ai-rag-chat-evaluator
Scripts y herramientas para evaluar aplicaciones de chat RAG con Azure AI Evaluate SDK y evaluadores basados en OpenAI.
- Estrellas
- 336
- Forks
- 116
- Issues abiertos
- 25
- Último commit
- hace 4 días
¿Qué es?
Este proyecto ofrece un conjunto de herramientas de línea de comandos para medir la calidad de las respuestas de aplicaciones de chat basadas en generación aumentada por recuperación (RAG). Parámetros como el prompt del sistema, la configuración de búsqueda y las opciones del modelo GPT cambian las respuestas, así que cada cambio se puede evaluar con un conjunto de pares de preguntas y respuestas de referencia.
El evaluador envía preguntas a un endpoint de chat en ejecución y puntúa las respuestas con métricas basadas en GPT, como fundamentación en las fuentes, relevancia, coherencia y similitud, además de métricas basadas en código, como latencia, longitud de la respuesta y presencia de citas. También incluye generadores que crean conjuntos de preguntas de referencia, incluidas preguntas que los documentos fuente no pueden responder, para comprobar si una aplicación puede decir «No lo sé».
Los resultados se guardan por ejecución con detalles de cada pregunta y estadísticas resumidas. Los comandos de revisión incluidos comparan ejecuciones en una terminal y muestran los parámetros de cada una. La herramienta funciona con implementaciones de Azure OpenAI (con acceso sin clave de forma predeterminada) o cuentas de openai.com, y se configura mediante la CLI de azd.
Funciones clave
- 01Puntúa respuestas RAG con métricas basadas en GPT, como fundamentación en las fuentes, relevancia y coherencia.
- 02Calcula métricas basadas en código, como latencia, longitud de la respuesta y comprobaciones de citas.
- 03Genera conjuntos de preguntas de referencia, incluidas preguntas que los documentos no pueden responder.
- 04Compara respuestas entre ejecuciones en una vista de diferencias en la terminal, con filtros por métricas modificadas.
- 05Admite Azure OpenAI con autenticación sin clave o cuentas de openai.com.
Casos de uso
- Comprobar si un cambio en el prompt o la configuración de búsqueda mejora la calidad de las respuestas antes de implementar.
- Medir con qué frecuencia una aplicación de chat RAG reconoce que no sabe la respuesta cuando las fuentes no la contienen.
- Ejecutar evaluaciones rápidas de un subconjunto durante el desarrollo con un número limitado de preguntas.
- Comparar dos ejecuciones de experimentos pregunta por pregunta para detectar regresiones.
Inicio rápido
- 1
Instala Python 3.10 o una versión posterior
- 2
Crea y activa un entorno virtual de Python
- 3
Instala el proyecto en el entorno virtual
python -m pip install -e . - 4
Ejecuta una evaluación con la configuración de ejemplo
python -m evaltools evaluate --config=example_config.json
Antes de usarlo
- La evaluación requiere un modelo de la categoría GPT-4, por lo que necesitas una instancia de Azure OpenAI o de openai.com.
- Ejecutar evaluadores basados en GPT genera costos de tokens por cada pregunta y cada evaluador utilizado.
- Las métricas integradas usan prompts en inglés y solo son adecuadas para respuestas en inglés.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es ai-rag-chat-evaluator?
- Scripts y herramientas para evaluar aplicaciones de chat RAG con Azure AI Evaluate SDK y evaluadores basados en OpenAI. Este proyecto ofrece un conjunto de herramientas de línea de comandos para medir la calidad de las respuestas de aplicaciones de chat basadas en generación aumentada por recuperación (RAG). Parámetros como el prompt del sistema, la configuración de búsqueda y las opciones del modelo GPT cambian las respuestas, así que cada cambio se puede evaluar con un conjunto de pares de preguntas y respuestas de referencia.
- ¿ai-rag-chat-evaluator es gratuito? ¿Qué licencia tiene?
- ai-rag-chat-evaluator es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿ai-rag-chat-evaluator sigue mantenido?
- Mantenimiento activo. El último commit de ai-rag-chat-evaluator fue el 3 nov 2026.
- ¿Para qué puedo usar ai-rag-chat-evaluator?
- Comprobar si un cambio en el prompt o la configuración de búsqueda mejora la calidad de las respuestas antes de implementar. Medir con qué frecuencia una aplicación de chat RAG reconoce que no sabe la respuesta cuando las fuentes no la contienen. Ejecutar evaluaciones rápidas de un subconjunto durante el desarrollo con un número limitado de preguntas. Comparar dos ejecuciones de experimentos pregunta por pregunta para detectar regresiones.
- ¿Cómo se instala ai-rag-chat-evaluator?
- Instala Python 3.10 o una versión posterior Crea y activa un entorno virtual de Python Instala el proyecto en el entorno virtual: python -m pip install -e . Ejecuta una evaluación con la configuración de ejemplo: python -m evaltools evaluate --config=example_config.json
- ¿Dónde consigo ai-rag-chat-evaluator?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/Azure-Samples/ai-rag-chat-evaluator
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Framework open source de Python para probar aplicaciones con LLM, con métricas para RAG, agentes, chatbots, agentes de voz y más, inspirado en Pytest.
Biblioteca para Python y TypeScript que puntúa resultados de modelos de IA con evaluadores basados en LLM como juez, heurísticos y estadísticos.
Biblioteca de Python y TypeScript con evaluadores predefinidos y personalizables para probar resultados de aplicaciones con LLM, incluida la evaluación con un LLM como juez.
Una aplicación web de chat en Python que se conecta a Azure OpenAI con identidad administrada y se aprovisiona y despliega en Azure Container Apps mediante azd.
Acelerador de soluciones basado en Azure que analiza datos de conversaciones y documentos con IA generativa, con exploración mediante chat y paneles de insights generados automáticamente.