Consultez la documentation OpenAI pour obtenir la liste des modèles qui prennent en charge le fine-tuning.
Installer ou mettre à jour l’API Python OpenAI
Avant de synchroniser les résultats de fine-tuning, vérifiez qu’une version compatible du client Python OpenAI est installée. L’intégration W&B pour le fine-tuning OpenAI fonctionne avec la version 1.0 ou ultérieure d’OpenAI. Voir la documentation PyPI pour connaître la dernière version de la bibliothèque API Python OpenAI. Pour installer l’API Python OpenAI, exécutez :Synchroniser les résultats de votre fine-tuning OpenAI
Cette section explique comment envoyer vers W&B les métriques et la configuration d’un job de fine-tuning OpenAI, afin de les comparer à vos autres expériences. Pour ce faire, utilisez la classeWandbLogger du module wandb.integration.openai.fine_tuning.

Synchroniser vos opérations consistant à effectuer le fine-tuning
Synchronisez vos résultats depuis votre script. L’exemple suivant présente à la fois l’appel minimal en une seule ligne et l’ensemble complet des paramètres facultatifs que vous pouvez transmettre pour contrôler le comportement de la synchronisation.Référence
Le tableau suivant décrit chaque argument accepté parWandbLogger.sync.
Gestion des versions et visualisation des datasets
Lorsque vous synchronisez un job de fine-tuning, W&B capture également les données d’entraînement et de validation afin que vous puissiez en gérer les versions et les explorer de manière interactive. Les sous-sections suivantes décrivent les éléments que W&B suit et comment les consulter.Gestion des versions
Les données d’entraînement et de validation que vous téléversez sur OpenAI pour le fine-tuning sont automatiquement journalisées en tant que W&B Artifacts, ce qui facilite la gestion des versions. L’image suivante montre le fichier d’entraînement dans Artifacts. Vous pouvez y voir le run W&B qui a journalisé ce fichier, la date de journalisation, la version du dataset, les métadonnées, ainsi que la traçabilité DAG, des données d’entraînement jusqu’au modèle entraîné.
Visualisation
W&B présente les datasets sous forme de tableaux W&B, ce qui vous permet d’explorer le dataset, d’y effectuer des recherches et d’interagir avec lui. L’image suivante montre des échantillons d’entraînement visualisés dans des tableaux W&B.
Le modèle affiné et la gestion des versions du modèle
OpenAI n’expose pas les poids sous-jacents d’un modèle affiné. W&B suit donc le modèle en capturant ses métadonnées. OpenAI vous fournit l’ID du modèle affiné. Comme vous n’avez pas accès aux poids du modèle, leWandbLogger crée un fichier model_metadata.json qui regroupe tous les détails du modèle (hyperparamètres, ID des fichiers de données, etc.) ainsi que l’ID fine_tuned_model, puis le journalise en tant qu’artifact W&B.
Vous pouvez lier cet artifact de modèle (métadonnées) à un modèle du registre.

Questions fréquentes
Les sections suivantes répondent aux questions fréquentes sur le partage, l’organisation et la récupération des runs de fine-tuning synchronisés depuis OpenAI.Partager les résultats obtenus en effectuant le fine-tuning avec votre équipe
Pour journaliser vos jobs pour effectuer le fine-tuning dans le compte de votre équipe, utilisez :Organiser vos runs
W&B organise automatiquement vos runs. Vous pouvez les filtrer et les trier selon n’importe quel paramètre de configuration, comme le type de job, le modèle de base, le taux d’apprentissage, le nom du fichier d’entraînement ou tout autre hyperparamètre. Vous pouvez également renommer vos runs, y ajouter des notes ou créer des tags pour les regrouper. Une fois le résultat satisfaisant, enregistrez votre workspace et utilisez-le pour créer un rapport en y important les données de vos runs et de vos artifacts enregistrés (fichiers d’entraînement et de validation).Accéder à votre modèle sur lequel le fine-tuning a été effectué
W&B journalise l’ID du modèle sur lequel le fine-tuning a été effectué sous forme d’artifacts (model_metadata.json) et dans la configuration.
<version> correspond à l’une des valeurs suivantes :
- Un numéro de version, par exemple
v2. - L’ID de l’opération consistant à effectuer le fine-tuning, par exemple
ft-xxxxxxxxx. - Un alias ajouté automatiquement, comme
latest, ou manuellement.
fine_tuned_model en lisant le fichier model_metadata.json téléchargé.
Récupérer une opération consistant à effectuer le fine-tuning qui n’a pas été synchronisée
Si une opération consistant à effectuer le fine-tuning n’a pas été correctement journalisée dans W&B, utilisezoverwrite=True et transmettez l’ID du job pour effectuer le fine-tuning :
Suivre les datasets et les modèles avec W&B
W&B journalise automatiquement les données d’entraînement et de validation sous forme d’artifacts. W&B journalise également les métadonnées, notamment l’ID du modèle affiné, sous forme d’artifacts. Vous pouvez également piloter le pipeline à l’aide des APIwandb de bas niveau, comme wandb.Artifact, wandb.Run.log, etc. Vous bénéficiez ainsi d’une traçabilité complète de vos données et de vos modèles.

Ressources
Pour approfondir le sujet et découvrir des exemples de bout en bout, consultez les ressources suivantes.- Documentation OpenAI sur le fine-tuning, pour des conseils et astuces détaillés.
- Colab de démonstration.
- Rapport How to Fine-Tune Your OpenAI GPT-3.5 and GPT-4 Models with W&B.