cursus
GPT-4o Vision Fine-Tuning : Un guide avec des exemples
Jusqu'à récemment, la mise au point GPT-4o n'était possible qu'à l'aide d'un texte. Aujourd'hui, avec l OpenAId'OpenAI fine-tuning nous pouvons également personnaliser GPT-4o avec des images. Cela signifie que nous pouvons adapter les capacités de GPT-4o à notre cas d'utilisation.
Cette mise à jour ouvre de nouvelles possibilités. Imaginez que vous puissiez affiner GPT-4o pour effectuer des recherches visuelles plus précises, détecter des objets ou même analyser des images médicales.
Dans ce tutoriel, je vous guiderai pas à pas dans la mise au point de GPT-4o avec des images. Plus précisément, nous allons affiner le modèle afin d'identifier correctement les églises orthodoxes géorgiennes.
GPT-4o Tarification de la mise au point visuelle
OpenAI offre un million de jetons gratuits par jour jusqu'au 31 octobre pour affiner le modèle GPT-4o avec des images, ce qui constitue une bonne occasion d'explorer les capacités d'affinage visuel de GPT-4o.
Après le 31 octobre, les coûts de formation passeront à un modèle de paiement à l'utilisation, avec des frais de 25 dollars par million de jetons. En outre, des coûts d'inférence seront encourus pour chaque entrée (3,75 dollars par million de jetons) et chaque sortie (15 dollars par million de jetons).
Il est important de noter que ces informations sont exactes à la date du 10 octobre. la page des prix d'OpenAI pour obtenir les informations les plus récentes sur les prix et la disponibilité.
Le défi des problèmes visuels de GPT-4o
Passons maintenant à la partie intéressante. Comment procéder à la mise au point visuelle du GPT-4o ?
Commençons par évaluer dans quelle mesure GPT-4o reconnaît cette église géorgienne :
Lorsqu'on lui a posé la question, le mannequin a cru qu'il s'agissait de l'église Saint-Nicolas en Géorgie, alors qu'il s'agit en réalité du temple de la Sainte-Annonciation de Kutaisi.
Il est clair que des améliorations sont possibles, et c'est là que le réglage fin entre en jeu.
Préparer le fichier JSONL
Nous devons d'abord préparer notre ensemble de données d'entraînement pour commencer le réglage fin. Selon la documentation officielle, nous avons besoin d'un fichier JSONL structuré comme suit :
{
"messages": [
{
"role": "system",
"content": "You are an assistant that identifies Georgian orthodox churches."
},
{
"role": "user",
"content": "What is this church called?"
},
{
"role": "user",
"content": [
{
"type": "image_url",
"image_url": {
"url": "https://upload.wikimedia.org/wikipedia/commons/e/e8/Khareba_church.jpg"
}
}
]
},
{
"role": "assistant",
"content": "Kutaisi Holy Annunciation temple"
}
]
}
//second example
{
"messages": [
{
"role": "system",
"content": "You are an assistant that identifies Georgian orthodox churches."
},
{
"role": "user",
"content": "What is this church called?"
},
{
"role": "user",
"content": [
{
"type": "image_url",
"image_url": {
"url": "https://upload.wikimedia.org/wikipedia/en/a/af/Holy_Trinity_Cathedral_of_Tbilisi.jpg"
}
}
]
},
{
"role": "assistant",
"content": "Holy trinity cathedral"
}
]
}
//other examples below
Pour des raisons de lisibilité et d'espace, je n'ai inclus qu'un extrait de mon JSONL d'entraînement avec deux entrées ; les autres exemples d'entraînement doivent être ajoutés sur une ligne séparée.
Notez que nous avons besoin d'au moins 10 exemples pour effectuer le réglage fin. Chaque ligne représente un objet JSON indépendant avec un tableau messages
.
Notez également que JSONL ne prend pas en charge les commentaires, j'ai donc décidé d'ajouter des commentaires après le site //
pour les besoins du guide. Veillez à les retirer avant l'entraînement.
Vous pouvez utiliser un éditeur de texte classique comme le Bloc-notes ou, si vous travaillez avec de nombreux exemples, automatiser la création de ce fichier à l'aide d'un script. Une fois que votre fichier JSONL est prêt, vous pouvez commencer à le peaufiner.
Développer des applications d'IA
Affiner le GPT-4o à l'aide d'images
Maintenant, avec le JSONL prêt, nous devons nous connecter à notre tableau de bord OpenAI et choisir l'option Créer et choisir l'option Créer :
Dans le menu qui s'affiche :
- Choisissez le modèle
gpt-4o-2024-08-06
. - Téléchargez le fichier JSONL de la formation.
- Vous pouvez également définir les hyperparamètres ou tout laisser en mode automatique.
Une fois le travail créé, la mise au point devrait commencer automatiquement :
Ma routine de réglage fin a duré environ 20 minutes (le nombre d'époques a été automatiquement fixé à 9). En fonction de la taille de l'ensemble de données et de la complexité du modèle, ce délai peut varier, mais vous serez informé une fois qu'il sera terminé.
Test du modèle GPT-4o affiné
Une fois que vous avez terminé, vous pouvez accéder à l'agent affiné par l'intermédiaire de l'API ou de l'application terrain de jeu.
Par souci de simplicité, j'utiliserai le terrain de jeu pour les tests. Voyons si le modèle peut identifier correctement l'église cette fois-ci :
Comme vous pouvez le constater, l'agent affiné (à droite) a correctement identifié l'église, même si cette image ne figurait pas dans l'ensemble de données d'apprentissage. Le modèle normal (à gauche) se trompe encore !
Conclusion
Dans ce tutoriel, nous avons exploré le processus de réglage fin de GPT-4o avec des images.
Nous avons commencé par souligner les limites initiales du modèle en ce qui concerne l'identification d'un type spécifique d'église. Pour y remédier, nous avons préparé un fichier JSONL contenant des paires image-texte pour la formation. Nous avons ensuite utilisé l'API de réglage fin d'OpenAI pour créer un modèle personnalisé.
Enfin, nous avons testé le modèle affiné et observé une meilleure précision dans l'identification de l'église.
Bien que cet exemple soit axé sur un cas d'utilisation spécifique, les principes et techniques sous-jacents peuvent être appliqués à un large éventail de tâches liées à l'image, démontrant ainsi le potentiel des capacités d'affinage visuel de GPT-4o. Je vous recommande de lire les cas d'utilisation dans l'article d'annonce de l'OpenAI d'OpenAI.
Pour en savoir plus sur la façon de travailler avec les produits d'OpenAI, je vous recommande ces ressources :
Apprenez l'IA avec ces cours !
cours
Développer des systèmes d'IA avec l'API OpenAI
cours