Table of Contents
Au cours des deux dernières années, j’ai observé de près comment les entreprises financières identifient et priorisent les cas d’utilisation de l’IA générative, en équilibrant complexité et potentiel de valeur.
Génération Augmentée par Récupération (RAG)
La génération augmentée par récupération (RAG) se distingue souvent comme une capacité fondamentale dans de nombreuses solutions basées sur des LLM, trouvant un équilibre entre facilité de mise en œuvre et impact dans le monde réel. En combinant un récupérateur qui fait remonter des documents pertinents avec un LLM qui synthétise les réponses, RAG simplifie l’accès à la connaissance, ce qui en fait un outil inestimable pour des applications telles que le support client, la recherche et la gestion interne des connaissances.
Définir des critères d’évaluation clairs est essentiel pour garantir que les solutions LLM répondent aux normes de performance, tout comme le développement piloté par les tests (TDD) assure la fiabilité du logiciel traditionnel. S’appuyant sur les principes du TDD, une approche axée sur l’évaluation définit des repères mesurables pour valider et améliorer les flux de travail de l’IA. Cela devient particulièrement important pour les LLM, où la complexité des réponses ouvertes exige une évaluation constante et réfléchie pour fournir des résultats fiables.
Pour les applications RAG, un ensemble d’évaluation typique comprend des paires d’entrée-sortie représentatives qui s’alignent sur le cas d’utilisation prévu. Par exemple, dans les applications de chatbot, cela pourrait impliquer des paires de questions-réponses reflétant les demandes des utilisateurs. Dans d’autres contextes, comme la récupération et le résumé de texte pertinent, l’ensemble d’évaluation pourrait inclure des documents sources accompagnés de résumés attendus ou de points clés extraits. Ces paires sont souvent générées à partir d’un sous-ensemble de documents, comme ceux qui sont les plus consultés ou fréquemment accédés, garantissant ainsi que l’évaluation se concentre sur le contenu le plus pertinent.
Défis Clés
La création de jeux de données d’évaluation pour les systèmes RAG a traditionnellement rencontré deux défis majeurs :
- Le processus repose souvent sur des experts en la matière (SME) pour examiner manuellement les documents et générer des paires de questions-réponses, ce qui le rend chronophage, incohérent et coûteux.
- Des limites empêchent les LLM de traiter des éléments visuels dans les documents, comme des tableaux ou des diagrammes, car ils ne peuvent gérer que du texte. Les outils OCR standards peinent à combler cette lacune, échouant souvent à extraire des informations significatives à partir de contenus non textuels.
Capacités Multimodales
Les défis liés à la gestion de documents complexes ont évolué avec l’introduction de capacités multimodales dans les modèles fondamentaux. Les modèles commerciaux et open source peuvent désormais traiter à la fois le texte et le contenu visuel. Cette capacité de vision élimine le besoin de flux de travail d’extraction de texte séparés, offrant une approche intégrée pour gérer des PDF multimédias.
En tirant parti de ces fonctionnalités de vision, les modèles peuvent ingérer des pages entières à la fois, reconnaissant les structures de mise en page, les étiquettes de graphique et le contenu des tableaux. Cela réduit non seulement l’effort manuel, mais améliore également l’évolutivité et la qualité des données, faisant de cela un puissant facilitateur pour les flux de travail RAG qui reposent sur des informations précises provenant de diverses sources.
Curée de Jeu de Données pour un Rapport de Recherche en Gestion de Patrimoine
Pour démontrer une solution au problème de la génération manuelle de jeux d’évaluation, j’ai testé mon approche en utilisant un document échantillon : le rapport Cerulli 2023. Ce type de document est typique dans la gestion de patrimoine, où les rapports de style analyste combinent souvent texte et visuels complexes. Pour un assistant de recherche alimenté par RAG, un corpus de connaissances comme celui-ci contiendrait probablement de nombreux documents de ce type.
Mon objectif était de démontrer comment un seul document pouvait être utilisé pour générer des paires de questions-réponses, incorporant à la fois des éléments de texte et visuels. Bien que je n’aie pas défini de dimensions spécifiques pour les paires de questions-réponses dans ce test, une mise en œuvre dans le monde réel impliquerait de fournir des détails sur les types de questions (comparatives, analyse, choix multiples), les sujets (stratégies d’investissement, types de comptes), et bien d’autres aspects. L’accent principal de cette expérience était de s’assurer que le LLM générait des questions qui incorporaient des éléments visuels et produisait des réponses fiables.
Mon flux de travail, illustré dans le diagramme, tire parti du modèle Claude Sonnet 3.5 d’Anthropic, qui simplifie le processus de travail avec des PDF en traitant la conversion des documents en images avant de les transmettre au modèle. Cette fonctionnalité intégrée élimine le besoin de dépendances tierces supplémentaires, rationalisant le flux de travail et réduisant la complexité du code.
J’ai exclu les pages préliminaires du rapport comme le sommaire et le glossaire, en me concentrant sur les pages contenant du contenu pertinent et des graphiques pour générer des paires de questions-réponses. Voici le prompt que j’ai utilisé pour générer les ensembles de questions-réponses initiales :
Vous êtes un expert en analyse de rapports financiers et en génération de paires de questions-réponses. Pour le PDF fourni, le rapport Cerulli 2023 : 1. Analysez les pages {start_idx} à {end_idx} et pour **chacune** de ces 10 pages : - Identifiez le **titre exact de la page** tel qu'il apparaît sur cette page (par exemple, "Exhibit 4.03 Core Market Databank, 2023"). - Si la page comprend un graphique, un tableau ou un diagramme, créez une question qui fait référence à cet élément visuel. Sinon, posez une question sur le contenu textuel. - Générez deux réponses distinctes à cette question ("answer_1" et "answer_2"), toutes deux soutenues par le contenu de la page. - Identifiez le numéro de page correct tel qu'indiqué dans le coin inférieur gauche de la page. 2. Retournez exactement 10 résultats sous forme de tableau JSON valide (une liste de dictionnaires). Chaque dictionnaire doit avoir les clés : "page" (int), "page_title" (str), "question" (str), "answer_1" (str), et "answer_2" (str). Le titre de la page inclut généralement le mot "Exhibit" suivi d'un numéro.
Génération des Paires de Questions-Réponses
Pour affiner le processus de génération de Q&A, j’ai mis en œuvre une approche d’apprentissage comparative qui génère deux réponses distinctes pour chaque question. Pendant la phase d’évaluation, ces réponses sont évaluées selon des dimensions clés telles que l’exactitude et la clarté, la réponse la plus forte étant sélectionnée comme réponse finale.
Cette approche reflète la manière dont les humains trouvent souvent plus facile de prendre des décisions en comparant des alternatives plutôt qu’en évaluant quelque chose de manière isolée. C’est comme un examen de la vue : l’optométriste ne demande pas si votre vision s’est améliorée ou dégradée, mais présente plutôt deux lentilles et demande, laquelle est plus claire, option 1 ou option 2 ? Ce processus comparatif élimine l’ambiguïté de l’évaluation des améliorations absolues et se concentre sur les différences relatives, rendant le choix plus simple et plus actionnable. De même, en présentant deux options de réponse concrètes, le système peut évaluer plus efficacement laquelle des réponses est la plus forte.
Cette méthodologie est également citée comme une bonne pratique dans l’article « Ce que nous avons appris en une année de construction avec des LLM », qui souligne la valeur des comparaisons par paires, affirmant : *« Au lieu de demander au LLM de noter une seule sortie sur une échelle de Likert, présentez-lui deux options et demandez-lui de sélectionner la meilleure. Cela tend à conduire à des résultats plus stables. »*
Évaluation des LLM
Pour évaluer les paires de questions-réponses générées, j’ai utilisé Claude Opus pour ses capacités de raisonnement avancées. Agissant comme un « juge », le LLM a comparé les deux réponses générées pour chaque question et sélectionné la meilleure option en fonction de critères tels que la directivité et la clarté. Cette approche est soutenue par des recherches approfondies (Zheng et al., 2023) montrant que les LLM peuvent effectuer des évaluations au même niveau que les évaluateurs humains.
Cette méthode réduit considérablement le temps de révision manuelle nécessaire par les SME, permettant un processus de raffinement plus évolutif et efficace. Bien que les SME restent essentiels au cours des étapes initiales pour vérifier les questions et valider les résultats du système, cette dépendance diminue avec le temps. Une fois qu’un niveau de confiance suffisant dans la performance du système est établi, le besoin de vérifications fréquentes s’amenuise, permettant aux SME de se concentrer sur des tâches de plus grande valeur.
Leçons Tirées
La capacité PDF de Claude a une limite de 100 pages, j’ai donc divisé le document original en quatre sections de 50 pages. Lorsque j’ai essayé de traiter chaque section de 50 pages en une seule demande — et que j’ai explicitement demandé au modèle de générer une paire de Q&A par page — il a tout de même manqué certaines pages. La limite de tokens n’était pas le véritable problème ; le modèle avait tendance à se concentrer sur le contenu qu’il considérait comme le plus pertinent, laissant certaines pages sous-représentées.
Pour y remédier, j’ai expérimenté le traitement du document par plus petites tranches, testant 5, 10 et 20 pages à la fois. Ces tests ont montré que les lots de 10 pages (par exemple, pages 1–10, 11–20, etc.) offraient le meilleur équilibre entre précision et efficacité. Le traitement de 10 pages par lot garantissait des résultats cohérents sur toutes les pages tout en optimisant la performance.
Un autre défi était d’associer les paires de Q&A à leur source. L’utilisation de petits numéros de page dans le pied de page d’un PDF n’était pas toujours efficace. En revanche, les titres de page ou les en-têtes clairs en haut de chaque page servaient d’ancres fiables. Ils étaient plus faciles à repérer pour le modèle et m’ont aidé à mapper avec précision chaque paire de Q&A à la bonne section.
Exemple de Sortie
Voici une page d’exemple du rapport, présentant deux tableaux avec des données numériques. La question suivante a été générée pour cette page : Comment la répartition de l’AUM a-t-elle évolué entre les différentes tailles de sociétés de RIA hybrides ?
Réponse : Les entreprises de taille intermédiaire (25 millions d’euros à moins de 100 millions d’euros) ont connu une baisse de la part de l’AUM, passant de 2,3 % à 1,0 %.
Dans le premier tableau, la colonne de 2017 montre une part de 2,3 % de l’AUM pour les entreprises de taille intermédiaire, qui diminue à 1,0 % en 2022, démontrant ainsi la capacité du LLM à synthétiser avec précision le contenu visuel et tabulaire.
Avantages
La combinaison de la mise en cache, du traitement par lots et d’un flux de travail Q&A affiné a conduit à trois avantages clés :
Mise en Cache
Dans mon expérience, le traitement d’un rapport unique sans mise en cache aurait coûté 9 euros, mais en utilisant la mise en cache, j’ai réduit ce coût à 3 euros — un économie de 3x. Selon le modèle de tarification d’Anthropic, créer un cache coûte 3,75 € / million de tokens, cependant, les lectures depuis le cache ne coûtent que 0,30 € / million de tokens. En revanche, les tokens d’entrée coûtent 3 € / million de tokens lorsque la mise en cache n’est pas utilisée.
Dans un scénario réel avec plusieurs documents, les économies deviennent encore plus significatives. Par exemple, traiter 10 000 rapports de recherche de longueur similaire sans mise en cache coûterait 90 000 euros en coûts d’entrée uniquement. Avec la mise en cache, ce coût chute à 30 000 euros, atteignant la même précision et qualité tout en économisant 60 000 €.
Traitement par Lots à Tarif Réduit
L’utilisation de l’API Batches d’Anthropic réduit de moitié les coûts de sortie, en faisant une option beaucoup moins chère pour certaines tâches. Une fois que j’ai validé les invites, j’ai exécuté un travail de lot unique pour évaluer tous les ensembles de réponses Q&A à la fois. Cette méthode s’est révélée beaucoup plus rentable que de traiter chaque paire de Q&A individuellement.
Par exemple, Claude 3 Opus coûte généralement 15 € par million de tokens de sortie. Grâce au traitement par lots, cela descend à 7,50 € par million de tokens — une réduction de 50 %. Dans mon expérience, chaque paire de Q&A générait en moyenne 100 tokens, engendrant environ 20 000 tokens de sortie pour le document. Au tarif standard, cela aurait coûté 0,30 €. Avec le traitement par lots, le coût a été réduit à 0,15 €, soulignant comment cette approche optimise les coûts pour des tâches non séquentielles comme les évaluations.
Temps Économisé pour les SME
Avec des paires de questions-réponses plus précises et riches en contexte, les experts en la matière ont passé moins de temps à fouiller dans les PDF et à clarifier des détails, et plus de temps à se concentrer sur des réflexions stratégiques. Cette approche élimine également le besoin d’embaucher du personnel supplémentaire ou d’allouer des ressources internes pour la création manuelle de jeux de données, un processus qui peut être chronophage et coûteux. En automatisant ces tâches, les entreprises réalisent des économies considérables sur les coûts de main-d’œuvre tout en rationalisant les flux de travail des SME, ce qui en fait une solution évolutive et rentable.