Créer votre propre RAG - Amazon Nova

Créer votre propre RAG

Lorsque vous créez votre propre système de génération à enrichissement contextuel (RAG), vous pouvez utiliser un système d’extracteur et un système de génération. L’extracteur peut être un modèle de vectorisation qui identifie les segments pertinents à partir de la base de données vectorielles en fonction de scores de similarité. Le système de génération peut être un grand modèle de langage (LLM) qui utilise la capacité du modèle à répondre à des questions en fonction des résultats extraits (également appelés segments). Dans les sections suivantes, nous vous donnerons des conseils supplémentaires sur la manière d’optimiser les invites pour votre système RAG.

Tirer parti de l’invite système

Comme pour d’autres fonctionnalités, il peut être avantageux d’améliorer l’invite système. Vous pouvez définir la description des systèmes RAG dans l’invite système, en décrivant le personnage et le comportement souhaités pour le modèle.

Utiliser les instructions du modèle

Vous pouvez inclure une section "Model Instructions:" dédiée dans l’invite système, dans laquelle vous pouvez fournir des directives spécifiques à suivre par le modèle. Par exemple, vous pouvez répertorier des instructions telles que :

In this example session, the model has access to search results and a user's question, its job is to answer the user's question using only information from the search results.

Model Instructions: - You should provide concise answer to simple questions when the answer is directly contained in search results, but when comes to yes/no question, provide some details. - In case the question requires multi-hop reasoning, you should find relevant information from search results and summarize the answer based on relevant information with logical reasoning. - If the search results do not contain information that can answer the question, please state that you could not find an exact answer to the question, and if search results are completely irrelevant, say that you could not find an exact answer, then summarize search results. - Remember to add citations to your response using markers like %[1]%, %[2]%, %[3]%, etc for the corresponding passage supports the response.
Éviter les hallucinations en limitant les instructions

Mettre davantage l’accent sur les instructions en mentionnant clairement « NE PAS UTILISER LES INFORMATIONS QUI NE FIGURENT PAS DANS LES RÉSULTATS DE RECHERCHE ! » comme instruction du modèle afin que les réponses soient ancrées dans le contexte fourni.

- DO NOT USE INFORMATION THAT IS NOT IN SEARCH RESULTS!
Fournir une requête d’entrée suivie des résultats de recherche

Fournir une requête d’entrée suivie des résultats de recherche de l’extracteur ou des extraits contextuels. Le modèle fonctionne mieux lorsque les résultats des extraits sont fournis après Resource: Search Results:

{query} Resource: Search Results: {rag_chunks_retreiver_results}
Citations

Les citations servent de références utiles pour revenir au contexte fourni pour répondre à la question. Les citations sont généralement utilisées principalement pour l’ancrage des réponses LLM. Les citations sont utilisées comme outil d’évaluation, permettant aux utilisateurs de se référer aux sources citées dans le contexte afin d’évaluer si les réponses restent fidèles aux informations fournies.

Voici un exemple d’invite à ajouter dans les « Instructions du modèle » de votre invite système afin de permettre au modèle de se concentrer sur la production de citations dans la réponse :

- Make sure to always add citations to your response using markers like %[1]%, %[2]%, %[3]%, and for the corresponding passage that supports the response.

Vous pouvez combiner toutes les recommandations précédentes avec le modèle d’invite suivant. Ce modèle ne générera que des fragments extraits.

Role Prompt

Système

Dans cette session, le modèle a accès aux résultats de recherche et à la question d’un utilisateur. Votre tâche consiste à répondre à la question de l’utilisateur en utilisant uniquement les informations issues des résultats de recherche.

Instructions du modèle :

  • Vous devez fournir une réponse concise aux questions simples lorsque la réponse est directement contenue dans les résultats de recherche, mais lorsqu’il s’agit d’une question oui/non, fournissez quelques détails.

  • Si la question nécessite un raisonnement à plusieurs niveaux, vous devez trouver les informations pertinentes dans les résultats de recherche et résumer la réponse en vous basant sur ces informations et en utilisant un raisonnement logique.

  • Si les résultats de recherche ne contiennent pas d’informations permettant de répondre à la question, veuillez indiquer que vous n’avez pas trouvé de réponse exacte à la question. Si les résultats de recherche sont totalement hors de propos, indiquez que vous n’avez pas trouvé de réponse exacte, puis résumez les résultats de recherche.

  • N’oubliez pas d’ajouter une citation à la fin de votre réponse en utilisant des marqueurs tels que %[1]%, %[2]%, %[3]%, etc. pour le passage correspondant qui étaye la réponse.

  • N’UTILISEZ PAS D’INFORMATIONS QUI NE FIGURENT PAS DANS LES RÉSULTATS DE RECHERCHE !

Utilisateur

{Requête}

Ressource : recherche Résultats : {search_results}

RAG multimodal

Lorsque vous créez un RAG multimodal, il existe quelques bonnes pratiques supplémentaires que vous devez respecter.

  • Utilisez directement les images si elles ne contiennent pas beaucoup de texte (c’est-à-dire des scènes naturelles, des diapositives avec peu de texte, des infographies, etc.). Amazon Nova a été optimisé pour traiter les images qui ne contiennent pas beaucoup de texte. Vous n’avez pas besoin de transmettre un résumé supplémentaire pour ces images dans l’ancrage.

  • Améliorez les images contenant beaucoup de texte à l’aide de résumés (par exemple, rapports PDF, articles). Pour les PDF riches en texte, la meilleure approche consiste à extraire à la fois les images (PDF) et les résumés textuels correspondants. Les résumés textuels peuvent aider le modèle à identifier les informations pertinentes parmi les quantités massives de texte contenues dans l’image d’origine.

  • Veuillez informer le modèle que vous transmettez des images. Dans les instructions, vous pouvez ajouter une phrase telle que « You will be provided with images and texts from search results ».