L’API Text Completions a été dépréciée en faveur de l’API Messages.
Entrées et sorties
Le plus grand changement entre les Complétions de Texte et les Messages est la façon dont vous spécifiez les entrées du modèle et recevez les sorties du modèle. Avec les Complétions de Texte, les entrées sont des chaînes brutes :Python
role et un content.
Noms des rôlesL’API Text Completions attend des tours alternés
\n\nHuman: et \n\nAssistant:, mais l’API Messages attend des rôles user et assistant. Vous pourriez voir de la documentation faisant référence aux tours “human” ou “user”. Ceux-ci font référence au même rôle, et ce sera “user” à l’avenir.completion de la réponse :
Python
content, qui est une liste de blocs de contenu :
Python
Mettre des mots dans la bouche de Claude
Avec les Complétions de Texte, vous pouvez pré-remplir une partie de la réponse de Claude :Python
assistant :
Python
content de la réponse continuera à partir du content du dernier message d’entrée :
JSON
Prompt système
Avec les Complétions de Texte, le prompt système est spécifié en ajoutant du texte avant le premier tour\n\nHuman: :
Python
system :
Python
Noms des modèles
L’API Messages exige que vous spécifiiez la version complète du modèle (par exempleclaude-sonnet-4-5-20250929).
Nous avons précédemment pris en charge la spécification uniquement du numéro de version majeure (par exemple claude-2), ce qui entraînait des mises à niveau automatiques vers les versions mineures. Cependant, nous ne recommandons plus ce modèle d’intégration, et Messages ne le prennent pas en charge.
Raison d’arrêt
Les Complétions de Texte ont toujours unstop_reason de soit :
"stop_sequence": Le modèle a soit terminé son tour naturellement, soit l’une de vos séquences d’arrêt personnalisées a été générée."max_tokens": Soit le modèle a généré votremax_tokensspécifié de contenu, soit il a atteint son maximum absolu.
stop_reason de l’une des valeurs suivantes :
"end_turn": Le tour conversationnel s’est terminé naturellement."stop_sequence": L’une de vos séquences d’arrêt personnalisées spécifiées a été générée."max_tokens": (inchangé)
Spécification des tokens maximum
- Complétions de Texte : paramètre
max_tokens_to_sample. Pas de validation, mais valeurs plafonnées par modèle. - Messages : paramètre
max_tokens. Si vous passez une valeur supérieure à ce que le modèle prend en charge, retourne une erreur de validation.
Format de streaming
Lors de l’utilisation de"stream": true avec les Complétions de Texte, la réponse incluait n’importe lequel des événements server-sent-events completion, ping, et error.
Messages peuvent contenir plusieurs blocs de contenu de types variés, et donc son format de streaming est quelque peu plus complexe. Voir Streaming Messages pour les détails.