L’API Messages est sans état, ce qui signifie que vous envoyez toujours l’historique complet de la conversation à l’API. Vous pouvez utiliser ce modèle pour construire une conversation au fil du temps. Les tours de conversation antérieurs n’ont pas nécessairement besoin de provenir réellement de Claude — vous pouvez utiliser des messages assistant synthétiques.
Shell
#!/bin/shcurl https://api.anthropic.com/v1/messages \--header"x-api-key: $ANTHROPIC_API_KEY"\--header"anthropic-version: 2023-06-01"\--header"content-type: application/json"\--data\'{"model":"claude-opus-4-20250514","max_tokens":1024,"messages":[{"role":"user", "content":"Hello, Claude"},{"role":"assistant", "content":"Hello!"},{"role":"user", "content":"Can you describe LLMs to me?"}]}'
Python
import anthropicmessage = anthropic.Anthropic().messages.create( model="claude-opus-4-20250514", max_tokens=1024, messages=[{"role":"user","content":"Hello, Claude"},{"role":"assistant","content":"Hello!"},{"role":"user","content":"Can you describe LLMs to me?"}],)print(message)
TypeScript
import Anthropic from'@anthropic-ai/sdk';const anthropic =newAnthropic();await anthropic.messages.create({ model:'claude-opus-4-20250514', max_tokens:1024, messages:[{"role":"user","content":"Hello, Claude"},{"role":"assistant","content":"Hello!"},{"role":"user","content":"Can you describe LLMs to me?"}]});
JSON
{"id":"msg_018gCsTGsXkYJVqYPxTgDHBU","type":"message","role":"assistant","content":[{"type":"text","text":"Sure, I'd be happy to provide..."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":30,"output_tokens":309}}
Vous pouvez pré-remplir une partie de la réponse de Claude à la dernière position de la liste des messages d’entrée. Cela peut être utilisé pour façonner la réponse de Claude. L’exemple ci-dessous utilise "max_tokens": 1 pour obtenir une seule réponse à choix multiple de Claude.
#!/bin/shcurl https://api.anthropic.com/v1/messages \--header"x-api-key: $ANTHROPIC_API_KEY"\--header"anthropic-version: 2023-06-01"\--header"content-type: application/json"\--data\'{"model":"claude-opus-4-20250514","max_tokens":1,"messages":[{"role":"user", "content":"What is latin for Ant? (A) Apoidea, (B) Rhopalocera, (C) Formicidae"},{"role":"assistant", "content":"The answer is ("}]}'
Claude peut lire à la fois du texte et des images dans les requêtes. Nous prenons en charge les types de source base64 et url pour les images, ainsi que les types de médias image/jpeg, image/png, image/gif et image/webp. Consultez notre guide de vision pour plus de détails.
#!/bin/sh# Option 1: Base64-encoded imageIMAGE_URL="https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg"IMAGE_MEDIA_TYPE="image/jpeg"IMAGE_BASE64=$(curl"$IMAGE_URL"| base64)curl https://api.anthropic.com/v1/messages \--header"x-api-key: $ANTHROPIC_API_KEY"\--header"anthropic-version: 2023-06-01"\--header"content-type: application/json"\--data\'{"model":"claude-opus-4-20250514","max_tokens":1024,"messages":[{"role":"user", "content":[{"type":"image", "source":{"type":"base64","media_type":"'$IMAGE_MEDIA_TYPE'","data":"'$IMAGE_BASE64'"}},{"type":"text", "text":"What is in the above image?"}]}]}'# Option 2: URL-referenced imagecurl https://api.anthropic.com/v1/messages \--header"x-api-key: $ANTHROPIC_API_KEY"\--header"anthropic-version: 2023-06-01"\--header"content-type: application/json"\--data\'{"model":"claude-opus-4-20250514","max_tokens":1024,"messages":[{"role":"user", "content":[{"type":"image", "source":{"type":"url","url":"https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg"}},{"type":"text", "text":"What is in the above image?"}]}]}'
JSON
{"id":"msg_01EcyWo6m4hyW8KHs2y2pei5","type":"message","role":"assistant","content":[{"type":"text","text":"This image shows an ant, specifically a close-up view of an ant. The ant is shown in detail, with its distinct head, antennae, and legs clearly visible. The image is focused on capturing the intricate details and features of the ant, likely taken with a macro lens to get an extreme close-up perspective."}],"model":"claude-opus-4-20250514","stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":1551,"output_tokens":71}}
Utilisation d’outils, mode JSON et utilisation d’ordinateur (bêta)
Consultez notre guide pour des exemples d’utilisation d’outils avec l’API Messages.
Consultez notre guide d’utilisation d’ordinateur (bêta) pour des exemples de contrôle d’environnements informatiques de bureau avec l’API Messages.