Ce document explique comment définir un ensemble de données de réglage supervisé pour un modèle Gemini Pro. Pour obtenir des informations générales sur le fonctionnement du réglage, consultez la page Présentation du réglage de modèle pour Gemini.
Modèles compatibles
Les modèles de textes Gemini suivants sont compatibles avec le réglage supervisé :
gemini-1.0-pro-002
Cas d'utilisation du réglage supervisé sur des modèles de texte
Les modèles de texte de fondation fonctionnent bien lorsque la sortie ou la tâche attendue peut être définie de manière claire et concise dans une invite et que celle-ci génère systématiquement le résultat attendu. Si vous souhaitez qu'un modèle apprenne quelque chose de spécifique ou de différent des modèles généraux de langage, vous pouvez envisager de régler ce modèle. Vous pouvez par exemple utiliser les réglages de modèles pour apprendre au modèle ce qui suit :
- Structures ou formats spécifiques pour générer la sortie.
- Comportements spécifiques, par exemple lorsqu'il s'agit de fournir une sortie sobre ou détaillée.
- Sorties personnalisées spécifiques pour des types d'entrées spécifiques.
Les exemples suivants sont des cas d'utilisation difficiles à capturer seulement avec des instructions de invite :
Classification : la réponse attendue est un mot ou une expression spécifique.
:
Le réglage du modèle peut empêcher le modèle de générer des réponses détaillées.
Synthèse : le résumé respecte un format spécifique. Par exemple, vous devrez peut-être supprimer d'un résumé de chat les informations permettant d'identifier personnellement l'utilisateur.
:
Ce format de remplacement des noms des locuteurs par
#Person1
et#Person2
est difficile à décrire, et le modèle de fondation peut ne pas produire naturellement une telle réponse.Systèmes de questions-réponses extractifs : la question porte sur un contexte et la réponse est une sous-chaîne du contexte.
:
La réponse "Dernière période glaciaire la plus longue" est une expression spécifique du contexte.
Chat : vous devez personnaliser la réponse du modèle pour suivre un persona, un rôle ou un caractère.
Vous pouvez également régler un modèle dans les situations suivantes :
- Les invites ne produisent pas suffisamment les résultats souhaités.
- La tâche est trop compliquée à définir dans une invite. Par exemple, vous souhaitez que le modèle effectue un clonage de comportement pour un comportement difficile à expliquer dans une invite.
- Vous avez des intuitions complexes sur une tâche facile à déclencher, mais difficile à formaliser dans une invite.
- Vous souhaitez réduire la longueur du contexte en supprimant les exemples few-shot.
Préparer un ensemble de données pour le réglage supervisé
Votre ensemble de données doit comporter au moins 16 exemples, mais nous vous recommandons d'utiliser au moins 100 à 500 exemples pour obtenir de bons résultats. Plus vous fournissez d'exemples dans votre ensemble de données et meilleurs seront les résultats.
Pour obtenir des exemples d'ensembles de données, consultez sur cette même page la section Exemples d'ensembles de données.
Format de l'ensemble de données
Votre ensemble de données de réglage de modèle doit être au format JSON Lines (JSONL), où chaque ligne contient un seul exemple de réglage. Avant de régler le modèle, vous devez importer l'ensemble de données dans un bucket Cloud Storage.
Chaque exemple de conversation d'un ensemble de données de réglage est composé d'un champ messages
obligatoire.
Le champ
messages
est constitué d'un tableau de paires rôle-contenu. Le champrole
fait référence à l'auteur du message et est défini sursystem
,user
oumodel
. Le rôlesystem
est facultatif et ne peut apparaître qu'au premier élément de la liste de messages. Les rôlesuser
oumodel
sont obligatoires et peuvent être répétés de manière alternative.Le champ
content
correspond au contenu du message.Pour chaque exemple, la longueur maximale de jeton pour
context
etmessages
combinés est de 32 768 jetons. De plus, chaque champcontent
du champmodel
ne doit pas dépasser 8 192 jetons.
Exemple de tour unique
Pour en savoir plus sur le schéma Gemini suivant, consultez la page Migrer le réglage de l'API PaLM vers l'API Gemini.
{"messages": [{"role": "system", "content": "You should classify the text into one of the following classes:[business, entertainment]"}{"role": "user","content": "Diversify your investment portfolio"},{"role": "model","content": "business"}]}
{"messages": [{"role": "system", "content": "You should classify the text into one of the following classes:[business, entertainment]"}{"role": "user","content": "Watch a live concert"},{"role": "model","content": "entertainment"}]}
Exemple de multitours
Pour en savoir plus sur le schéma Gemini suivant, consultez la page Migrer le réglage de l'API PaLM vers l'API Gemini.
{
"messages": [
{
"role": "system",
"content": "You are a pirate dog named Captain Barktholomew."
},
{
"role": "user",
"content": "Hi"
},
{
"role": "model",
"content": "Argh! What brings ye to my ship?"
},
{
"role": "user",
"content": "What's your name?"
},
{
"role": "model",
"content": "I be Captain Barktholomew, the most feared pirate dog of the seven seas."
}
]
}
Exemples d'ensembles de données
Vous pouvez utiliser un exemple d'ensemble de données pour tester le fonctionnement du réglage d'un modèle gemini-1.0-pro-002
.
Pour utiliser ces ensembles de données, spécifiez les URI dans les paramètres applicables lors de la création d'un job de réglage supervisé d'un modèle de texte.
Par exemple :
...
"training_dataset_uri": "gs://cloud-samples-data/ai-platform/generative_ai/sft_train_data.jsonl",
...
"validation_dataset_uri": "gs://cloud-samples-data/ai-platform/generative_ai/sft_validation_data.jsonl",
...
Assurer la cohérence des données de production
Les exemples de vos ensembles de données doivent correspondre au trafic de production attendu. Si votre ensemble de données contient une mise en forme, des mots clés, des instructions ou des informations spécifiques, les données de production doivent utiliser le même format et les mêmes instructions.
Par exemple, si les exemples de votre ensemble de données incluent "question:"
et "context:"
, le trafic de production doit également être mis en forme de manière à inclure "question:"
et "context:"
dans le même ordre que les exemples de l'ensembles de données. Si vous excluez le contexte, le modèle ne reconnaît pas le modèle, même si la question exacte figurait dans un exemple de l'ensemble de données.
Importer les ensembles de données de réglage dans Cloud Storage
Pour exécuter un job de réglage, vous devez importer un ou plusieurs ensembles de données dans un bucket Cloud Storage. Vous pouvez créer un bucket Cloud Storage ou utiliser un bucket existant pour stocker les fichiers des ensembles de données. La région du bucket n'a pas d'importance, mais nous vous recommandons d'utiliser un bucket situé dans le même projet Google Cloud que celui où vous prévoyez de régler votre modèle.
Une fois votre bucket prêt, importez-y le fichier de votre ensemble de données.
Étapes suivantes
- Choisissez une région pour régler un modèle.