LLM: affinage, distillation et ingénierie des requêtes

L'unité précédente a décrit les LLM à usage général, avec diverses appelé:

  • LLM de base
  • LLM de base
  • LLM pré-entraînés

Un LLM de fondation est entraîné sur une quantité suffisante de langage naturel pour "connaître" un jeu d'enfant sur la grammaire, les mots et les expressions idiomatiques. Un modèle de langage de fondation peut générer des phrases utiles sur les sujets sur lesquels il est entraîné. De plus, un LLM de fondation peut effectuer certaines tâches traditionnellement appelées « créatif », comme écrire de la poésie. Toutefois, un LLM de fondation, un modèle n'est pas une solution aux autres types de problèmes de ML courants, comme la régression ou la classification. Pour ces cas d'utilisation, un LLM de fondation peut servir en tant que plate-forme plutôt qu'en tant que solution ;

Transformer un LLM de base en une solution qui répond aux exigences nécessite un processus appelé ajustement. Un processus secondaire appelé distillation génère une version plus petite (avec moins de paramètres) de la version affinée du modèle de ML.

Affinage

Des études ont montré que les capacités de reconnaissance les modèles de langage sont si puissants qu'ils nécessitent parfois une petite formation supplémentaire pour apprendre des tâches spécifiques. Cet entraînement supplémentaire permet au modèle de faire de meilleures prédictions sur une tâche spécifique. Cette formation supplémentaire, appelée l'ajustement, l'aspect pratique des LLM.

L'affinage permet d'entraîner des exemples spécifiques à la tâche que votre application aura un impact. Les ingénieurs peuvent parfois affiner un LLM de fondation sur quelques 100 ou quelques milliers d'exemples d'entraînement.

Malgré le nombre relativement petit d'exemples d'entraînement, l'affinage standard est souvent coûteuse en calcul. En effet, l'affinage standard implique mettant à jour la pondération et le biais de chaque paramètre sur chaque une itération de rétropropagation. Heureusement, un processus plus intelligent appelé optimisation des paramètres réglage peut affiner un LLM en ajustant uniquement un sous-ensemble de paramètres sur chaque et l'itération de rétropropagation.

Les prédictions d'un modèle affiné sont généralement meilleures que les LLM de base des prédictions. Cependant, un modèle affiné contient le même nombre en tant que LLM de base. Si un LLM de fondation contient 10 milliards la version affinée contiendra également 10 milliards paramètres.

Distillation

La plupart des LLM affinés contiennent un très grand nombre de paramètres. Par conséquent, les LLM de fondation nécessitent d'énormes ressources de calcul et environnementales pour générer des prédictions. Notez qu'une grande partie de ces paramètres qui ne sont généralement pas pertinentes pour une application spécifique.

Distillation une version plus petite d'un LLM. Le LLM distillé génère des prédictions beaucoup plus rapide et nécessite moins de ressources environnementales et de calcul le LLM complet. Cependant, les prédictions du modèle distillé ne sont généralement pas que les prédictions du LLM d'origine. Souvenez-vous que les LLM dotés de génèrent presque toujours de meilleures prédictions que les LLM comportant moins de paramètres.

Prompt engineering

Ingénierie des requêtes permet aux utilisateurs finaux d'un LLM de personnaliser la sortie du modèle. En d'autres termes, les utilisateurs finaux précisent comment le LLM doit répondre à leur requête.

Les humains apprennent bien des exemples. tout comme les LLM. Présenter un exemple à un LLM s'appelle requête one-shot. Par exemple, supposons que vous souhaitiez qu'un modèle utilise le format suivant pour générer famille d'un fruit:

L'utilisateur saisit le nom d'un fruit: le LLM génère la classe de ce fruit.

Une requête one-shot montre au LLM un seul exemple du format précédent. puis demande au LLM d'exécuter une requête basée sur cet exemple. Par exemple :

peach: drupe
apple: ______

Un seul exemple suffit parfois. Si c'est le cas, le LLM renvoie une réponse utile la prédiction. Par exemple :

apple: pome

Dans d'autres situations, un seul exemple ne suffit pas. Autrement dit, l'utilisateur doit afficher plusieurs exemples du LLM. Par exemple, l'invite suivante contient deux exemples:

plum: drupe
pear: pome
lemon: ____

Fournir plusieurs exemples s'appelle requête few-shot. Vous pouvez considérer les deux premières lignes de la requête précédente comme un entraînement exemples.

Un LLM peut-il fournir des prédictions utiles sans aucun exemple (zero-shot requête) ? Parfois, mais Les LLM aiment le contexte. Sans contexte, la requête zero-shot suivante peut renvoyer des informations sur l'entreprise technologique plutôt que sur le fruit:

apple: _______

Inférence hors ligne

Le nombre de paramètres d'un LLM est parfois que l'inférence en ligne est trop lent pour être adapté à des tâches concrètes telles que la régression la classification. Par conséquent, de nombreuses équipes d'ingénierie s'appuient sur inférence hors ligne (également (appelée inférence groupée ou inférence statique). En d'autres termes, plutôt que de répondre aux requêtes lors de l'inférence, le le modèle entraîné effectue des prédictions à l'avance, puis les met en cache.

Peu importe qu'un LLM mette beaucoup de temps à accomplir sa tâche si le LLM doit effectuer la tâche une fois par semaine ou une fois par mois.

Par exemple, la recherche Google a utilisé un LLM d'effectuer une inférence hors connexion afin de mettre en cache une liste de plus de 800 synonymes des vaccins contre la COVID dans plus de 50 langues. La recherche Google a ensuite utilisé les mise en cache pour identifier les requêtes concernant les vaccins dans un trafic en temps réel.

Utiliser les LLM de manière responsable

Comme toute forme de machine learning, les LLM partagent généralement les biais suivants:

  • Les données avec lesquelles ils ont été entraînés.
  • Les données sur lesquelles elles ont été distillées.

Utiliser les LLM de manière juste et responsable, conformément aux leçons présentées plus tôt dans ce cours.

Exercice: tester vos connaissances

Parmi les affirmations suivantes concernant les LLM, laquelle est vraie ?
Un LLM distillé contient moins de paramètres que la base le modèle de langage dont elle est née.
Oui, la distillation réduit le nombre de paramètres.
Un LLM affiné contient moins de paramètres que la base du modèle de langage sur lequel il a été entraîné.
Un modèle affiné contient le même nombre de paramètres que le modèle de langage de fondation d'origine.
Plus les utilisateurs effectuent d'ingénierie des requêtes, plus le nombre de paramètres dans un LLM grandit.
L'ingénierie des requêtes n'ajoute (ni ne supprime ni ne modifie) le LLM paramètres.