View a markdown version of this page

Inferenz mithilfe der Anthropic Messages API - Amazon Bedrock

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Inferenz mithilfe der Anthropic Messages API

Die Anthropic Messages API bietet systemeigenen Zugriff auf Claude-Modelle im Anforderungs- und Antwortformat von Anthropic. Sie können die Messages-API sowohl auf den Endpunkten als auch auf den bedrock-mantle bedrock-runtime Endpunkten verwenden, sodass Sie flexibel den Authentifizierungs- und Integrationsstil wählen können, der zu Ihrer Anwendung passt.

Endpunkt Basis-URL Anwendungsfall
bedrock-mantle https://bedrock-mantle.{region}.api.aws/anthropic/v1/messages Für neue Anwendungen empfohlen. Unterstützt API-Schlüsselauthentifizierung undArbeitsbereiche () Anthropic-compatible.
bedrock-runtime https://bedrock-runtime.{region}.amazonaws.com Verwendung mit vorhandenen AWS SDK-Integrationen und Aufrufprotokollierung.

Unterstützte Regionen

Die Nachrichten-API ist auf dem bedrock-mantle Endpunkt in allen Regionen verfügbar, die dies unterstützen bedrock-mantle (sieheUnterstützte Regionen und Endpunkte). Am bedrock-runtime Endpunkt ist sie in allen Regionen verfügbar, in denen Claude-Modelle verfügbar sind. Details dazu finden Sie unter Regionale Verfügbarkeit.

Voraussetzungen

Bevor Sie die Nachrichten-API verwenden, stellen Sie sicher, dass Sie über Folgendes verfügen:

  • Modellzugriff — Fordern Sie Zugriff auf Claude-Modelle in der Amazon Bedrock-Konsole an. Siehe Zugriff auf Modelle beantragen.

  • Authentifizierung — Hängt vom Endpunkt ab:

    • bedrock-mantle— Verwenden Sie einen Amazon Bedrock API-Schlüssel (sieheAPI-Schlüssel) oder AWS SigV4-Anmeldeinformationen.

    • bedrock-runtime— Verwenden Sie AWS SigV4-Anmeldeinformationen über das AWS SDK (boto3 usw.).

  • Anthropischer Versionsheader — Alle Anfragen erfordern eine API-Version:

    • bedrock-mantle: anthropic-version: 2023-06-01 Als HTTP-Header festgelegt.

    • bedrock-runtime: Wird "anthropic_version": "bedrock-2023-05-31" im Hauptteil der Anfrage festgelegt.

Grundlegende Anfrage

Um eine einfache Nachricht an ein Claude-Modell zu senden, wählen Sie die Registerkarte für Ihre bevorzugte Methode und folgen Sie dann den Schritten:

bedrock-mantle (curl)
curl -X POST https://bedrock-mantle.us-east-1.api.aws/anthropic/v1/messages \ -H "x-api-key: $BEDROCK_API_KEY" \ -H "anthropic-version: 2023-06-01" \ -H "Content-Type: application/json" \ -d '{ "model": "anthropic.claude-sonnet-4-6-v1", "max_tokens": 1024, "messages": [ {"role": "user", "content": "Explain quantum computing in one sentence."} ] }'
bedrock-runtime (Python)
import boto3 import json client = boto3.client("bedrock-runtime", region_name="us-east-1") response = client.invoke_model( modelId="anthropic.claude-sonnet-4-6-v1", body=json.dumps({ "anthropic_version": "bedrock-2023-05-31", "max_tokens": 1024, "messages": [ {"role": "user", "content": "Explain quantum computing in one sentence."} ] }) ) result = json.loads(response["body"].read()) print(result["content"][0]["text"])
bedrock-runtime (AWS CLI)

Verwenden Sie die AWS CLI, um das Modell aufzurufen:

aws bedrock-runtime invoke-model \ --model-id anthropic.claude-sonnet-4-6-v1 \ --body '{ "anthropic_version": "bedrock-2023-05-31", "max_tokens": 1024, "messages": [ {"role": "user", "content": "Explain quantum computing in one sentence."} ] }' \ --cli-binary-format raw-in-base64-out \ output.json
bedrock-runtime (curl)

Sie können bedrock-runtime direkt mit curl aufrufen, indem Sie die Anfrage mit AWS SigV4 signieren. Das folgende Beispiel verwendet das eingebaute --aws-sigv4 Flag von Curl (verfügbar in Curl 7.75.0 und höher):

curl -X POST \ "https://bedrock-runtime.us-east-1.amazonaws.com/model/anthropic.claude-sonnet-4-6-v1/invoke" \ -H "Content-Type: application/json" \ --aws-sigv4 "aws:amz:us-east-1:bedrock" \ --user "$AWS_ACCESS_KEY_ID:$AWS_SECRET_ACCESS_KEY" \ -d '{ "anthropic_version": "bedrock-2023-05-31", "max_tokens": 1024, "messages": [ {"role": "user", "content": "Explain quantum computing in one sentence."} ] }'
Anmerkung

Wenn Sie temporäre Anmeldeinformationen von AWS STS verwenden (z. B. eine angenommene Rolle), übergeben Sie auch das Sitzungstoken, indem Sie es der Anfrage hinzufügen-H "X-Amz-Security-Token: $AWS_SESSION_TOKEN". Für die meisten Anwendungsfälle empfehlen wir die AWS SDKs oder CLI, die das Signieren von Anfragen und die Aktualisierung der Anmeldeinformationen automatisch übernehmen.

Antworten streamen

Um Antwort-Token während ihrer Generierung inkrementell zu erhalten, wählen Sie die Registerkarte für Ihre bevorzugte Methode und folgen Sie dann den Schritten:

bedrock-mantle (curl)
curl -X POST https://bedrock-mantle.us-east-1.api.aws/anthropic/v1/messages \ -H "x-api-key: $BEDROCK_API_KEY" \ -H "anthropic-version: 2023-06-01" \ -H "Content-Type: application/json" \ -d '{ "model": "anthropic.claude-sonnet-4-6-v1", "max_tokens": 1024, "stream": true, "messages": [ {"role": "user", "content": "Write a short poem about cloud computing."} ] }'
bedrock-runtime (Python)
import boto3 import json client = boto3.client("bedrock-runtime", region_name="us-east-1") response = client.invoke_model_with_response_stream( modelId="anthropic.claude-sonnet-4-6-v1", body=json.dumps({ "anthropic_version": "bedrock-2023-05-31", "max_tokens": 1024, "messages": [ {"role": "user", "content": "Write a short poem about cloud computing."} ] }) ) for event in response["body"]: chunk = json.loads(event["chunk"]["bytes"]) if chunk["type"] == "content_block_delta": print(chunk["delta"]["text"], end="")

Unterstützte Features

Zusätzlich zu den obigen Abschnitten Erweitertes Denken, Adaptives Denken, Strukturierte Ausgaben, Komprimierung, Fallback-Gutschrift für abgelehnte Anfragen (Beta) und Mid-conversation Systemnachrichten unterstützt die Nachrichten-API die folgenden Funktionen mit Claude-Modellen:

  • Systemaufforderungen — Legen Sie das Modellverhalten mit einem Parameter fest. system

  • Multi-turn Konversationen — Geben Sie user abwechselnd assistant Nachrichten weiter.

  • Verwendung von Werkzeugen — Definieren Sie Werkzeuge, die das Modell aufrufen kann. Siehe Verwenden eines Tools, um eine Amazon-Bedrock-Modellantwort zu vervollständigen.

  • Vision — Senden Sie Bilder im content Array zusammen mit Text.

  • Promptes Caching — Zwischenspeichern Sie häufig verwendeten Kontext im Cache, um Latenz und Kosten zu reduzieren.

Die vollständige Referenz zu den Anforderungs- und Antwortfeldern der Messages-API finden Sie unterAnforderung und Antwort.

Zählen Sie Tokens

Um die Anzahl der Eingabe-Token zu zählen, die eine Anfrage verbrauchen würde, bevor sie zur Inferenz gesendet wird, verwenden Sie den anthropischen count_tokens Pfad auf dem bedrock-mantle Endpunkt. Dies ist der einzige Pfad zum Zählen von Tokens, der für Claude-Modelle unterstützt wird, die nicht auf einem Region-specific Endpunkt verfügbar sind, einschließlich Claude-Modellen, die nur bedrock-runtime mit Cross-Region Inference (CRIS) gestartet werden. Einzelheiten und ein Beispiel finden Sie unter Zählen Sie Token mithilfe des Bedrock-Mantle-Endpunkts.