Das Aufrufen von Claude über Bedrock unterscheidet sich etwas von der Vorgehensweise, die Sie beim Verwenden der Client-SDKs von Anthropic anwenden würden. Diese Anleitung führt Sie durch den Prozess der Durchführung eines API-Aufrufs an Claude auf Bedrock in Python oder TypeScript.

Beachten Sie, dass diese Anleitung davon ausgeht, dass Sie sich bereits für ein AWS-Konto angemeldet und den programmatischen Zugriff konfiguriert haben.

Installieren und Konfigurieren der AWS CLI

  1. Installieren Sie eine Version der AWS CLI mit der Version 2.13.23 oder neuer
  2. Konfigurieren Sie Ihre AWS-Anmeldeinformationen mit dem Befehl AWS configure (siehe Konfigurieren der AWS CLI) oder finden Sie Ihre Anmeldeinformationen, indem Sie in Ihrem AWS-Dashboard zu “Befehlszeilen- oder programmatischer Zugriff” navigieren und den Anweisungen im Popup-Fenster folgen.
  3. Überprüfen Sie, ob Ihre Anmeldeinformationen funktionieren:
Shell
aws sts get-caller-identity

Installieren eines SDKs für den Zugriff auf Bedrock

Die Client-SDKs von Anthropic unterstützen Bedrock. Sie können auch direkt ein AWS SDK wie boto3 verwenden.

pip install -U "anthropic[bedrock]"

Zugriff auf Bedrock

Abonnieren von Anthropic-Modellen

Gehen Sie zu AWS Console > Bedrock > Model Access und fordern Sie Zugriff auf Anthropic-Modelle an. Beachten Sie, dass die Verfügbarkeit von Anthropic-Modellen je nach Region variiert. Aktuelle Informationen finden Sie in der AWS-Dokumentation.

API-Modellnamen

ModellBedrock API-Modellname
Claude 3 Haikuanthropic.claude-3-haiku-20240307-v1:0
Claude 3 Sonnetanthropic.claude-3-sonnet-20240229-v1:0
Claude 3 Opusanthropic.claude-3-opus-20240229-v1:0

Auflisten verfügbarer Modelle

Die folgenden Beispiele zeigen, wie Sie eine Liste aller über Bedrock verfügbaren Claude-Modelle ausgeben:

aws bedrock list-foundation-models --region=us-west-2 --by-provider anthropic --query "modelSummaries[*].modelId"

Anfragen stellen

Die folgenden Beispiele zeigen, wie Sie mit Claude 3 Sonnet auf Bedrock Text generieren:

from anthropic import AnthropicBedrock

client = AnthropicBedrock(
    # Authentifizieren Sie sich entweder durch Angabe der unten stehenden Schlüssel oder verwenden Sie die Standard-AWS-Anmeldeinformationsanbieter, wie z. B.
    # die Verwendung von ~/.aws/credentials oder der Umgebungsvariablen "AWS_SECRET_ACCESS_KEY" und "AWS_ACCESS_KEY_ID".
    aws_access_key="<access key>",
    aws_secret_key="<secret key>",
    # Temporäre Anmeldeinformationen können mit aws_session_token verwendet werden.
    # Weitere Informationen finden Sie unter https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html.
    aws_session_token="<session_token>",
    # aws_region ändert die AWS-Region, an die die Anfrage gesendet wird. Standardmäßig lesen wir AWS_REGION,
    # und wenn das nicht vorhanden ist, verwenden wir standardmäßig us-east-1. Beachten Sie, dass wir ~/.aws/config nicht für die Region lesen.
    aws_region="us-west-2",
)

message = client.messages.create(
    model="anthropic.claude-3-sonnet-20240229-v1:0",
    max_tokens=256,
    messages=[{"role": "user", "content": "Hello, world"}]
)
print(message.content)

Weitere Details finden Sie in unseren Client-SDKs und in der offiziellen Bedrock-Dokumentation hier.