Feinabstimmung des Multi-Task-Retrievers für domänenspezifische und effiziente RAG
Multi-task retriever fine-tuning for domain-specific and efficient RAG
January 8, 2025
Autoren: Patrice Béchard, Orlando Marquez Ayala
cs.AI
Zusammenfassung
Die Retrieval-gestützte Generierung (RAG) ist mittlerweile allgegenwärtig bei der Bereitstellung von Large Language Models (LLMs), da sie typische Einschränkungen wie die Generierung von halluzinierten oder veralteten Informationen bewältigen kann. Beim Aufbau von RAG-Anwendungen in der realen Welt treten jedoch praktische Probleme auf. Erstens ist die abgerufene Information in der Regel domänenspezifisch. Da es rechenintensiv ist, LLMs feinzutunen, ist es sinnvoller, den Retriever zu feinabstimmen, um die Qualität der Daten zu verbessern, die in die LLM-Eingabe einfließen. Zweitens, da immer mehr Anwendungen im selben realen System bereitgestellt werden, kann man es sich nicht leisten, separate Retriever einzusetzen. Darüber hinaus rufen diese RAG-Anwendungen normalerweise unterschiedliche Arten von Daten ab. Unsere Lösung besteht darin, einen kleinen Retriever-Encoder anhand einer Vielzahl von domänenspezifischen Aufgaben zu instruktionsbasiert feinzutunen, um einen Encoder bereitzustellen, der viele Anwendungsfälle bedienen kann, was zu geringen Kosten, Skalierbarkeit und Geschwindigkeit führt. Wir zeigen, wie sich dieser Encoder auf out-of-domain-Einstellungen sowie auf eine unbekannte Abrufaufgabe in realen Unternehmensanwendungsfällen verallgemeinern lässt.
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