- Publicado el
Comparando Modelos Mistral LLM: ¿Cuál Sobresale en Sistemas RAG?

Introducción
En este post, exploro el rendimiento comparativo de los sistemas de Generación Aumentada por Recuperación (RAG) probándolos con diferentes modelos de Mistral AI. Mi objetivo es analizar la calidad de las respuestas generadas por estos modelos cuando se integran en una configuración RAG básica.
Los sistemas RAG son un enfoque cada vez más popular para aprovechar los modelos de lenguaje grandes (LLMs) al combinarlos con fuentes de conocimiento externas. Esta configuración permite que los modelos recuperen información relevante de una base de datos y generen respuestas informadas basadas en los documentos recuperados.
Configuración RAG
Para este experimento, utilicé el ParentDocumentRetriever de Langchain, que se combina con un almacén de vectores FAISS como almacén de documentos. El recuperador es un componente crucial en la tubería RAG, encargado de obtener documentos relevantes que el LLM utilizará para generar respuestas.
Como conocimiento del dominio, utilicé un conjunto de artículos sobre RAG de arXiv, proporcionados en formato PDF. Estos artículos se procesaron y se incorporaron al almacén de vectores FAISS para crear una base de conocimiento integral para la recuperación durante el experimento.
La tubería de recuperación se mantuvo intencionalmente simple con una configuración RAG básica para centrarse en la efectividad de los diferentes modelos de Mistral AI en el procesamiento del contenido recuperado y en la respuesta precisa a las preguntas.
ParentDocumentRetriever: Equilibrando Especificidad y Contexto
El ParentDocumentRetriever
equilibra dos objetivos al dividir documentos: crear fragmentos pequeños para incrustaciones precisas y mantener suficiente contexto para una recuperación significativa. Funciona recuperando primero los fragmentos más pequeños de datos, que tienen significados precisos, y luego busca sus documentos principales para devolver el contexto más amplio. Esto asegura que la recuperación sea tanto específica como contextualmente rica, sin perder información importante.
Modelos de Mistral AI Comparados
Los siguientes modelos de Mistral se ejecutaron a través del endpoint de la API LLM de Mistral AI y se compararon en función de su capacidad para generar respuestas coherentes, precisas y contextualmente relevantes:
- mistral-large-2407
- mistral-small-2409
- open-mixtral-8x22b
- open-mixtral-8x7b
Criterios de Evaluación
Para garantizar una evaluación imparcial de la calidad de las respuestas, utilicé un modelo Mistral large
como juez. El Mistral large
tuvo la tarea de puntuar los resultados generados por los diferentes modelos basándose en un conjunto de criterios:
- Relevancia: Qué tan bien la respuesta se alinea con los documentos recuperados.
- Coherencia: La claridad y el flujo lógico de la respuesta.
- Precisión: Si los hechos presentados en la respuesta coinciden con el contexto proporcionado por los documentos recuperados.
Cadena RAG
El siguiente diagrama de flujo ilustra la cadena RAG básica utilizada en este estudio.

Diagrama generado utilizando la integración de Excalidraw con Mermaid.
Conclusión
El modelo mistral-large-2407
superó consistentemente a los demás en términos de relevancia, coherencia y precisión, lo que lo convierte en la mejor opción para respuestas de alta calidad, aunque también requirió significativamente más tiempo en comparación con los modelos más pequeños. El modelo mistral-small-2409
ofreció un buen rendimiento con tiempos de respuesta más rápidos, mientras que los modelos open-mixtral
fueron adecuados para escenarios que priorizan la velocidad sobre la precisión.
Este estudio está muy limitado en el número de preguntas evaluadas, lo que restringe su capacidad para derivar conclusiones generales.
En futuros posts, planeo proporcionar más detalles sobre la configuración utilizada para este estudio y también explorar otros enfoques avanzados de RAG.
Resultados
Los siguientes resultados proporcionan una visión general de cómo los diferentes modelos de Mistral AI se desempeñaron en una serie de preguntas relacionadas con los sistemas de Generación Aumentada por Recuperación (RAG). Cada modelo fue evaluado en función de su capacidad para generar respuestas relevantes, coherentes y precisas.
Question: Describe a taxonomy of RAG systems
- Model: mistral-large-2407, Score: 9.5, Time: 29.47 s
- Model: mistral-small-2409, Score: 9.5, Time: 13.81 s
- Model: open-mixtral-8x22b, Score: 8.5, Time: 7.98 s
- Model: open-mixtral-8x7b, Score: 8.5, Time: 4.26 s
Question: Explain in depth with all details what FlashRAG offers
- Model: mistral-large-2407, Score: 9.5, Time: 28.22 s
- Model: mistral-small-2409, Score: 9.5, Time: 15.98 s
- Model: open-mixtral-8x22b, Score: 9.5, Time: 9.73 s
- Model: open-mixtral-8x7b, Score: 8.5, Time: 7.79 s
Question: Give me pros and cons of RAG in comparison with model fine-tuning
- Model: mistral-large-2407, Score: 9.5, Time: 36.34 s
- Model: mistral-small-2409, Score: 9.5, Time: 13.14 s
- Model: open-mixtral-8x22b, Score: 9.5, Time: 11.6 s
- Model: open-mixtral-8x7b, Score: 8.5, Time: 8.75 s
Question: How does the context length limitation impact the retrieval process in RAG systems, and what strategies are used to mitigate it?
- Model: mistral-large-2407, Score: 9.5, Time: 18.55 s
- Model: mistral-small-2409, Score: 8.5, Time: 12.77 s
- Model: open-mixtral-8x22b, Score: 8.5, Time: 8.93 s
- Model: open-mixtral-8x7b, Score: 8.5, Time: 4.99 s
Question: What are the advantages and disadvantages of different document chunking strategies in RAG systems?
- Model: mistral-large-2407, Score: 9.5, Time: 24.51 s
- Model: mistral-small-2409, Score: 7.5, Time: 2.46 s
- Model: open-mixtral-8x22b, Score: 8.5, Time: 10.3 s
- Model: open-mixtral-8x7b, Score: 6.5, Time: 5.03 s
Question: How can RAG systems incorporate long-term memory to improve performance across multiple interactions?
- Model: mistral-large-2407, Score: 8.5, Time: 12.05 s
- Model: mistral-small-2409, Score: 2.5, Time: 2.34 s
- Model: open-mixtral-8x22b, Score: 8.5, Time: 6.09 s
- Model: open-mixtral-8x7b, Score: 8.5, Time: 5.71 s
Enlaces Útiles
- Documentación de Mistral AI
- Documentación de Langchain
- Documentación de FAISS en Langchain
- Artículos de arXiv
¿Disfrutaste este post? ¿Te resultó útil? No dudes en dejar un comentario a continuación para compartir tus pensamientos o hacer preguntas. Se requiere una cuenta de GitHub para unirse a la discusión.