Regardez la vidéo :
Nous pouvons adapter les grands modèles de langage pour qu’ils fassent tout ce que nous voulons. Un modèle peut devenir votre assistant personnel, répondre à tous vos courriels ou agir comme votre futur avocat. Vous pouvez lui faire faire tout ce que vous voulez. Mais comment y arriver ? Avec le fine-tuning ! Voyons ce que c’est, comment cela fonctionne et, surtout, comment le faire très facilement avec une excellente entreprise avec laquelle j’ai travaillé : Gradient, une plateforme incroyable pour les gens comme vous et moi qui souhaitent construire et déployer des modèles d’IA.
Le fine-tuning est extrêmement important pour presque toutes les IA, mais surtout pour les grands modèles de langage. En gros, il consiste à prendre un modèle général très puissant, comme GPT-4, et à en faire un expert d’une tâche précise. D’une certaine façon, c’est comme aller au secondaire, puis à l’université, faire une maîtrise et un doctorat. Vous commencez avec des connaissances très générales, construisez une bonne base, puis les affinez de façon itérative sur un cas d’utilisation de plus en plus restreint, jusqu’à devenir L’expert.
Je n’ai pas besoin de vous convaincre de la puissance actuelle de GPT-4 et des autres grands modèles de langage, mais ils sont loin d’être parfaits pour les tâches spécialisées. L’une des meilleures façons de transformer un modèle en expert consiste à faire son fine-tuning avec des connaissances spécialisées. Cela signifie réentraîner certaines parties du modèle sur la tâche exacte que nous voulons lui faire accomplir, ce qui coûte beaucoup moins cher que de l’entraîner à partir de zéro.
Par exemple, GPT-4 possède déjà d’assez bonnes connaissances médicales grâce à Internet, mais il est loin d’être parfait. C’est comme poser une question sur un bouton étrange que vous avez et cliquer sur le premier lien qui apparaît. Non, ce n’est probablement pas un cancer, malgré ce qu’il affirme.
Vous pourriez plutôt rassembler une tonne de livres et de dictionnaires médicaux, puis les fournir à GPT-4 afin qu’il apprenne à partir d’eux, et seulement d’eux, passant ainsi de généraliste à spécialiste. Il perdra certaines capacités générales, comme n’importe quel génie ou expert d’un domaine. L’énorme quantité de temps investie dans un domaine précis se compense sûrement ailleurs. Cela dit, si vous voulez le meilleur dans un domaine, c’est un sacrifice nécessaire.
Un autre exemple clair de fine-tuning serait la création d’un assistant financier. Dans ce cas, vous voudriez l’entraîner sur beaucoup de documents financiers, d’actualités, de tendances, d’information sur le marché boursier, etc. Poser directement une question à GPT-4 reviendrait à la poser à un ami qui comprend le concept, mais qui vivait sous une roche et n’a pas suivi les plus récents développements. Imaginez, il ne sait même pas que ChatGPT est sorti et n’a pas regardé les actions ni les marchés depuis deux ans. Comment pourrait-il vous aider à investir ?!
Un dernier exemple avec lequel vous avez certainement déjà interagi est celui des chatbots de soutien à la clientèle.
Imaginez que vous dirigez une grande équipe de soutien à la clientèle et souhaitez améliorer son efficacité et son temps de réponse. Vous pouvez faire le fine-tuning d’un modèle de langage avec les demandes historiques des clients et les réponses des agents de soutien. Le modèle devient alors un chatbot capable de traiter les demandes courantes. Quand un client demande de l’aide, le chatbot peut immédiatement fournir de l’information exacte ou transférer les problèmes plus complexes à des agents humains. Le fine-tuning améliore la satisfaction des clients et simplifie les opérations de soutien.
En bref, le fine-tuning peut servir chaque fois que vous avez besoin d’un expert propre à un domaine. Vous prenez le meilleur modèle possible, comme GPT-4, ou un modèle open source comme Llama 2, puis vous faites son fine-tuning pour qu’il devienne professeur d’histoire, expert financier, expert médical ou même votre coach personnel en nutrition et en conditionnement physique, simplement en lui fournissant davantage d’exemples ou de documentation.
[
Le What’s AI Weekly de Louis-François Bouchard | Substack
Vous connaissez aussi certainement les hallucinations, qui surviennent lorsqu’un modèle vous donne de fausses informations parce qu’il suppose les connaître, alors qu’il invente en fait des faits de toutes pièces. Cela se produit parce que le modèle a été entraîné à donner une réponse, mais pas suffisamment à dire « Je ne sais pas ». Eh bien, le fine-tuning aide également sur ce point puisqu’il lui donne littéralement plus de connaissances ! Malheureusement, il n’élimine pas complètement les hallucinations. Si c’est votre principal problème, vous pourriez compléter votre modèle fine-tuné avec la génération augmentée par récupération, qui fera l’objet d’un prochain article. Suivez-moi et restez à l’affût ! J’ai hâte de vous présenter un projet vraiment intéressant sur lequel je travaille avec notre équipe de Towards AI en utilisant ce système.
C’est encore la meilleure façon de transformer votre IA diplômée du secondaire en experte d’un nouveau domaine, peu importe lequel. Elle adaptera le modèle à n’importe quel nouveau contexte difficile si vous lui fournissez assez d’information. De plus, c’est super facile à faire, surtout avec des produits comme Gradient, au lieu de tout programmer vous-même. Passons au moment que vous attendiez. Voici un exemple pratique qui montre comment faire le fine-tuning de n’importe quel modèle open source, dans ce cas le puissant modèle Llama-2, afin de modifier sa base de connaissances actuelle et de l’adapter à vos besoins.
Petite démonstration avec Gradient
Une fois inscrit à la plateforme Gradient, il est super facile de commencer le fine-tuning.
Ici, je vais utiliser l’interface en ligne de commande pour voir le processus de fine-tuning en direct, mais Gradient propose aussi des SDKs Python et JavaScript si vous n’aimez pas le terminal classique des programmeurs.
Regardons les modèles disponibles pour le fine-tuning. Vous pouvez voir bloom-560m, llama2–7b et nous-hermes-2, une version non censurée de llama2.

Utilisons llama2. Comme je l’ai dit, c’est pas mal le meilleur LLM open source à ce jour.
Nous devons simplement créer une nouvelle instance privée de llama2 avec la commande « gradient model create », puis y copier l’identifiant du modèle llama2 que vous voyez ici.

Pour montrer ce que fait le fine-tuning, posons la même question au modèle avant et après.
Comme exemple simple, demandons-lui : « Qu’est-ce que Gradient ? » Il s’agit simplement de Llama2 tel quel, alors il répond évidemment : « Gradient est un terme utilisé en apprentissage automatique et dans les réseaux neuronaux pour décrire le taux de variation d’une fonction par rapport à l’une de ses entrées. » Une chose que vous savez déjà si vous suivez assidûment la chaîne.

Cette réponse est donc exacte selon les connaissances générales. Mais disons que nous voulons lui apprendre ce qu’est Gradient, la plateforme que j’utilise en ce moment. Nous devons lui fournir davantage de connaissances propres à ce domaine. En faire un expert de cette plateforme. Pour y arriver, nous devons faire son fine-tuning avec, par exemple, la documentation de Gradient.
Nous pouvons facilement le faire avec une seule commande, « gradient model fine-tune », et lui fournir l’identifiant de l’instance privée du modèle que nous venons de créer.

Le fichier JSONL que nous lui fournissons est enregistré localement sur mon ordinateur portable et contient des extraits de la documentation de Gradient.
Maintenant que le fine-tuning est terminé, réessayons et posons-lui la même question : « Qu’est-ce que Gradient ? »… Et voilà ! Il a appris une nouvelle définition de Gradient !

Bien sûr, il s’agit d’un exemple super simple avec la plateforme Gradient.ai, mais vous pouvez faire le fine-tuning d’un modèle sur n’importe quel type de données. Il apprendra différents concepts et deviendra meilleur pour accomplir des tâches propres à ce domaine. Vous pouvez évidemment aussi tout programmer vous-même, et je publierai bientôt une vidéo sur ma chaîne pour vous montrer comment faire !
J’espère que vous avez aimé cet article sur le fine-tuning. Si c’est le cas, dites-moi si vous aimeriez que j’aborde d’autres techniques ou termes du domaine dans un format semblable.
Merci d’avoir regardé !
FAQ
Qu’est-ce que le fine-tuning d’un LLM ?
Le fine-tuning poursuit l’entraînement d’un modèle sur des exemples ciblés afin de mieux adapter son comportement à un domaine ou à une tâche.
Quand le fine-tuning est-il plus utile que le prompting ?
Il aide lorsque des exemples répétés doivent modifier le style, le format, les connaissances ou le comportement au-delà de ce qu’un prompt peut contrôler de manière fiable.
Le fine-tuning peut-il apprendre à un modèle à reconnaître son incertitude ?
Des exemples qui récompensent le fait de s’abstenir au bon moment peuvent rendre une réponse comme « Je ne sais pas » plus probable.
Que doit contenir un jeu de données de fine-tuning ?
Utilisez des exemples exacts et représentatifs du comportement souhaité, ainsi que des cas difficiles que le modèle actuel gère mal.
Le fine-tuning élimine-t-il le besoin d’évaluer le modèle ?
Non. Il modifie le comportement du modèle et crée donc une nouvelle version qui doit être testée pour mesurer les gains et les régressions.

