Les principaux termes techniques à connaître sur le RAG expliqués

你应该知道的 RAG 关键技术名词解释

Bonjour à tous ! Je suis Louis-François, cofondateur et directeur technique de Towards AI, et aujourd'hui nous allons nous plonger dans ce qui est probablement la meilleure pile Retrieval-Augmented Generation (RAG) disponible aujourd'hui - grâce à l'excellente recherche de Wang et al. (2024). Cette recherche offre une excellente opportunité de construire des systèmes optimaux de RAG Le système fournit des informations précieuses, et je suis là pour en percer les mystères.

Qu'est-ce qui fait qu'un système RAG est vraiment de première qualité ? Ses composants, bien sûr ! Examinons ces meilleurs composants et leur fonctionnement afin que vous puissiez vous aussi construire un système RAG de premier ordre, avec un œuf multimodal à la clé.

你应该知道的 RAG 关键技术名词解释

Classification des demandes de renseignements

Classification des requêtes

Commençons par le Classification des demandes de renseignements Commencer. Il n'est pas nécessaire d'extraire toutes les requêtes, car le grand modèle linguistique connaît parfois déjà la réponse. Par exemple, si vous demandez "Qui est Lionel Messi ?" le grand modèle linguistique sera déjà en mesure de vous répondre, sans qu'il soit nécessaire d'extraire la réponse !

Wang et al. ont créé 15 catégories de tâches pour déterminer si une requête fournit suffisamment d'informations ou si elle doit être récupérée. Ils ont formé un classificateur binaire pour différencier les tâches, les tâches étiquetées "suffisantes" n'ayant pas besoin d'être récupérées et les tâches étiquetées "insuffisantes" ayant besoin d'être récupérées. Dans cette image, le jaune signifie qu'aucune recherche n'est nécessaire et le rouge que certains documents doivent être récupérés !

你应该知道的 RAG 关键技术名词解释

découpage

Chunking

Suivant. découpage. Le défi consiste à trouver la taille optimale des morceaux pour vos données. Trop long ? Vous ajouterez du bruit et des coûts inutiles. Trop court ? Vous passerez à côté d'informations contextuelles.

你应该知道的 RAG 关键技术名词解释

Wang et al. ont constaté que les tailles de morceaux comprises entre 256 et 512 jeton Entre les deux, c'est ce qui fonctionne le mieux. Mais n'oubliez pas que cela dépend du type de données, alors n'oubliez pas de faire votre évaluation ! CONSEIL PRO : Utilisez la fonction small2big(commencez par de petits morceaux lors de la recherche, puis utilisez de plus gros morceaux lors de la génération), ou essayez la fonction fenêtre coulissante pour faire chevaucher les jetons entre les morceaux.

Métadonnées et recherche hybride

Métadonnées et recherche hybride

Utilisez vos métadonnées ! Ajoutez des titres, des mots-clés et même des questions hypothétiques. Travaillez ensuite avec les Recherche hybridequi combine la recherche vectorielle (pour l'appariement sémantique) avec la méthode classique d'analyse de l'information. BM25 votre système fonctionnera parfaitement.

HyDE (génération de pseudo-documents pour améliorer la recherche) est intéressant et donne de meilleurs résultats, mais il est extrêmement inefficace. Pour l'instant, il faut s'en tenir à la recherche hybride, qui permet de mieux équilibrer les performances et qui est particulièrement adaptée au prototypage.

Intégration de modèles

Modèle d'intégration

Choisir le bon Intégration de modèles C'est comme trouver la bonne paire de chaussures. Vous ne porteriez pas des chaussures de football pour jouer au tennis. LLM-Embedder Le meilleur ajustement dans cette étude - un bon équilibre entre la performance et la taille. Ni trop grand, ni trop petit - juste ce qu'il faut.

Il est à noter qu'ils n'ont testé que le modèle open source. Cohère et les modèles d'OpenAI ne sont pas pris en compte. Sinon, Cohere est probablement la meilleure solution.

base de données vectorielles

Base de données vectorielle

你应该知道的 RAG 关键技术名词解释

Passons maintenant à la base de données. Pour une utilisation à long terme, la base de donnéesMilvus est leur base de données vectorielle de prédilection. C'est une source ouverte, fiable et un excellent choix pour assurer le bon fonctionnement de votre système de recherche. J'ai également fourni des liens dans la description ci-dessous.

Conversion des requêtes

Transformation des requêtes

Avant de procéder à l'extraction, vous devez d'abord conversions la demande de l'utilisateur ! Soit par l'intermédiaire du Réécriture de requête pour améliorer la clarté, ou Décomposition des requêtes La décomposition de problèmes complexes en problèmes plus petits et l'extraction de chaque sous-problème, ou même la génération de pseudo-documents (par ex. HyDE ) et les utiliser dans le processus de récupération - cette étape est essentielle pour améliorer la précision. Gardez à l'esprit qu'un plus grand nombre de conversions augmentera le temps de latence, en particulier avec HyDE.

réarrangement

Reranking

Parlons-en maintenant. réarrangement. Une fois les documents récupérés, il faut s'assurer que les plus pertinents figurent en tête de liste, et c'est là qu'intervient le réordonnancement.

Dans cette étude.monoT5 est l'option la plus performante en termes de performances et d'efficacité. Elle affine le modèle T5 en réorganisant les documents en fonction de leur pertinence par rapport à la requête, en veillant à ce que les meilleures correspondances apparaissent en premier.RangLLaMA Meilleure performance globale, mais TILDEv2 La vitesse la plus rapide. Si vous êtes intéressé, le journal contient plus d'informations à ce sujet.

你应该知道的 RAG 关键技术名词解释

Reconditionnement des documents

Reconditionnement de documents

Après la réorganisation, vous devez effectuer les opérations suivantes Reconditionnement des documents Wang et al. recommandent d'utiliser la méthode "inverse", c'est-à-dire de trier les documents par ordre croissant de pertinence. Liu et al (2024) Cette approche consistant à placer les informations pertinentes au début ou à la fin a permis d'améliorer les performances. Le reconditionnement optimise la manière dont les informations sont présentées au grand modèle linguistique après le processus de réorganisation, afin d'aider le modèle à mieux comprendre l'ordre dans lequel les informations sont fournies, plutôt que de se baser uniquement sur un ordre théorique de pertinence.

résumés

Synthèse

你应该知道的 RAG 关键技术名词解释

Ensuite, avant d'appeler le grand modèle de langage, vous devez passer le paramètre résumés pour supprimer les informations redondantes. Les longues invites envoyées à de grands modèles linguistiques sont coûteuses et souvent inutiles. Le résumé peut contribuer à supprimer les informations redondantes ou inutiles et donc à réduire les coûts.

Vous pouvez utiliser quelque chose comme Recomp Les outils de ce type effectuent une compression extractive pour sélectionner les phrases utiles, ou une compression générative pour consolider les informations provenant de plusieurs documents. Toutefois, si la rapidité est votre priorité, vous pouvez envisager de sauter cette étape.

Générateur de précision

Mise au point du générateur

你应该知道的 RAG 关键技术名词解释

Enfin, est-il opportun de fournir une liste des noms que vous utilisez pour les générant Affiner le modèle linguistique Big Language ? Il faut absolument le faire ! L'ajustement avec un mélange de données documentaires corrélées et aléatoires améliore la capacité du générateur à traiter les informations non pertinentes. Cela rend le modèle plus robuste et permet d'obtenir de meilleures réponses globales. Bien que le rapport exact ne soit pas indiqué dans l'article, les résultats sont assez clairs : le réglage fin en vaut la peine ! Bien entendu, cela dépend également de votre domaine spécifique.

multimodal

Multimodalités

你应该知道的 RAG 关键技术名词解释

Lors du traitement des images ? Réalisation multimodal Récupération. Pour les tâches texte-image, la recherche d'images similaires dans la base de données peut accélérer le processus. Dans les tâches image-texte, la mise en correspondance d'images similaires permet de retrouver des descriptions précises et préexistantes. L'essentiel est de s'appuyer sur des informations réelles et vérifiées.

rendre un verdict

En résumé, l'article de Wang et al. nous fournit un plan solide pour construire des systèmes RAG efficaces. Il faut toutefois garder à l'esprit qu'il ne s'agit que d'un seul article et qu'il ne couvre pas tous les aspects de la filière RAG. Par exemple, l'article n'explore pas la formation conjointe des extracteurs et des générateurs, qui pourrait débloquer plus de potentiel. Il n'aborde pas non plus les techniques de découpage en morceaux qui n'ont pas été étudiées pour des raisons de coût, mais il s'agit d'une voie qui mérite d'être explorée.

Je recommande vivement de consulter l'article complet pour plus d'informations.

Comme toujours, merci de m'avoir lu. Si vous avez trouvé cette analyse utile, ou si vous avez des commentaires, faites-le moi savoir dans la section des commentaires et nous nous verrons la prochaine fois !

bibliographie

Construire des LLM pour la production. https://amzn.to/4bqYU9b

Wang et al, 2024 (Référence de la thèse). https://arxiv.org/abs/2407.01219

Liu et al, 2024 (reconditionnement de documents). https://arxiv.org/abs/2307.03172

Recomp (outil de synthèse). https://github.com/carriex/recomp

© déclaration de droits d'auteur

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...