Nederlands
  • chatgpt
  • ai
  • prompt
  • i18n

Lange-context JSON vertaling met ChatGPT

Leer hoe je het nieuwste ChatGPT-model en JSON-modus gebruikt om een JSON-object met lange context te vertalen en de uitvoer terug naar JSON te streamen.

Gao
Gao
Founder

Leer hoe je het nieuwste ChatGPT-model en JSON-modus gebruikt om een JSON-bestand met lange context te vertalen en de uitvoer terug naar JSON te streamen.

Introductie

Het is een tijdje geleden sinds onze laatste post Efficiënte internationalisatie met ChatGPT, waarin we toonden hoe je ChatGPT gebruikt om een JSON-object te vertalen. Aangezien het model is geëvolueerd, zijn de vertaalmogelijkheden aanzienlijk verbeterd met een langer contextvenster, verhoogde maximale uitvoertokens en nieuwe functies zoals JSON-modus die de ontwikkelaarservaring nog beter maken.

Verhoogde maximale uitvoertokens

Laten we een snelle vergelijking maken van de laatste twee versies van het model:

ModelBeschrijvingContextvensterMax uitvoertokensTrainingsdata
gpt-4o-2024-05-13gpt-4o wijst momenteel naar deze versie.128.000 tokens4.096 tokensTot oktober 2023
gpt-4o-2024-08-06Laatste snapshot die gestructureerde uitvoer ondersteunt128.000 tokens16.384 tokensTot oktober 2023

De meest significante verandering is de verhoging van de maximale uitvoertokens van 4.096 naar 16.384, wat perfect past bij het vertaalscenario aangezien de uitvoer van de vertaling meestal ongeveer dezelfde lengte heeft of langer is dan de invoer. Ondertussen is de prijs zelfs gedaald, vergeleken met het vorige 32K tokenmodel (het was duur).

JSON-modus

Zoals de naam al doet vermoeden, is JSON-modus zeer nuttig wanneer je wilt verzekeren dat de uitvoer een geldig JSON-object is. Voor het nieuwe model kun je zelfs het schema van het uitvoer JSON-object definiëren met behulp van Gestructureerde Uitvoer.

Aan de slag

Initialisatie

We zullen OpenAI's Node.js SDK v4.56.0 in deze post gebruiken ter demonstratie. Voel je vrij om elke andere methode of taal te gebruiken die je prefereert.

Eerst moeten we de OpenAI-client initialiseren:

Ik raad sterk aan om de streamingmodus te gebruiken voor vertaling met lange context, aangezien het efficiënter is en je niet lang hoeft te wachten om de uitvoer te krijgen (bijvoorbeeld een minuut voor één verzoek). De code zal er als volgt uitzien:

Laten we enkele prompts schrijven

We kunnen de system rol gebruiken om het model zijn taak te instrueren:

Vergeet niet "es" te vervangen door je doellocatie code. Volgens onze ervaring zijn er verschillende instructies die we aan het model moeten geven voor een betere output en minder menselijke interventie:

Je vraagt je misschien af waarom we de laatste instructie nodig hebben. Dit is de uitleg van OpenAI:

Bij het gebruik van JSON-modus moet je het model altijd instrueren om JSON te produceren via een bericht in de conversatie, bijvoorbeeld via je systeembericht. Als je geen expliciete instructie opneemt om JSON te genereren, kan het model een eindeloze stroom van witruimte genereren en kan het verzoek doorgaan totdat het de tokenlimiet bereikt.

Met de bovenstaande instructies kunnen we het te vertalen JSON-object in het volgende bericht met de user rol zetten. Laten we samenstellen wat we tot nu toe hebben:

De uitvoer verwerken

Aangezien we de streamingmodus gebruiken, moeten we de uitvoer afhandelen met de streamingstijl. Hier is een voorbeeld:

Conclusie

Dat is het! Met het nieuwe ChatGPT-model is de efficiëntie van JSON-vertaling verder verbeterd en de vertaalkwaliteit is ook beter. Ik hoop dat deze post je helpt om nieuwe inzichten te krijgen over ChatGPT en JSON-vertaling. Tot de volgende post!