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 mithilfe des Anthropic-Anfrage- und Antwortformats. Sie können die Messages-API sowohl auf den Endpunkten als auch auf den Endpunkten bedrock-runtime verwenden. bedrock-mantle Für neue Anwendungen empfehlen wir den bedrock-runtime Endpunkt.
| Endpunkt |
Basis-URL |
Anwendungsfall |
bedrock-runtime |
https://bedrock-runtime.{region}.amazonaws.com/anthropic |
Für neue Anwendungen empfohlen. Verwendet AWS SDK-Integrationen, IAM-Authentifizierung und Aufrufprotokollierung. |
bedrock-mantle |
https://bedrock-mantle.{region}.api.aws/anthropic/v1/messages |
Unterstützt die Amazon Bedrock API-Schlüsselauthentifizierung und. Arbeitsbereiche () Anthropic-compatible |
Unterstützte Regionen
Die Nachrichten-API ist auf dem bedrock-runtime Endpunkt in allen Regionen verfügbar, in denen Claude-Modelle verfügbar sind. Details dazu finden Sie unter Regionale Verfügbarkeit nach Modellen. Auf dem bedrock-mantle Endpunkt ist sie in allen Regionen verfügbar, die Unterstützung bieten bedrock-mantle (sieheUnterstützte Regionen und Endpunkte).
Voraussetzungen
Bevor Sie die Nachrichten-API verwenden, stellen Sie sicher, dass Sie über Folgendes verfügen:
-
Modellzugriff — Fordern Sie in der Amazon Bedrock-Konsole Zugriff auf Claude-Modelle an. Siehe Zugang zu Modellen anfordern.
-
Authentifizierung — Hängt vom Endpunkt ab:
-
bedrock-runtime— Verwenden Sie AWS SigV4-Anmeldeinformationen über das AWS SDK (boto3 usw.), einen Amazon Bedrock-API-Schlüssel (sieheAPI-Schlüssel) oder ein kurzfristiges Bedrock-Bearer-Token, das aus AWS Anmeldeinformationen mit der aws-bedrock-token-generator-Bibliothek generiert wurde. https://pypi.org/project/aws-bedrock-token-generator/
-
bedrock-mantle— Verwenden Sie einen Amazon Bedrock-API-Schlüssel (siehe) oder SigV4-Anmeldeinformationen. API-Schlüssel AWS
-
Anthropischer Versionsheader — Für alle Anfragen ist eine API-Version erforderlich:
-
bedrock-runtime: Wird beim Aufrufen "anthropic_version": "bedrock-2023-05-31" InvokeModel im Anfragetext festgelegt. Das Anthropic SDK fügt den erforderlichen Header bei Verwendung automatisch hinzubase_url=https://bedrock-runtime.{region}.amazonaws.com/anthropic.
-
bedrock-mantle: anthropic-version: 2023-06-01 Als HTTP-Header festgelegt.
Grundlegende Anfrage
Um eine einfache Nachricht an ein Claude-Modell zu senden, wählen Sie den Tab für Ihre bevorzugte Methode und folgen Sie dann den Schritten:
- bedrock-runtime (Python, Anthropic SDK)
-
Verwenden Sie das Anthropic SDK gegen die /anthropic Route des bedrock-runtime Endpunkts mit einem kurzfristigen Bedrock-Bearer-Token, das von aws-bedrock-token-generator generiert wurde:
from anthropic import Anthropic
from aws_bedrock_token_generator import provide_token
token = provide_token(region="us-east-1")
client = Anthropic(
base_url="https://bedrock-runtime.us-east-1.amazonaws.com/anthropic",
api_key=token,
)
response = client.messages.create(
model="global.anthropic.claude-sonnet-5",
max_tokens=1024,
messages=[
{"role": "user", "content": "Explain quantum computing in one sentence."}
]
)
print(response.content[0].text)
- bedrock-runtime (Python, boto3)
-
import boto3
import json
client = boto3.client("bedrock-runtime", region_name="us-east-1")
response = client.invoke_model(
modelId="anthropic.claude-sonnet-5",
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)
-
AWS Verwenden Sie die CLI, um das Modell aufzurufen:
aws bedrock-runtime invoke-model \
--model-id anthropic.claude-sonnet-5 \
--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 anrufen, 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-5/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."}
]
}'
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 die CLI, die das Signieren von Anfragen und das Aktualisieren der Anmeldeinformationen automatisch verarbeiten.
- bedrock-runtime (curl, API key)
-
Sie können auch bedrock-runtime mit einem Amazon Bedrock-API-Schlüssel über die Anthropic-native /anthropic/v1/messages Route anrufen, genau wie folgt: bedrock-mantle
curl -X POST https://bedrock-runtime.us-east-1.amazonaws.com/anthropic/v1/messages \
-H "x-api-key: $AWS_BEARER_TOKEN_BEDROCK" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "us.anthropic.claude-sonnet-5",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "Explain quantum computing in one sentence."}
]
}'
- 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-5",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "Explain quantum computing in one sentence."}
]
}'
Antworten streamen
Um Antwort-Token bei der Generierung schrittweise zu erhalten, wählen Sie den Tab für Ihre bevorzugte Methode und folgen Sie dann den Schritten:
- bedrock-runtime (Python, Anthropic SDK)
-
from anthropic import Anthropic
from aws_bedrock_token_generator import provide_token
token = provide_token(region="us-east-1")
client = Anthropic(
base_url="https://bedrock-runtime.us-east-1.amazonaws.com/anthropic",
api_key=token,
)
with client.messages.stream(
model="global.anthropic.claude-sonnet-5",
max_tokens=1024,
messages=[
{"role": "user", "content": "Write a short poem about cloud computing."}
],
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)
- bedrock-runtime (Python, boto3)
-
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-5",
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="")
- bedrock-runtime (curl, API key)
-
curl -X POST https://bedrock-runtime.us-east-1.amazonaws.com/anthropic/v1/messages \
-H "x-api-key: $AWS_BEARER_TOKEN_BEDROCK" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "us.anthropic.claude-sonnet-5",
"max_tokens": 1024,
"stream": true,
"messages": [
{"role": "user", "content": "Write a short poem about cloud computing."}
]
}'
- 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-5",
"max_tokens": 1024,
"stream": true,
"messages": [
{"role": "user", "content": "Write a short poem about cloud computing."}
]
}'
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 bei Claude-Modellen die folgenden Funktionen:
-
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.
-
Prompt-Caching — Häufig verwendeter Kontext wird zwischengespeichert, um Latenz und Kosten zu reduzieren.
Die vollständige Referenz zum Anforderungs- und Antwortfeld der Nachrichten-API finden Sie unterAnforderung und Antwort.
Zähle die 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 zur Tokenzählung, der für Claude-Modelle unterstützt wird, die auf einem Region-specific Endpunkt nicht verfügbar sind, einschließlich Claude-Modellen, die nur bedrock-runtime mit regionsübergreifender Inferenz (CRIS) gestartet werden. Einzelheiten und ein Beispiel finden Sie unter Zählen Sie die Token mithilfe des Bedrock-Mantle-Endpunkts.