Comment des chercheurs de Stanford ont créé un ChatGPT pour 600 dollars
Il y a six mois, seuls les chercheurs et les spécialistes suivaient le développement de grands modèles de langage (ou LLM pour Large Language Model en anglais).
Une équipe de chercheurs de Stanford est parvenue à créer un LLM concurrent de celui utilisé par ChatGPT pour 600 dollars et ses performances impressionnantes montrent à quel point ce secteur tout entier, pourraient rapidement se vulgariser.
Cette équipe de chercheurs de Stanford a commencé par utiliser le modèle de langage LLaMA 7B de Meta (en Open Source), le plus petit et le moins cher des modèles LLaMA disponibles. Pré-entraîné sur 1000 milliards de "tokens", ce petit modèle de langage dispose d'une grande capacité de calcul- mais il est significativement en retard sur ChatGPT ; le principal coût, et en fait le principal avantage concurrentiel, des modèles GPT provient en grande partie de l'énorme quantité de temps et de temps homme qu'OpenAI a mis dans le post-training. C'est une chose d'avoir ingurgité un milliard de livres, mais c'en est une autre d'avoir digéré un grand nombre de combinaisons de questions-réponses qui apprennent au LLM à repondre à des questions.
Le modèle LLaMA 7B étant opérationnel, l'équipe de Stanford a demandé à GPT de s'inspirer de 175 paires d'instructions/sorties (questions/réponses) écrites par des humains et de commencer à en générer d'autres du même style et du même format, 20 à la fois. Cette opération a été automatisée en recourant à l'une des API d'OpenAI (à laquelle n'importe client lambda d'OpenAI peut accéder) et rapidement, l'équipe a pu récupéré 52 000 exemples de couples questions/réponses à utiliser pour le post-entraînement du modèle LLaMA. La génération de ces données d'entraînement (les 52 000 couples questions/réponses) a été facturé 500 dollars par OpenAI comme à n'importe quel autre client.
C'est curieux, mais les chercheurs/étudiants de Stanford a utilisé le GPT d'OpenAI pour créer un concurrent.
L'équipe a ensuite utilisé ces données pour affiner le modèle LLaMA - un processus qui a pris environ trois heures sur huit ordinateurs A100 de 80 Go dans le cloud. Cette opération dite de "finetuning" a coûté moins de 100 dollars.
L'équipe de chercheurs a ensuite mis en compétition le modèle obtenu, avec ChatGPT sur quelques centaines de questions. Ils ont nommé leur modèle Alpaca (un Alpaca est une espèce voisine du Lama). Les questions de tests pouvaient être de la rédaction d'e-mails, de posts pour les médias sociaux et des outils de productivité. Alpaca a mieux répondu que GPT dans 90 de ces tests, contre 89 pour GPT.
L'équipe derrière Alpaca affirme avoir été surprise par ce résultat étant donné la petite taille du modèle et la faible quantité de données utilisées pour affiner le modèle. "Outre l'exploitation de cet ensemble d'évaluations statiques, nous avons également testé le modèle Alpaca de manière interactive (plusieurs questions d'affilé) et nous avons constaté qu'Alpaca se comporte souvent de manière similaire au modèle text-davinci-003 [GPT-3.5] (NDLR: c'est le modèle le plus souvent utilisé, parce que le plus efficace, pour faire générer des articles de bonne qualité par les entreprises qui utilisent GPT pour rédiger articles, fiches produits, rapports ou encore pour mettre en place des chatbots).
Les chercheurs reconnaissent que les tests qu'ils ont réalisés ne sont pas nécessairement représentatifs de tout ce qui peut être demandé à ChatGPT (et que leur modèle est donc, peut-être moins efficace que ce que suggère les résultats des tests qu'ils ont réalisé).
Ils ajoutent qu'ils aurait probablement pu créer le modèle Alpaca pour encore moins cher s'ils avait cherché à optimiser le processus. Ils indiquent aussi qu'une entreprise qui souhaitait créer un ChatGPT peut utiliser la version 4.0 de GPT qui est plus performante que GPT3.5 et la coupler à des modèles LLaMA plus puissants et enfin, utiliser plus de 52 000 questions pour rendre le modèle encore plus performant. D'ailleurs, un autre groupe affirme avoir réussi à éliminer le coût du cloud (qui a coûté 100 dollars), en publiant sur Github davantage de code pouvant fonctionner sur un Raspberry Pi, et à achever le processus de formation en cinq heures avec une seule carte graphique nVidia RTX 4090 haut de gamme.
L'équipe de Stanford a publié sur Github les 52 000 questions utilisées dans cette recherche, ainsi que le code permettant d'en générer d'autres et le code utilisé pour affiner le modèle LLaMA. L'équipe note qu'elle n'a pas sécuriser le modèle pour Alpaca pour qu'il soit sûr et inoffensif.
Cet exemple tend à démontrer que la technologie des LLM va probablement se vulgariser et ne plus être l'apanage de quelques start-ups ou GAFAM de la Silicon Valley.
Techniquement, il faudra qu'elle résolve des problèmes de droit: Meta, le "propriétaire" des modèles LLaMA indique qu'elle ne permet aux chercheurs universitaires d'utiliser LLaMA que sous des licences non commerciales à ce stade. Mais le modèle LLaMA entier a été divulgué sur 4chan une semaine après l'annonce de Meta.
Par ailleurs, les conditions d'utilisation d'OpenAI stipulent qu'il n'est pas autorisé d'utiliser les résultats des services d'OpenAI pour développer des modèles qui concurrencent OpenAI.
Ressources
Cet article est une adaptation libre d'un texte publié sur Newsatlas.
Les 52 000 questions d'entraînement
Le code pour reproduire le modèle Alpaca
Page de Stanford sur le projet
Le model Alpaca expliqué en 10 mn (vidéo)
Présentation du modèle LLaM sur Facebook