Track
GPT-4o Vision Fine-Tuning: Ein Leitfaden mit Beispielen
Bis vor kurzem war die Feinabstimmung GPT-4o war nur mit Text möglich. Jetzt, mit OpenAIder neuesten Feinabstimmung API können wir GPT-4o auch mit Bildern anpassen. Das bedeutet, dass wir die Fähigkeiten des GPT-4o an unseren Anwendungsfall anpassen können.
Dieses Update eröffnet neue Möglichkeiten - stell dir vor, du kannst GPT-4o für eine genauere visuelle Suche, die Erkennung von Objekten oder sogar für die Analyse medizinischer Bilder feinjustieren.
In diesem Tutorial gebe ich dir eine Schritt-für-Schritt-Anleitung zur Feinabstimmung von GPT-4o mit Bildern. Insbesondere werden wir das Modell verfeinern, um georgisch-orthodoxe Kirchen korrekt zu identifizieren.
GPT-4o Visuelle Feinabstimmung Preisgestaltung
OpenAI bietet bis zum 31. Oktober täglich eine Million kostenlose Token an, um das GPT-4o-Modell mit Bildern zu verfeinern. Das ist eine gute Gelegenheit, die Möglichkeiten der visuellen Feinabstimmung von GPT-4o zu erkunden.
Nach dem 31. Oktober werden die Ausbildungskosten auf ein Umlageverfahren umgestellt, mit einer Gebühr von 25 Dollar pro Million Token. Außerdem fallen für jeden Input (3,75 $ pro Million Token) und Output (15 $ pro Million Token) Inferenzkosten an.
Es ist wichtig zu beachten, dass diese Informationen dem Stand vom 10. Oktober entsprechen, daher solltest du die OpenAIs Preisseite für die aktuellsten Details zu Preisen und Verfügbarkeit.
GPT-4o's Visual Problem Challenge
Lass uns zum interessanten Teil kommen. Wie machen wir eigentlich die visuelle Feinabstimmung für GPT-4o?
Beginnen wir damit, zu bewerten, wie gut GPT-4o diese georgische Kirche wiedererkennt:
Als das Modell gefragt wurde, dachte es, das Bild sei von der St. Nikolaus-Kirche in Georgien, obwohl es sich in Wirklichkeit um den Tempel der Heiligen Verkündigung in Kutaisi handelt.
Natürlich gibt es Raum für Verbesserungen, und hier kommt die Feinabstimmung ins Spiel.
Bereite die JSONL-Datei vor
Zuerst müssen wir unseren Trainingsdatensatz vorbereiten, um mit der Feinabstimmung zu beginnen. Laut der offiziellen Dokumentation brauchen wir eine JSONL-Datei, die wie folgt aufgebaut ist:
{
"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
Aus Gründen der Lesbarkeit und des Platzes habe ich nur einen Ausschnitt meiner Trainings-JSONL mit zwei Einträgen eingefügt; die anderen Trainingsbeispiele sollten in einer separaten Zeile hinzugefügt werden.
Beachte, dass wir mindestens 10 Beispiele brauchen, um die Feinabstimmung durchzuführen. Jede Zeile stellt ein unabhängiges JSON-Objekt mit einem messages
Array dar.
Beachte auch, dass JSONL keine Kommentare unterstützt, deshalb habe ich mich entschieden, der Anleitung zuliebe Kommentare nach der //
hinzuzufügen. Stelle sicher, dass du sie vor dem Training entfernst.
Du kannst einen normalen Texteditor wie Notepad verwenden. Wenn du mit vielen Beispielen arbeitest, ist es eine gute Idee, die Erstellung dieser Datei mithilfe eines Skripts zu automatisieren. Sobald deine JSONL-Datei fertig ist, kannst du mit der Feinabstimmung beginnen.
KI-Anwendungen entwickeln
Feinabstimmung des GPT-4o mit Bildern
Mit der fertigen JSONL müssen wir uns nun in unser OpenAI Dashboard und wählen die Option erstellen Option:
In dem Menü, das sich öffnet:
- Wähle das Modell
gpt-4o-2024-08-06
. - Lade die JSONL-Datei für die Schulung hoch.
- Du kannst auch die Hyperparameter festlegen oder alles auf auto.
Sobald wir den Auftrag erstellt haben, sollte die Feinabstimmung automatisch beginnen:
Meine Feinabstimmung dauerte etwa 20 Minuten (die Anzahl der Epochen war automatisch auf 9 eingestellt). Je nach Größe des Datensatzes und der Komplexität des Modells kann dies variieren, aber du wirst benachrichtigt, sobald es fertig ist.
Testen des Feinabstimmungsmodells GPT-4o
Sobald du fertig bist, kannst du über die API oder den Spielplatz.
Der Einfachheit halber werde ich den Playground zum Testen verwenden. Mal sehen, ob das Modell die Kirche dieses Mal richtig identifizieren kann:
Wie du siehst, hat der feinabgestimmte Agent (rechts) die Kirche richtig erkannt, obwohl das Bild nicht im Trainingsdatensatz enthalten war. Das normale Modell (links) liegt immer noch falsch!
Fazit
In diesem Tutorial haben wir den Prozess der Feinabstimmung von GPT-4o mit Bildern erkundet.
Zunächst haben wir die anfänglichen Grenzen des Modells bei der Identifizierung eines bestimmten Kirchentyps aufgezeigt. Dazu haben wir eine JSONL-Datei mit Bild-Text-Paaren für das Training vorbereitet. Dann haben wir die API von OpenAI genutzt, um ein individuelles Modell zu erstellen.
Schließlich haben wir das fein abgestimmte Modell getestet und festgestellt, dass es die Kirche besser identifiziert.
Obwohl sich dieses Beispiel auf einen bestimmten Anwendungsfall konzentriert, können die zugrunde liegenden Prinzipien und Techniken auf eine Vielzahl von bildbezogenen Aufgaben angewendet werden, was das Potenzial der visuellen Feinabstimmung von GPT-4o demonstriert. Ich empfehle, die Anwendungsfälle in der OpenAI-Ankündigung zu lesen. Ankündigungsartikel.
Um mehr über die Arbeit mit den Produkten von OpenAI zu erfahren, empfehle ich diese Ressourcen:
Lerne KI mit diesen Kursen!
Course
Entwicklung von KI-Systemen mit der OpenAI API
Course