Article de méthode

Augmentation des modèles de langage de grande taille via des plongements vectoriels pour améliorer la réactivité spécifique au domaine

DOI :

10.3791/66796

6 décembre 2024

Dans cet article

Résumé

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Dans ce protocole, la qualité de réponse du modèle de langage de base est améliorée grâce à l’augmentation avec des articles scientifiques évalués par des pairs, spécifiques au domaine, grâce à un mécanisme d’intégration de vecteurs. De plus, le code est fourni pour faciliter la comparaison des performances entre les grands modèles de langage.

Résumé

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Les grands modèles de langage (LLM) sont devenus une ressource populaire pour générer des informations pertinentes pour une requête utilisateur. De tels modèles sont créés par le biais d’un processus d’entraînement gourmand en ressources utilisant un vaste corpus statique de données textuelles. Cette nature statique entraîne des limites d’adoption dans des domaines où les connaissances évoluent rapidement, les informations exclusives et les données sensibles. Dans ce travail, des méthodes sont décrites pour augmenter les LLM à usage général, connus sous le nom de modèles de base, avec des informations spécifiques au domaine en utilisant une approche basée sur les intégrations pour incorporer des manuscrits scientifiques à jour et évalués par des pairs. Ceci est réalisé grâce à des outils open source tels que Llama-Index et des modèles accessibles au public tels que Llama-2 pour maximiser la transparence, la confidentialité et le contrôle de l’utilisateur, et la reproductibilité. Bien que les manuscrits scientifiques soient utilisés comme exemple de cas d’utilisation, cette approche peut être étendue à n’importe quelle source de données textuelles. De plus, les méthodes d’évaluation des performances du modèle suite à cette amélioration sont abordées. Ces méthodes permettent le développement rapide de systèmes de LLM pour des domaines hautement spécialisés, indépendamment de l’exhaustivité des informations contenues dans le corpus de formation.

Introduction

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Les grands modèles de langage (LLM) tels que ChatGPT d’OpenAI ou Llama de Meta AI sont rapidement devenus une ressource populaire pour générer du texte pertinent pour une invite de l’utilisateur. Fonctionnant à l’origine pour prédire les éléments lexicaux suivants dans une séquence, ces modèles ont évolué pour comprendre le contexte, coder des informations cliniques et démontrer des performances élevées sur une variété de tâches 1,2,3,4. Bien que les modèles de langage soient antérieurs de plusieurs décennies à ces capacités et à leur niveau actuel depopularité5, les progrès récents en matière d’apprentissage profond et de capacités de calcul ont rendu les LLM commerciaux pré-entraînés et de haute qualité largement accessibles aux utilisateurs via des technologies basées sur le Web et des interfaces de programmation d’applications (API)6. Cependant, il existe plusieurs limitations notables à la consommation de LLM dans ce format.

Défi 1 : Corpus d’entraînement statique
Les LLM sont entraînés sur un énorme (par exemple, deux billions de jetons dans le cas de Llama 27) mais statique de données textuelles. Il est donc difficile de produire des réponses précises à des domaines en plein développement ou à une littérature en évolution. Dans cette approche statique, les LLM nécessiteraient une formation fréquente pour se tenir au courant des dernières données, ce qui n’est ni pratique ni évolutif. De plus, les invites qui nécessitent des réponses basées sur des informations non présentes dans les données d’entraînement peuvent empêcher la génération de texte utile ou conduire à des hallucinations8. Les cas d’hallucinations ou de fabrication de faits soulèvent des préoccupations importantes quant à la fiabilité des LLM, en particulier dans les contextes où l’exactitude de l’information est essentielle9.

Défi 2 : Manque de spécificité du domaine
Les modèles pré-entraînés sont souvent créés pour un usage général, tandis que les utilisateurs peuvent avoir besoin d’un modèle spécifiquement optimisé pour les performances dans un domaine particulier. De plus, les ressources de calcul et les données nécessaires à l’entraînement d’un modèle de novo ou à la réalisation d’un réglage fin important sont prohibitives pour de nombreux utilisateurs.

Défi 3 : Manque d’intimité
Les utilisateurs qui poursuivent des applications impliquant des données sensibles ou des informations exclusives peuvent ne pas vouloir ou ne pas pouvoir utiliser certains services LLM car ils manquent d’informations sur la façon dont les données peuvent être stockées ou utilisées.

Défi 4 : Manque de stabilité garantie
Les services dotés de LLM propriétaires peuvent modifier les modèles disponibles ou modifier le comportement à tout moment, ce qui fait de la stabilité une préoccupation pour la mise en œuvre d’applications reposant sur ces services.

La génération augmentée par récupération (RAG) est une technique développée pour améliorer les performances de LLM, en particulier sur les requêtes liées à des informations en dehors du corpus d’entraînement du modèle10,11. Ces systèmes augmentent les LLM en incorporant des informations contextuelles à prendre en compte lors de la génération d’une réponse à une requête d’utilisateur. Divers travaux récents ont décrit les applications des systèmes RAG et leurs avantages potentiels 12,13,14.

L’objectif de la méthode décrite dans ce travail est de démontrer la construction d’un tel système et de fournir un cadre aux chercheurs pour expérimenter rapidement sur des LLM augmentés spécifiques à un domaine. Cette méthode s’applique aux utilisateurs qui souhaitent compléter un LLM avec une source de données textuelle externe. Plus précisément, l’un des objectifs globaux de ce protocole est de fournir un code étape par étape qui est extensible à une variété d’expériences pratiques LLM et RAG sans avoir besoin d’une expertise technique significative dans le domaine de la modélisation du langage, bien qu’une connaissance pratique de Python soit nécessaire pour appliquer cette approche sans modification. Pour maximiser le contrôle de l’utilisateur, la transparence, la portabilité et l’abordabilité des solutions, des outils open source et accessibles au public sont utilisés. Le système proposé aborde les questions précédemment énoncées de la manière suivante :

Solutions 1 et 2 : Corpus d’entraînement statique et manque de spécificité de domaine
La méthodologie fournie s’appuie sur une approche RAG, en utilisant des intégrations pour fournir des informations spécifiques au domaine qui ne sont pas incluses dans les données d’entraînement d’origine. À un niveau élevé, l’intégration de modèles transforme du texte ou d’autres données en une représentation sous la forme d’un vecteur ou d’un tableau de nombres unidimensionnel. Cette technique est bénéfique car elle convertit les informations sémantiques contenues dans le texte en une forme numérique dense. En projetant une requête utilisateur dans le même espace d’intégration, divers algorithmes peuvent être utilisés pour calculer la distance15, et donc la similarité sémantique approximative, entre la requête de l’utilisateur et des sections de documents texte. Ainsi, la création d’une base de données de ces vecteurs à partir de documents divisés en sections discrètes peut faciliter la recherche dans un nombre important de documents du texte le plus pertinent pour une requête d’utilisateur (Figure 1). Cette approche est extensible à n’importe quel document texte. Alors que d’autres approches, telles que les capacités de recherche en ligne, commencent à être mises en œuvre pour augmenter les LLM, cette approche permet aux utilisateurs de choisir des sources considérées comme de qualité suffisante pour leur cas d’utilisation.

Solution 2 : Manque d’intimité
Dans cette mise en œuvre, un environnement cloud sécurisé a été utilisé pour l’hébergement, sans qu’aucune invite utilisateur, réponse générée ou autre donnée ne quitte cet écosystème. Cependant, tout le code est écrit de manière indépendante de la plate-forme, afin de s’assurer qu’un autre fournisseur de cloud ou du matériel local peut être substitué.

Solution 3 : Manque de stabilité garantie
Cette approche utilise des bibliothèques open source et se concentre sur l’augmentation des LLM avec des poids accessibles au public, permettant un degré plus élevé de transparence, de stabilité et de versionnage, si nécessaire.

Un schéma complet du système que nous proposons est présenté à la figure 2, et des instructions détaillées sur la reproduction de ce système ou d’un système similaire sont décrites dans la section protocole. L’évaluation des performances est un élément supplémentaire à prendre en compte lors de la modification du comportement du modèle par le biais d’un réglage fin ou d’une augmentation. Dans les modèles générateurs de langage, cela représente un défi unique, car de nombreuses métriques d’apprentissage automatique traditionnelles ne sont pas applicables. Bien qu’il existe une variété de techniques16, dans cette étude, des questions à choix multiples (QCM) rédigées par des experts ont été utilisées pour évaluer la précision et comparer les performances avant et après l’augmentation ainsi qu’avec d’autres LLM populaires.

Protocole

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Dans le cas d’utilisation démontré dans cet article, le magasin de vecteurs a été généré à l’aide des directives publiées par le Chicago Consensus Working Group17. Ce groupe d’experts a été mis sur pied dans le but d’élaborer des lignes directrices pour la prise en charge des cancers du péritoine. Le domaine a été choisi car il fait partie du domaine d’expertise clinique des chercheurs. L’ensemble des articles a été consulté à partir de dépôts de revues en ligne, notamment Cancer et les Annals of Surgical Oncology. Un modèle d’intégration compact (33,4 millions de paramètres) créé par l’Académie de Pékin pour l’intelligence artificielle (BAAI, https://www.baai.ac.cn/english.html), bge-small-en, a été utilisé pour générer des intégrations à partir de documents sources. La base de données résultante a ensuite été utilisée pour augmenter les modèles de base Llama 2 et Open-AI7. Pour la commodité du lecteur, le code est mis à disposition via GitHub (https://github.com/AnaiLab/AugmentedLLM). Pour garantir la reproductibilité, il est recommandé d’utiliser les mêmes versions des bibliothèques que celles utilisées dans la liste d’exigences fournie, ainsi que la même version de Python. Des détails supplémentaires sur l’installation ou la documentation concernant les outils utilisés dans les méthodes suivantes peuvent être trouvés sur les sites officiels des fournisseurs pour Python (https://www.python.org), git (https://git-scm.com), Llama-Index (https://llamaindex.ai) et Chroma (https://trychroma.com).

1. Prérequis : Examiner le code et installer les bibliothèques requises

  1. Vérifiez que git, python et pip sont installés.
    1. Dans un terminal, exécutez les commandes suivantes pour vérifier l’installation :
      git --version
      python3 --version
      pip3 --version
  2. Vérifiez le code et les exigences d’installation.
    1. Dans un terminal, exécutez les commandes suivantes :
      git clone https://github.com/AnaiLab/AugmentedLLM.git
      cd ./AugmentedLLM/

      pip3 install -r requirements.txt

2. Création d’une base de données vectorielle avec Llama-Index

  1. Convertir les formats de fichiers RTF (requis uniquement si les fichiers sont au format RTF).
    1. Modifiez le fichier intitulé config.py, en remplaçant les chemins d’accès aux fichiers dans le code suivant par l’emplacement des articles RTF à convertir et l’emplacement dans lequel les fichiers texte brut doivent être écrits en tapant les commandes suivantes. Enregistrez le fichier.
      rtf_file_dir = './articles_rtf/'
      converted_file_dir = './articles_converted/'
    2. Dans un terminal, dans le même répertoire, exécutez le code pour générer des versions texte brut des fichiers RTF en exécutant la commande suivante :
      python3 ./convert_rtf.py
  2. Créez et enregistrez la base de données vectorielle.
    1. Modifiez le fichier config.py en remplaçant la valeur de la variable suivante par le chemin d’accès au fichier du dossier contenant les documents avec lesquels le LLM doit être augmenté ; Enregistrez le fichier.
      article_dir = './articles/'
    2. Dans un terminal, dans le même répertoire, exécutez le code avec la commande suivante pour créer et conserver la base de données. Vérifiez que la base de données est maintenant enregistrée dans le dossier vector_db.
      python3 ./build_index.py

3. Augmentation d’un modèle de lama avec la base de données vectorielle générée dans la section 2

  1. Instancier localement un LLM personnalisé (facultatif)
    REMARQUE : Cette étape n’est requise que si vous souhaitez utiliser un modèle autre que le Llama-2-7B par défaut. Si vous souhaitez utiliser le modèle par défaut, passez à l’étape 3.2.
    1. (À l’aide d’un LLM personnalisé) Spécifiez un LLM à augmenter en modifiant run_augmented_llm.py et en passant un objet LLM llama-index dans le constructeur en tant que paramètre llm dans les lignes de code suivantes plutôt que None.
      augmentedLLM = AugmentedLLM(vector_store, llm=Aucun)
  2. Requête LLM augmentée
    1. Exécutez la commande suivante dans le terminal :
      python3 ./run_augmented_llm.py
    2. Exécutez des requêtes utilisateur pour obtenir une réponse augmentée des données de l’ensemble des manuscrits (Figure 3 et Figure 4). Appuyez sur CTRL + C pour quitter lorsque vous avez terminé.

4. Comparaison programmatique des LLM alternatifs

  1. Créez des QCM.
    1. Éditez le fichier questions.py, en prenant note du format des exemples. Ajoutez des questions suivant un format similaire. Enregistrez le fichier.
  2. Connectez-vous à GPT-3.5, GPT-4, OpenChat ou à d’autres modèles de comparaison via l’API.
    1. Modifiez le fichier config.py, en ajoutant la clé API pour OpenAI ou Huggingface si l’objectif est de comparer les modèles de l’un ou l’autre fournisseur. Enregistrez le fichier.
      huggingface_key = ''
      openai_key = ''
    2. Modifiez le fichier compare_llms.py et choisissez l’ensemble de modèles à tester en supprimant les commentaires (en supprimant les caractères '# ' au début de cette ligne) les modèles à comparer.
      REMARQUE : Certains comparateurs nécessitent une clé API comme défini à l’étape 4.2.1. De plus, modifiez le paramètre output_dir pour changer l’emplacement de stockage de la sortie LLM si vous le souhaitez ; Sinon, une valeur par défaut sera utilisée.
      output_dir = './llm_responses/'
    3. Dans un terminal, exécutez le code avec la commande suivante. Après l’exécution, affichez les réponses du modèle dans le dossier spécifié à l’étape 4.2.2 pour la notation ou une autre révision.
      python3 ./compare_llms.py
  3. (Facultatif) Expérimentez la notation automatisée des réponses aux QCM. L’exemple de code utilise la bibliothèque LMQL pour contraindre la sortie LLM dans un format attendu.
    1. Ouvrez le fichier automated_comparison.py et, de la même manière qu’à l’étape 4.2.2, supprimez les commentaires sur les modèles à inclure, modifiez la variable output_dir ou personnalisez-les d’une autre manière. Notez que la sortie du modèle sera toujours enregistrée de la même manière. Enregistrez le fichier.
    2. Exécutez le code de l’étape 4.3.1 en exécutant la commande suivante dans un terminal :
      python3 ./automated_comparison.py

Résultats

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Un ensemble de 22 publications des directives de gestion du Chicago Consensus Working Group a été utilisé pour augmenter le modèle de base Llama-7b17. Les documents ont été convertis en un index vectoriel à l’aide de l’outil Llama-Index pour générer Llama-2-7b-CCWG-Embed. Les modèles OpenAI populaires tels que GPT-3.5 et GPT-4 ont également été augmentés de la même manière pour produire des modèles GPT-XX-CCWG-Embed. Au total, 20 questions à choix multiples (QCM) ont été élaborées pour évaluer les connaissances liées à la prise en charge de diverses tumeurs malignes de la surface péritonéale. Les QCM ont été créés par un oncologue chirurgical certifié pour tester le niveau de connaissances attendu d’un boursier en oncologie chirurgicale. Llama-2-7b-CCWG-Embed a obtenu des résultats nettement meilleurs que le modèle de base (voir tableau 1), tout comme les modèles OpenAI augmentés. Ceci est considéré comme un résultat positif pour cette méthode, car les performances du modèle ont été améliorées avec l’augmentation par rapport à la ligne de base.

figure-results-1
Figure 1 : Schéma de génération d’une base de données vectorielle à partir d’articles universitaires. Veuillez cliquer ici pour voir une version plus grande de cette figure.

figure-results-2
Figure 2 : Schéma général du système pour le LLM augmenté. Veuillez cliquer ici pour voir une version plus grande de cette figure.

figure-results-3
Figure 3 : Modèle Llama-2 augmenté fonctionnant dans un terminal Linux. Veuillez cliquer ici pour voir une version agrandie de cette figure.

figure-results-4
Figure 4 : Résultat de la requête du modèle Llama-2 augmenté. Veuillez cliquer ici pour voir une version plus grande de cette figure.

LLMScore (% correct)
Lama-2-7b-chat-hf65%
Llama-2-7B-CCWG-Embed75%
Par Openchat-3.5-01061865%
Mistral-7B-v0.11970%
GPT-3.575%
GPT-3.5-CCWG-Embed85%
GPT-485%
GPT-4-CCWG-Embed90%

Tableau 1 : Scores (pourcentage de correction) de divers LLM sur une série de 20 questions relatives à la gestion de la malignité péritonéale.

Discussion

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Les méthodes fournies ici visent à faciliter la recherche d’applications spécifiques au domaine des LLM sans avoir besoin d’une formation de novo ou d’un ajustement approfondi. À mesure que les LLM deviennent un domaine d’intérêt majeur pour la recherche, les approches visant à accroître les bases de connaissances et à améliorer la précision des réponses deviendront de plus en plus importantes 18,19,20,21. Comme le démontrent les résultats fournis, le protocole décrit offre une amélioration des performances sur des questions spécifiques à un domaine par rapport au même LLM sans augmentation et se rapproche des performances de modèles plus complexes tels que les modèles GPT OpenAI. Étant donné que les LLM peuvent nécessiter d’énormes ressources de calcul pour générer des réponses22,23, l’augmentation d’un modèle plus simple peut ouvrir la voie à la mise en œuvre dans des cas d’utilisation à ressources limitées. En outre, le système RAG a également produit des avantages en augmentant des modèles très complexes tels que ceux fournis par OpenAI. Bien que les résultats présentés soient propres à la prise en charge du cancer du péritoné, des études récentes sur les systèmes RAG avec une variété de domaines et d’échelles de sources de données ont été produites, indiquant la large applicabilité de ces systèmes 21,24,25,26. Cependant, comme la qualité des réponses est étroitement liée aux données textuelles utilisées pour l’augmentation, il est essentiel que les utilisateurs examinent attentivement quelles sources sont optimales pour leur domaine particulier et l’application souhaitée. Cette considération est particulièrement importante dans des domaines tels que les soins de santé, qui ont fait l’objet d’un intérêt particulier dans les études liées à la LLM. L’utilisation de la LLM pour le diagnostic27,28, l’appariement d’essais cliniques29,30 et de nombreuses autres applications sont à l’étude, et nécessitent des ressources textuelles validées et fiables plutôt que de s’appuyer sur des corpus de formation inconnus.

La performance a été mesurée par le pourcentage de QCM corrects rédigés par un expert en cancers du péritoine et leur prise en charge clinique. Les réponses ont été classées comme correctes ou incorrectes par un examen humain ; cependant, pour minimiser les tâches répétitives pour les chercheurs, un code de base pour commencer à approcher une comparaison plus automatisée des performances entre les LLM est fourni.

L’un des principaux avantages de ce protocole est le code fourni pour accéder par programmation à une variété de LLM. Auparavant, pour évaluer les performances sur les QCM, les utilisateurs ne disposant pas des capacités techniques requises pouvaient s’appuyer sur des tests manuels répétitifs via une interface Web. Le code fourni fournit des classes de base pour s’interfacer avec plusieurs LLM populaires, ainsi que des exemples de la façon d’exécuter le code. L’objectif de la fourniture de ces outils est de permettre à un plus grand nombre de chercheurs de s’orienter vers l’automatisation des flux de travail qui évaluent les réponses à une question dans une variété de LLM, améliorant ainsi la capacité de mener des études comparatives.

De plus, les méthodes décrites sont conçues pour mettre l’accent sur la flexibilité et l’extensibilité. Bien que le code puisse être utilisé tel quel, il est écrit dans le but de l’adapter à des cas d’utilisation spécifiques si nécessaire, tels que l’utilisation de différents LLM et l’intégration de modèles à des fins d’augmentation ou de comparaison. À mesure que le paysage LLM évolue rapidement, cette extensibilité deviendra de plus en plus importante pour répondre aux besoins variés des utilisateurs dans différents domaines. De plus, la bibliothèque Llama-Index fournit un nombre important de fonctionnalités non utilisées dans les méthodes démontrées, ce qui peut donner aux utilisateurs des options supplémentaires lors de la création de systèmes similaires. Ceux-ci peuvent être trouvés dans la documentation officielle de Llama-Index.

Les lecteurs doivent également examiner attentivement les méthodes d’évaluation qui sont optimales pour leur cas d’utilisation. Bien que les QCM aient gagné en popularité pour les comparaisons LLM en raison de leur nature facilement quantifiable31,32, il faut faire preuve de prudence avant de les considérer comme une mesure de performance complète pour les systèmes génératifs. La littérature récente a mis en œuvre un large éventail d’évaluations, y compris des approches qualitatives, l’examen humain, l’évaluation holistique des modèles de langage de Stanford (HELM)33 et des mesures standard de traitement du langage naturel telles que l’évaluation bilingue Understudy (BLEU), l’évaluation de la compréhension générale du langage (GLUE), ROUGE, la perplexité et le score F1 34,35,36,37,38,39.

Il existe des limites à ces méthodes, comme indiqué ici. Par exemple, bien que des interfaces aient été mises en œuvre pour plusieurs fournisseurs de LLM de premier plan, compte tenu de la nature en évolution rapide de ce domaine et de la variété des cas d’utilisation, cette mise en œuvre peut ne pas être exhaustive. Le code, cependant, a été conçu dans cet esprit, comme nous l’avons vu précédemment. De plus, bien que le code de base pour passer à la notation automatisée ait été fourni, il est possible de l’étendre à l’utilisation d’autres outils de notation des réponses tels que HELM ou BLEU. De plus, l’utilisation d’outils supplémentaires pour contraindre la sortie selon des grammaires prédéfinies, tels que le langage de requête de modèle de langage (LMQL), peut être utilisée pour développer ce travail et accroître l’automatisation des études LLM comparatives. De plus, compte tenu de la grande variété de cas d’utilisation potentiels, des études supplémentaires sur l’effet des systèmes RAG sur les performances générales hors domaine sont nécessaires pour caractériser tout compromis de performance. Enfin, d’autres méthodes pour améliorer la fiabilité et l’évaluation des réponses LLM doivent continuer à être étudiées.

Notez que pour des raisons techniques, python 3.10 ou supérieur est requis. Les invites shell sont écrites pour bash, zsh ou d’autres terminaux de type UNIX. Les commandes peuvent être exécutées (appelées « exécution de la commande » dans le protocole) en tapant simplement le texte suivi de la touche retour. Pour chaque étape du protocole, un utilisateur peut souhaiter examiner le code du fichier en cours d’exécution afin d’avoir une compréhension plus complète des mécanismes qui sous-tendent le flux de travail.

Déclarations de divulgation

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Les auteurs n’ont aucun conflit d’intérêts à déclarer.

Remerciements

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,

Ce travail a été facilité par plusieurs bibliothèques open-source, notamment llama-index (https://www.llamaindex.ai/), ChromaDB (https://www.trychroma.com/) et LMQL (https://lmql.ai/).

Matériaux

Liste des matériaux utilisés dans cet article
NomEntrepriseNuméro de catalogueCommentaires
pip3 version 22.0.2  ;
Version 3.10.12
de Python

Références

Loading...
$$\rightleftharpoonup{xx}$$ $$\longleftharp{xx}$$, $$\longrightharp{xx}$$,
  1. Singhal, K., et al. Large language models encode clinical knowledge. Nature. 620 (7972), 172-180 (2023).
  2. Gilson, A., et al. How does ChatGPT perform on the United States medical licensing examination? The implications of large language models for medical education and knowledge assessment. JMIR Med Educ. 9 (1), e45312(2023).
  3. Guerra, G. A., et al. GPT-4 artificial intelligence model outperforms ChatGPT, medical students, and neurosurgery residents on neurosurgery written board-like questions. World Neurosurg. 179, e160-e165 (2023).
  4. Terwiesch, C. Would Chat GPT3 get a Wharton MBA? A prediction based on its performance in the Operations Management course. , https://mackinstitute.wharton.upenn.edu/wp-content/uploads/2023/01/Christian-Terwiesch-Chat-GTP.pdf (2023).
  5. Weizenbaum, J. ELIZA-a computer program for the study of natural language communication between man and machine. Communications of the ACM. 9 (1), 36-45 (1966).
  6. Wu, T., et al. A brief overview of ChatGPT: The history, status quo and potential future development. IEEE/CAA Journal of Automatica Sinica. 10 (5), 1122-1136 (2023).
  7. Touvron, H., et al. Llama 2: Open foundation and fine-tuned chat models. arXiv [cs.CL]. , http://arxiv.org/abs/2307.09288 (2023).
  8. Huang, L., et al. A survey on hallucination in large language models: Principles, taxonomy, challenges, and open questions. arXiv [cs.CL]. , http://arxiv.org/abs/2311.05232 (2023).
  9. Thirunavukarasu, A. J., et al. Large language models in medicine. Nature Med. 29 (8), 1930-1940 (2023).
  10. Lewis, P., et al. Retrieval-augmented generation for knowledge-intensive NLP tasks. arXiv [cs.CL]. , http://arxiv.org/abs/2005.11401 (2020).
  11. Li, J., Yuan, Y., Zhang, Z. Enhancing LLM factual accuracy with RAG to counter hallucinations: A case study on domain-specific queries in private knowledge-bases. arXiv [cs.CL]. , http://arxiv.org/abs/2403.10446 (2024).
  12. Zhang, P., Xiao, S., Liu, Z., Dou, Z., Nie, J. -Y. Retrieve anything to augment large language models. arXiv [cs.IR]. , http://arxiv.org/abs/2310.07554 (2023).
  13. Ling, C., et al. Domain specialization as the key to make large language models disruptive: A comprehensive survey. arXiv [cs.CL]. , http://arxiv.org/abs/2305.18703 (2023).
  14. Ram, O., et al. In-Context retrieval-augmented language models. Trans Assoc Comput Linguist. 11, 1316-1331 (2023).
  15. Cormode, G. Sequence distance embeddings. , The University of Warwick. https://wrap.warwick.ac.uk/61310/7/WRAP_THESIS_Cormode_2003.pdf (2003).
  16. Guo, Z., et al. Evaluating large language models: A comprehensive survey. arXiv [cs.CL]. , http://arxiv.org/abs/2310.19736 (2023).
  17. Chicago Consensus Working Group. The Chicago Consensus Guidelines for peritoneal surface malignancies: Introduction. Cancer. 126 (11), 2510-2512 (2020).
  18. Wang, G., et al. OpenChat: Advancing open-source language models with mixed-quality data. arXiv [cs.CL]. , http://arxiv.org/abs/2309.11235 (2023).
  19. Jiang, A. Q., et al. Mistral 7B. arXiv [cs.CL]. , http://arxiv.org/abs/2310.06825 (2023).
  20. Megahed, F. M., et al. AI and the future of work in statistical quality control: Insights from a first attempt to augmenting ChatGPT with an SQC knowledge base (ChatSQC). arXiv [cs.HC]. , http://arxiv.org/abs/2308.13550 (2023).
  21. Wang, Y., Ma, X., Chen, W. Augmenting black-box LLMs with medical textbooks for clinical question answering. arXiv [cs.CL]. , http://arxiv.org/abs/2309.02233 (2023).
  22. Dodge, J., et al. Measuring the carbon intensity of AI in cloud instances. FACCT 2022. , (2022).
  23. Samsi, S., et al. From words to watts: Benchmarking the energy costs of large language model inference. arXiv [cs.CL]. , http://arxiv.org/abs/2310.03003 (2023).
  24. Khene, Z. -E., Bigot, P., Mathieu, R., Rouprêt, M., Bensalah, K. Development of a personalized chat model based on the European association of urology oncology guidelines: Harnessing the power of generative artificial intelligence in clinical practice. Eur Urol Oncol. 7 (1), 160-162 (2024).
  25. Kresevic, S., et al. Optimization of hepatological clinical guidelines interpretation by large language models: a retrieval augmented generation-based framework. NPJ Digit Med. 7 (1), 102(2024).
  26. Ge, J., et al. Development of a liver disease-specific large language model chat interface using retrieval augmented generation. medRxiv. , (2023).
  27. Rule-augmented artificial intelligence-empowered systems for medical diagnosis using large language models. Panagoulias, D. P., et al. 2023 IEEE 35th International Conference on Tools with Artificial Intelligence (ICTAI), , 70-77 (2023).
  28. Panagoulias, D. P., et al. Augmenting large language models with rules for enhanced domain-specific interactions: The case of medical diagnosis. Electronics. 13 (2), 320(2024).
  29. Jin, Q., et al. Matching patients to clinical trials with large language models. arXiv [cs.CL]. , http://arxiv.org/abs/2307.15051 (2023).
  30. Gupta, S. K., et al. PRISM: Patient records interpretation for semantic clinical trial matching using large language models. arXiv [cs.CL]. , http://arxiv.org/abs/2404.15549 (2024).
  31. Hendrycks, D., et al. Measuring massive multitask language understanding. arXiv [cs.CY]. , http://arxiv.org/abs/2009.03300 (2020).
  32. Lin, S., Hilton, J., Evans, O. TruthfulQA: Measuring how models mimic human falsehoods. arXiv [cs.CL]. , http://arxiv.org/abs/2109.07958 (2021).
  33. Bommasani, R., Liang, P., Lee, T. Holistic evaluation of language models. Ann N Y Acad Sci. 1525 (1), 140-146 (2023).
  34. Banerjee, D., Singh, P., Avadhanam, A., Srivastava, S. Benchmarking LLM powered Chatbots: Methods and Metrics. arXiv [cs.CL]. , http://arxiv.org/abs/2308.04624 (2023).
  35. Papineni, K., Roukos, S., Ward, T., Zhu, W. -J. Bleu. Proceedings of the 40th Annual Meeting on Association for Computational Linguistics - ACL '02. , (2001).
  36. Wang, A., Singh, A., Michael, J., Hill, F., Levy, O., Bowman, S. R. Glue: A multi-task benchmark and analysis platform for natural language understanding. , http://arxiv.org/abs/1804.07461 (2019).
  37. Johnson, D., et al. Assessing the accuracy and reliability of AI-generated medical responses: An evaluation of the chat-GPT model. Res Sq. , (2023).
  38. Lin, C. -Y. ROUGE: A package for automatic evaluation of summaries. Text Summarization Branches Out. , 74-81 (2004).
  39. Chen, S., et al. Evaluating the ChatGPT family of models for biomedical reasoning and classification. J Am Med Inform Assoc. 31 (4), 940-948 (2024).

Réimpressions et autorisations

Demander l’autorisation de réutiliser le texte ou les figures de cet article JoVE

Demander une autorisation

Mots-clés

Large Language ModelsVector EmbeddingsDomain Specific AugmentationLlama IndexScientific ManuscriptsModel BenchmarkingOpen Source ToolsVector DatabaseModel EvaluationFoundation Models

Articles connexes