Ajuste fino del recuperador multitarea para RAG eficiente y específico de dominio.
Multi-task retriever fine-tuning for domain-specific and efficient RAG
January 8, 2025
Autores: Patrice Béchard, Orlando Marquez Ayala
cs.AI
Resumen
La Generación con Recuperación Aumentada (RAG) se ha vuelto ubicua al implementar Modelos de Lenguaje Grandes (LLMs), ya que puede abordar limitaciones típicas como la generación de información alucinada o desactualizada. Sin embargo, al construir aplicaciones RAG del mundo real, surgen problemas prácticos. En primer lugar, la información recuperada suele ser específica del dominio. Dado que es costoso en cuanto a cómputo ajustar finamente los LLMs, es más factible ajustar finamente el recuperador para mejorar la calidad de los datos incluidos en la entrada del LLM. En segundo lugar, a medida que se implementan más aplicaciones en el mismo sistema del mundo real, no se puede permitir desplegar recuperadores separados. Además, estas aplicaciones RAG normalmente recuperan diferentes tipos de datos. Nuestra solución es ajustar finamente un pequeño codificador recuperador en una variedad de tareas específicas del dominio para permitirnos desplegar un codificador que pueda servir a muchos casos de uso, logrando así bajo costo, escalabilidad y velocidad. Mostramos cómo este codificador se generaliza a entornos fuera del dominio, así como a una tarea de recuperación no vista en casos de uso empresariales del mundo real.
English
Retrieval-Augmented Generation (RAG) has become ubiquitous when deploying
Large Language Models (LLMs), as it can address typical limitations such as
generating hallucinated or outdated information. However, when building
real-world RAG applications, practical issues arise. First, the retrieved
information is generally domain-specific. Since it is computationally expensive
to fine-tune LLMs, it is more feasible to fine-tune the retriever to improve
the quality of the data included in the LLM input. Second, as more applications
are deployed in the same real-world system, one cannot afford to deploy
separate retrievers. Moreover, these RAG applications normally retrieve
different kinds of data. Our solution is to instruction fine-tune a small
retriever encoder on a variety of domain-specific tasks to allow us to deploy
one encoder that can serve many use cases, thereby achieving low-cost,
scalability, and speed. We show how this encoder generalizes to out-of-domain
settings as well as to an unseen retrieval task on real-world enterprise use
cases.Summary
AI-Generated Summary