Discussion

Contrôle du format de sortie des LLM et analyse des résultats

De Wikiprompt, l’encyclopédie libre de prompts

宝玉
Contribué par宝玉XSource

3 nov. 2023

Contrôle du format de sortie des LLM et analyse des résultats Guide sur le contrôle du format de sortie des LLM à l'aide de Function Calling et d'exemples few-shot, avec des extraits de code pratiques pour un parsing JSON stable.

Contenu du PromptEnregistrer

🌐
Méthode 1 : Utilisation de l'appel de fonction L'appel de fonction est une fonctionnalité d'OpenAI pour l'API GPT qui permet au LLM de décider s'il doit appeler une fonction spécifique avant de produire le résultat final. Par exemple, si un utilisateur demande la météo d'aujourd'hui, le LLM produira d'abord un résultat intermédiaire vous indiquant d'appeler une fonction liée à la météo avec le paramètre 'today'. Vous pouvez ensuite appeler la fonction météo, obtenir le résultat, et dire au LLM de produire le résultat final pour l'utilisateur. Cette fonctionnalité n'était pas initialement destinée à contrôler le format de sortie, mais elle nous donne un format JSON standard lorsqu'elle nous indique quelle fonction appeler, même avec GPT-3.5, fournissant une sortie JSON assez stable. Nous pouvons exploiter cela pour contrôler le format de sortie du LLM. Nous pouvons définir le contenu que nous voulons que ChatGPT produise comme une fonction, mais nous n'avons pas réellement besoin d'exécuter la fonction, seulement d'obtenir le résultat de sortie du LLM. Par exemple, si je veux que ChatGPT produise un objet : { "name": "John", "age": 30, "city": "New York" } Lors de l'appel à GPT, définissez une fonction avec des paramètres correspondant au format JSON souhaité : { "name": "getUserInfo", "description": "Get user information", "parameters": { "type": "object", "properties": { "name": { "type": "string", "description": "User's fullname" }, "age": { "type": "number", "description": "User's age" }, "city": { "type": "string", "description": "User's city" } }, "required": ["name", "age", "city"] } } Ensuite, lors de l'appel à GPT, vous pouvez obtenir une sortie JSON stable. La limitation est que l'API doit prendre en charge l'appel de fonction. Méthode 2 : Utilisation de few-shot avec des exemples de format de sortie Si l'API ne prend pas en charge l'appel de fonction, nous pouvons utiliser few-shot en fournissant un ou plusieurs exemples de format de sortie pour que le LLM les suive. Par exemple, lors de la traduction, je pourrais faire traduire le LLM deux fois - une fois littéralement et une fois librement - puis utiliser la traduction libre. Dans ce cas, je n'ai pas besoin du format JSON ; je peux simplement utiliser des caractères spéciaux pour séparer les deux résultats et les diviser par ces caractères pour obtenir la traduction libre. Pour le format JSON, few-shot peut également être utilisé, mais avec GPT-3.5, la stabilité n'est pas excellente et parfois le format n'est pas respecté. Assurez-vous que votre réponse peut être analysée par Python json, utilisez le format suivant comme exemple : { "name": "John", "age": 30, "city": "New York" }

Connectez-vous pour voir le prompt complet

Continuer avec:

En vous connectant, vous acceptez nos Conditions et Confidentialité

Utilisation

Ce prompt est conçu pour être utilisé avec coding. Copiez le contenu ci-dessus et collez-le dans votre outil d’IA préféré.

Pour de meilleurs résultats, personnalisez les espaces réservés (indiqués par des crochets ou des majuscules) selon vos besoins.

Références

Catégories :coding| twitter| llm| output-format

Discussion