Le réglage de modèle est un processus essentiel pour adapter Gemini afin d'effectuer des tâches spécifiques avec plus de précision. Pour affiner les réglages d'un modèle, fournissez-lui un ensemble de données d'entraînement contenant un ensemble d'exemples de tâches en aval spécifiques.
Utilisez l'API de réglage Gemini pour les cas d'utilisation suivants :
Modèles compatibles :
Vous pouvez utiliser les réglages supervisés sur les modèles Gemini suivants :
Modèle | Version |
---|---|
Gemini 1.5 Pro | gemini-1.5-pro-002 |
Gemini 1.5 Flash | gemini-1.5-flash-002 |
Gemini 1.0 Pro | gemini-1.0-pro-002 |
Exemple de syntaxe
Syntaxe permettant de régler un modèle.
curl
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs \ -d '{ "baseModel": "...", "supervisedTuningSpec" : { ... "hyper_parameters": { ... }, }, "tunedModelDisplayName": "", }'
Liste des paramètres
Consultez des exemples pour en savoir plus sur l'implémentation.
Corps de la requête
Le corps de la requête contient des données avec les paramètres suivants :
Paramètres | |
---|---|
|
Facultatif : Nom du modèle de fondation en cours de réglage. Les valeurs compatibles sont : |
|
Nom à afficher de |
supervisedTuningSpec
Paramètres | |
---|---|
|
URI Cloud Storage de votre ensemble de données d'entraînement. L'ensemble de données doit être mis en forme en tant que fichier JSONL. Pour des résultats optimaux, fournissez au moins 100 à 500 exemples. Pour en savoir plus, consultez la page À propos des ensembles de données de réglage supervisé. |
|
Facultatif : URI Cloud Storage de votre ensemble de données de validation. Votre ensemble de données doit être mis en forme en tant que fichier JSONL. Un ensemble de données peut contenir jusqu'à 256 exemples. Si vous fournissez ce fichier, les données sont utilisées pour générer régulièrement des métriques de validation lors du réglage. Pour en savoir plus, consultez la page À propos des ensembles de données de réglage supervisé. |
|
Facultatif : Nombre de passes complètes que le modèle effectue sur la totalité de l'ensemble de données d'entraînement pendant l'entraînement. |
|
Facultatif : Multiplicateur permettant d'ajuster le taux d'apprentissage par défaut. |
|
Facultatif : Taille de l'adaptateur pour le réglage. |
|
Facultatif : Nom à afficher de |
AdapterSize
Taille de l'adaptateur pour la tâche de réglage.
Paramètres | |
---|---|
|
Taille de l'adaptateur non spécifiée. |
|
Taille d'adaptateur 1. |
|
Taille d'adaptateur 4. |
|
Taille d'adaptateur 8. |
|
Taille d'adaptateur 16. |
Exemples
Créer un job de réglage supervisé
Vous pouvez créer un job de réglage d'un modèle de texte supervisé à l'aide du SDK Vertex AI pour Python ou en envoyant une requête POST.
Cas d'utilisation de base
Le cas d'utilisation de base ne définit que les valeurs pour baseModel
et training_dataset_uri
.
Tous les autres paramètres utilisent les valeurs par défaut.
REST
Pour créer un job de réglage de modèle, envoyez une requête POST à l'aide de la méthode tuningJobs.create
.
Notez que certains paramètres ne sont pas compatibles avec tous les modèles. Veillez à n'inclure que les paramètres applicables au modèle que vous réglez.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : l'ID de votre projet.
- TUNING_JOB_REGION : région dans laquelle le job de réglage est exécuté. Il s'agit également de la région par défaut dans laquelle le modèle réglé est importé.
- BASE_MODEL : nom du modèle de fondation à régler. Valeurs autorisées :
gemini-1.5-pro-002
,gemini-1.5-flash-002
,gemini-1.0-pro-002
- TRAINING_DATASET_URI : URI Cloud Storage de votre ensemble de données d'entraînement. L'ensemble de données doit être mis en forme en tant que fichier JSONL. Pour de meilleurs résultats, fournissez au moins 100 à 500 exemples. Pour en savoir plus, consultez la page À propos du réglage supervisé des ensembles de données.
Méthode HTTP et URL :
POST https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs
Corps JSON de la requête :
{ "baseModel": "BASE_MODEL", "supervisedTuningSpec" : { "training_dataset_uri": "TRAINING_DATASET_URI" }, }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON semblable à la suivante.
Python
Cas d'utilisation avancé
Le cas d'utilisation avancé étend le cas d'utilisation de base, mais définit également des valeurs pour les hyper_parameters
facultatifs, tels que epoch_count
, learning_rate_multiplier
et adapter_size
.
REST
Pour créer un job de réglage de modèle, envoyez une requête POST à l'aide de la méthode tuningJobs.create
.
Notez que certains paramètres ne sont pas compatibles avec tous les modèles. Veillez à n'inclure que les paramètres applicables au modèle que vous réglez.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : l'ID de votre projet.
- TUNING_JOB_REGION : région dans laquelle le job de réglage est exécuté. Il s'agit également de la région par défaut dans laquelle le modèle réglé est importé.
- BASE_MODEL : nom du modèle de fondation à régler. Valeurs acceptées :
gemini-1.5-pro-002
,gemini-1.5-flash-002
etgemini-1.0-pro-002
. - TRAINING_DATASET_URI : URI Cloud Storage de votre ensemble de données d'entraînement. L'ensemble de données doit être mis en forme en tant que fichier JSONL. Pour de meilleurs résultats, fournissez au moins 100 à 500 exemples. Pour en savoir plus, consultez la page À propos du réglage supervisé des ensembles de données.
- VALIDATION_DATASET_URI (facultatif) : URI Cloud Storage du fichier de votre ensemble de données de validation.
- EPOCH_COUNTFacultatif : Nombre de passes complètes que le modèle effectue sur la totalité de l'ensemble de données d'entraînement pendant l'entraînement. Laissez cette valeur non définie pour utiliser la valeur recommandée.
- ADAPTER_SIZEFacultatif : taille de l'adaptateur à utiliser pour la tâche d'affinage. La taille de l'adaptateur influence le nombre de paramètres entraînables pour le job de réglage. Une taille d'adaptateur plus importante implique que le modèle peut apprendre des tâches plus complexes, mais cela nécessite un ensemble de données d'entraînement plus important et des durées d'entraînement plus longues.
- LEARNING_RATE_MULTIPLIER (facultatif) : un multiplicateur à appliquer au taux d'apprentissage recommandé. Laissez cette valeur non définie pour utiliser la valeur recommandée.
- TUNED_MODEL_DISPLAYNAME (facultatif) : nom à afficher pour le modèle réglé. Si ce paramètre n'est pas défini, un nom aléatoire est généré.
Méthode HTTP et URL :
POST https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs
Corps JSON de la requête :
{ "baseModel": "BASE_MODEL", "supervisedTuningSpec" : { "trainingDatasetUri": "TRAINING_DATASET_URI", "validationDatasetUri": "VALIDATION_DATASET_URI", "hyperParameters": { "epochCount": EPOCH_COUNT, "adapterSize": "ADAPTER_SIZE", "learningRateMultiplier": LEARNING_RATE_MULTIPLIER }, }, "tunedModelDisplayName": "TUNED_MODEL_DISPLAYNAME" }
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON semblable à la suivante.
Python
Répertorier les tâches de réglage
Vous pouvez afficher la liste des tâches de réglage dans votre projet actuel à l'aide du SDK Vertex AI pour Python ou en envoyant une requête GET.
REST
Pour créer un job de réglage de modèle, envoyez une requête POST à l'aide de la méthode tuningJobs.create
.
Notez que certains paramètres ne sont pas compatibles avec tous les modèles. Veillez à n'inclure que les paramètres applicables au modèle que vous réglez.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : l'ID de votre projet.
- TUNING_JOB_REGION : région dans laquelle le job de réglage est exécuté. Il s'agit également de la région par défaut dans laquelle le modèle réglé est importé.
Méthode HTTP et URL :
GET https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Exécutez la commande suivante :
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs"
PowerShell
Exécutez la commande suivante :
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON semblable à la suivante.
Python
Obtenir les détails d'un job de réglage
Vous pouvez obtenir les détails d'un job de réglage à l'aide du SDK Vertex AI pour Python ou en envoyant une requête GET.
REST
Pour afficher la liste des jobs de réglage de modèle, envoyez une requête GET à l'aide de la méthode tuningJobs.get
et spécifiez TuningJob_ID
.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : l'ID de votre projet.
- TUNING_JOB_REGION : région dans laquelle le job de réglage est exécuté. Il s'agit également de la région par défaut dans laquelle le modèle réglé est importé.
- TUNING_JOB_ID : ID du job de réglage.
Méthode HTTP et URL :
GET https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs/TUNING_JOB_ID
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Exécutez la commande suivante :
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs/TUNING_JOB_ID"
PowerShell
Exécutez la commande suivante :
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs/TUNING_JOB_ID" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON semblable à la suivante.
Python
Annuler un job de réglage
Vous pouvez annuler un job de réglage à l'aide du SDK Vertex AI pour Python ou en envoyant une requête POST.
REST
Pour afficher la liste des jobs de réglage de modèle, envoyez une requête GET à l'aide de la méthode tuningJobs.cancel
et spécifiez TuningJob_ID
.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : l'ID de votre projet.
- TUNING_JOB_REGION : région dans laquelle le job de réglage est exécuté. Il s'agit également de la région par défaut dans laquelle le modèle réglé est importé.
- TUNING_JOB_ID : ID du job de réglage.
Méthode HTTP et URL :
POST https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs/TUNING_JOB_ID:cancel
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Exécutez la commande suivante :
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs/TUNING_JOB_ID:cancel"
PowerShell
Exécutez la commande suivante :
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://TUNING_JOB_REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/TUNING_JOB_REGION/tuningJobs/TUNING_JOB_ID:cancel" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON semblable à la suivante.
Python
Étapes suivantes
Pour obtenir une documentation détaillée, consultez les pages suivantes :