Falls Sie es noch nicht gehört haben: OpenAI hat kürzlich angekündigt, dass eine Feinabstimmung für GPT-3.5 Turbo verfügbar ist. Darüber hinaus wird erwartet, dass die Feinabstimmung für GPT-4.0 ebenfalls später im Herbst veröffentlicht wird. Insbesondere für Entwickler war dies eine äußerst erfreuliche Neuigkeit.
Aber warum war das gerade eine so wichtige Ankündigung? Kurz gesagt, die Feinabstimmung eines GPT-3.5 Turbo-Modells bietet mehrere wichtige Vorteile. Während wir später in diesem Artikel untersuchen werden, was diese Vorteile sind, ermöglicht die Feinabstimmung im Wesentlichen Entwicklern, ihre Projekte effektiver zu verwalten und ihre Eingabeaufforderungen zu verkürzen (manchmal um bis zu 90 %), indem Anweisungen in das Modell selbst eingebettet werden.
Mit einer fein abgestimmten Version von GPT-3.5 Turbo ist es möglich, die Basisfunktionen von Chat GPT-3.5 für bestimmte Aufgaben zu übertreffen. Lassen Sie uns genauer untersuchen, wie Sie Ihre GPT-3.5 Turbo-Modelle verfeinern können.
Der erste Schritt zur Feinabstimmung Ihrer Daten für GPT-3.5 Turbo ist: Formatieren Sie es in die richtige Struktur im JSONL-Format. Jede Zeile in Ihrer JSONL-Datei enthält einen Nachrichtenschlüssel mit drei verschiedenen Arten von Nachrichten:
- Ihre Eingabenachricht (auch Benutzernachricht genannt)
- Der Kontext der Nachricht (auch Systemnachricht genannt)
- Die Modellantwort (auch Assistentennachricht genannt)
Hier ist ein Beispiel mit allen drei dieser Nachrichtentypen:
{
"messages": [
{ "role": "system", "content": "You are an experienced JavaScript developer adept at correcting mistakes" },
{ "role": "user", "content": "Find the issues in the following code." },
{ "role": "assistant", "content": "The provided code has several aspects that could be improved upon." }
]
}
Anschließend müssen Sie Ihre JSON-Objektdatei speichern, sobald Ihre Daten vorbereitet wurden.
Nachdem Sie Ihren Datensatz wie oben beschrieben erstellt und gespeichert haben, ist es an der Zeit, die Dateien hochzuladen, damit Sie sie verfeinern können.
Hier ist ein Beispiel dafür, wie Sie dies über ein von OpenAI bereitgestelltes Python-Skript tun können:
curl https://api.openai.com/v1/files \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-F "purpose=fine-tune" \
-F "file=@path_to_your_file"
Jetzt ist es an der Zeit, endlich den Feinschliff vorzunehmen. Auch hier bietet OpenAI ein Beispiel dafür, wie Sie dies tun können:
curl https://api.openai.com/v1/fine_tuning/jobs \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"training_file": "TRAINING_FILE_ID",
"model": "gpt-3.5-turbo-0613"
}'
Wie das obige Beispiel zeigt, müssen Sie openai.file.create verwenden, um die Anfrage zum Hochladen der Datei zu senden. Denken Sie daran, die Datei-ID zu speichern, da Sie sie für zukünftige Schritte benötigen.
Jetzt ist es an der Zeit, das fein abgestimmte Modell bereitzustellen und mit ihm zu interagieren. Sie können dies auf dem OpenAI-Spielplatz tun.
Beachten Sie das OpenAI-Beispiel unten:
curl https://api.openai.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "ft:gpt-3.5-turbo:org_id",
"messages": [
{
"role": "system",
"content": "You are an experienced JavaScript developer adept at correcting mistakes"
},
{
"role": "user",
"content": "Hello! Can you review this code I wrote?"
}
]
}'
Dies ist auch eine gute Gelegenheit, das neue, fein abgestimmte Modell mit dem ursprünglichen GPT-3.5 Turbo-Modell zu vergleichen.
Die Feinabstimmung Ihrer GPT-3.5 Turbo-Eingabeaufforderungen bietet drei Hauptvorteile zur Verbesserung der Modellqualität und Leistung.
Verbesserte Lenkbarkeit
Mit anderen Worten: Durch die Feinabstimmung können Entwickler sicherstellen, dass ihre benutzerdefinierten Modelle bestimmten Anweisungen besser folgen. Zum Beispiel, wenn Sie möchten, dass Ihr Modell fertiggestellt wird in einer anderen Sprache (z. B. Italienisch oder Spanisch) können Sie dies durch die Feinabstimmung Ihrer Modelle erreichen.
Das Gleiche gilt, wenn Sie möchten, dass Ihr Modell Ihre Ausgaben verkürzt oder das Modell auf eine bestimmte Weise reagiert. Apropos Ausgänge…
Zuverlässigere Ausgabeformatierung
Dank der Feinabstimmung kann ein Modell seine Fähigkeit verbessern, Antworten konsistent zu formatieren. Dies ist sehr wichtig für alle Anwendungen, die ein bestimmtes Format erfordern, z. B. Codierung. Insbesondere können Entwickler ihre Modelle so optimieren, dass Benutzereingaben konvertiert werden in JSON-Snippetsdie dann später in größere Datenmodule integriert werden können.
Individueller Ton
Wenn Unternehmen sicherstellen müssen, dass die von ihren KI-Modellen generierten Ergebnisse einen bestimmten Ton aufweisen, ist die Feinabstimmung der effizienteste Weg, dies sicherzustellen. Viele Unternehmen müssen sicherstellen, dass ihre Inhalte und Marketingmaterialien mit der Stimme ihrer Marke übereinstimmen oder einen bestimmten Ton haben, um eine bessere Kundenbindung zu ermöglichen.
Wenn ein Unternehmen über eine erkennbare Markenstimme verfügt, kann es seine GPT-3.5-Turbo-Modelle bei der Vorbereitung seiner Daten für die Feinabstimmung optimieren. Dies geschieht insbesondere in den oben beschriebenen Nachrichtentypen „Benutzernachricht“ und „Systemnachricht“. Wenn es richtig gemacht wird, führt dies dazu, dass alle Nachrichten unter Berücksichtigung der Markenstimme des Unternehmens erstellt werden und gleichzeitig der Zeitaufwand für die Bearbeitung aller Inhalte, von Social-Media-Texten bis hin zu Whitepapers, erheblich verkürzt wird.
Wie oben erwähnt, wird OpenAI voraussichtlich auch bald Feinabstimmungen für GPT-4.0 veröffentlichen. Darüber hinaus wird erwartet, dass das Unternehmen kommende Funktionen veröffentlicht, wie z Bietet Unterstützung für Funktionsaufrufe und die Möglichkeit zur Feinabstimmung über die Benutzeroberfläche. Letzteres macht die Feinabstimmung auch für unerfahrene Benutzer zugänglicher.
Diese Entwicklungen mit Feinabstimmung sind nicht nur für Entwickler wichtig, sondern auch für Unternehmen. Zum Beispiel viele der vielversprechendste Startups im Technologie- und Entwicklerbereich wie Sweep oder SeekOut sind auf den Einsatz von KI zur Erledigung ihrer Dienste angewiesen. Unternehmen wie diese werden von der Möglichkeit zur Feinabstimmung ihrer GPT-Datenmodelle profitieren.
Dank dieser neuen Möglichkeit zur Feinabstimmung von GPT-3.5 Turbo können Unternehmen und Entwickler dies jetzt tun ihre Modelle effektiver überwachen um sicherzustellen, dass ihre Leistung besser zu ihren Anwendungen passt.
Nahla Davies ist Softwareentwickler und technischer Autor. Bevor sie sich hauptberuflich dem technischen Schreiben widmete, schaffte sie es – neben anderen faszinierenden Dingen –, als leitende Programmiererin bei einer Inc. 5.000-Organisation für experimentelles Branding zu arbeiten, zu deren Kunden Samsung, Time Warner, Netflix und Sony gehören.