Un modèle de langage (LM) est un modèle mathématique permettant à une machine d'analyser statistiquement les composants d'un texte. Un modèle de langage vise fondamentalement à prédire le le symbole (lettre, syllabe, mot...) suivant une séquence, ce qui s'étend à la génération de texte humain. Il existe plusieurs types de modèles de langage qui fonctionnent sur différents principes, tels que les modèles n-grams, les réseaux de neurones récurrents (RNN) et plus récemment, les grands modèles de langage (LLM)[1].

Une bonne introduction pratique est Brilliant: how LLMs work (nécessite un compte).

Alors qu'il est populaire d'interagir avec des LLM come ChatGPT via une interface web qui se connecte sur les serveurs d'OpenAI, ou par des API distantes, des alternatives existent.

Entre autres, l'approche de faire tourner un modèle en local (sur son ordinateur ou sur un VPS par exemple) présente certains avantages.

  1. Fonctionnement hors-ligne, aucune connexion à Internet n'est nécessaire.
  2. Accès à divers modèles (Llama 2, Vicuna, Mistral, OpenOrca, etc) potentiellement via une interface unifiée.
  3. Respect de la vie privée : aucune information ou métadonnée n'est transmise à un serveur distant.
  4. Expérimentation: le contrôle de paramètres locaux offre une exploration en profondeur les modèles open-source.
  5. Coût : les modèles open-source sont gratuits et certains d'entre eux peuvent être utilisés commercialement sans restrictions.

Quelques solutions de traitements locaux de modèles de langage :

  • Ollama - Application open source permettant d'interagir localement avec des LLM
  • Jan - Alternative open-source et auto-hébergée à ChatGPT
  • LM Studio - Application propriétaire de Element Labs permettant d'intergir localement avec des LLM
  • oobabooga - Une interface web locale pour les LLM

À noter que ces clients utilisent llama.cpp, une librairie créée par Georgi Gerganov.

Quelques modèles à expérimenter :

sorrytobreakit-prompt-engineering.png

Ressources

Hugging Face - La plus grande communauté AI et de nombreuses ressources logicielles

LocalLLaMA - Subreddit sur les LLM locaux

There's an AI for that - Répertoire d'outils AI

Note

[1] Par souci de concision on confondra ici les LLM avec les mélanges d'experts (MoE).