• chatgpt
  • ai
  • prompt
  • i18n

Traduzione di JSON a lungo contesto con ChatGPT

Impara come utilizzare l'ultimo modello ChatGPT e la modalità JSON per tradurre un oggetto JSON con lungo contesto e restituire l'output in JSON.

Gao
Gao
Founder

Impara come utilizzare l'ultimo modello ChatGPT e la modalità JSON per tradurre un file JSON con lungo contesto e restituire l'output in JSON.

Introduzione

È passato un po' di tempo dal nostro ultimo post Internazionalizzazione efficiente con ChatGPT, dove abbiamo mostrato come utilizzare ChatGPT per tradurre un oggetto JSON. Con l'evoluzione del modello, le capacità di traduzione sono state significativamente migliorate con una finestra di contesto più lunga, un aumento dei token di output massimi e nuove funzionalità come la modalità JSON che rende l'esperienza degli sviluppatori ancora migliore.

Aumento dei token di output massimi

Vediamo un rapido confronto tra le ultime due versioni del modello:

ModelloDescrizioneFinestra di contestoToken di output massimiDati di addestramento
gpt-4o-2024-05-13gpt-4o attualmente fa riferimento a questa versione.128,000 token4,096 tokenFino a Ott 2023
gpt-4o-2024-08-06Ultimo snapshot che supporta Output Strutturati128,000 token16,384 tokenFino a Ott 2023

Il cambiamento più significativo è l'aumento del numero massimo di token di output da 4,096 a 16,384, il che si adatta perfettamente allo scenario di traduzione poiché l'output della traduzione ha solitamente circa la stessa lunghezza o più dell'input. Nel frattempo, il prezzo è persino diminuito, rispetto al modello precedente a 32K token (era costoso).

Modalità JSON

Come suggerisce il nome, la modalità JSON è molto utile quando si vuole garantire che l'output sia un oggetto JSON valido. Per il nuovo modello, è possibile persino definire lo schema dell'oggetto JSON di output utilizzando Output Strutturati.

Inizia

Inizializzazione

Utilizzeremo l'SDK di Node.js v4.56.0 di OpenAI in questo post per dimostrazione. Sentiti libero di utilizzare qualsiasi altro metodo o linguaggio preferisci.

Per prima cosa, dobbiamo inizializzare il client OpenAI:

Consiglio vivamente di utilizzare la modalità streaming per la traduzione di lungo contesto, poiché è più efficiente e non devi aspettare a lungo per ottenere l'output (ad esempio, un minuto per una richiesta). Il codice apparirà così:

Scriviamo alcuni prompt

Possiamo utilizzare il ruolo system per istruire il modello sul suo lavoro:

Ricorda di sostituire "es" con il codice della lingua di destinazione. Secondo la nostra esperienza, ci sono diverse istruzioni che dobbiamo dire al modello per ottenere un miglior output e meno intervento umano:

Potresti chiederti perché abbiamo bisogno dell'ultima istruzione. Questa è la spiegazione di OpenAI:

Quando si utilizza la modalità JSON, è necessario sempre istruire il modello a produrre JSON tramite un messaggio nella conversazione, ad esempio tramite il tuo messaggio di sistema. Se non includi un'istruzione esplicita per generare JSON, il modello potrebbe generare un flusso infinito di spazi bianchi e la richiesta potrebbe continuare fino a raggiungere il limite di token.

Con le istruzioni sopra, possiamo inserire l'oggetto JSON da tradurre nel seguente messaggio con il ruolo user. Componiamo quello che abbiamo finora:

Gestione dell'output

Poiché stiamo utilizzando la modalità streaming, dobbiamo gestire l'output con lo stile di streaming. Ecco un esempio:

Conclusione

Ecco fatto! Con il nuovo modello di ChatGPT, l'efficienza della traduzione JSON è stata ulteriormente migliorata e la qualità della traduzione è anche migliore. Spero che questo post ti aiuti a ottenere nuove intuizioni su ChatGPT e la traduzione JSON. Alla prossima post!