Traduction JSON à long contexte avec ChatGPT
Apprenez comment utiliser le dernier modèle ChatGPT et le mode JSON pour traduire un objet JSON avec un long contexte et diffuser la sortie de nouveau en JSON.
Apprenez comment utiliser le dernier modèle ChatGPT et le mode JSON pour traduire un fichier JSON avec un long contexte et diffuser la sortie de nouveau en JSON.
Introduction
Cela fait un moment depuis notre dernier article Internationalisation efficace avec ChatGPT, où nous avons montré comment utiliser ChatGPT pour traduire un objet JSON. Comme le modèle a évolué, les capacités de traduction ont été considérablement améliorées avec une fenêtre de contexte plus longue, un nombre maximum de jetons de sortie accru et de nouvelles fonctionnalités comme le mode JSON qui améliore encore l'expérience développeur.
Augmentation du nombre maximum de jetons de sortie
Voyons une comparaison rapide des deux dernières versions du modèle :
Modèle | Description | Fenêtre de contexte | Max jetons de sortie | Données d'entraînement |
---|---|---|---|---|
gpt-4o-2024-05-13 | gpt-4o pointe actuellement vers cette version. | 128 000 jetons | 4,096 jetons | Jusqu'à Oct 2023 |
gpt-4o-2024-08-06 | Dernier instantané qui prend en charge les sorties structurées | 128 000 jetons | 16,384 jetons | Jusqu'à Oct 2023 |
Le changement le plus significatif est l'augmentation du nombre maximum de jetons de sortie de 4,096 à 16,384, ce qui convient parfaitement au scénario de traduction puisque la sortie de la traduction a généralement à peu près la même longueur ou plus que l'entrée. Pendant ce temps, le prix a même baissé, comparé au modèle précédent de 32K jetons (c'était cher).
Mode JSON
Comme son nom l'indique, le mode JSON est très utile lorsque vous souhaitez vous assurer que la sortie est un objet JSON valide. Pour le nouveau modèle, vous pouvez même définir le schéma de l'objet JSON de sortie en utilisant Sorties structurées.
Commencer
Initialisation
Nous utiliserons le SDK Node.js d'OpenAI v4.56.0 pour la démonstration dans cet article. N'hésitez pas à utiliser toute autre méthode ou langue de votre choix.
Tout d'abord, nous devons initialiser le client OpenAI :
Je recommande fortement d'utiliser le mode de diffusion pour la traduction à long contexte, car il est plus efficace et vous n'avez pas besoin d'attendre longtemps pour obtenir la sortie (par exemple, une minute pour une demande). Le code ressemblera à :
Rédigeons quelques invites
Nous pouvons utiliser le rôle system
pour instruire le modèle sur son travail :
N'oubliez pas de remplacer "es" par le code de votre locale cible. Selon notre expérience, il y a plusieurs instructions que nous devons donner au modèle pour obtenir une meilleure sortie et moins d'intervention humaine :
Tu pourrais te demander pourquoi nous avons besoin de la dernière instruction. Voici l'explication d'OpenAI :
Lors de l'utilisation du mode JSON, tu dois toujours instruire le modèle pour produire du JSON via un message dans la conversation, par exemple via ton message système. Si tu n'inclus pas une instruction explicite pour générer du JSON, le modèle peut générer un flux sans fin d'espaces blancs et la demande peut s'exécuter continuellement jusqu'à atteindre la limite de jetons.
Avec les instructions ci-dessus, nous pouvons mettre l'objet JSON à traduire dans le message suivant avec le rôle user
. Composons ce que nous avons jusqu'à présent :
Gestion de la sortie
Puisque nous utilisons le mode de diffusion, nous devons gérer la sortie avec le style de diffusion. Voici un exemple :
Conclusion
C'est tout ! Avec le nouveau modèle ChatGPT, l'efficacité de la traduction JSON a été encore améliorée, et la qualité de la traduction est également meilleure. J'espère que cet article t'aidera à acquérir de nouvelles perspectives sur ChatGPT et la traduction JSON. À bientôt dans le prochain article !