Claude 3-Modelle von Anthropic verwenden

Anthropic Claude 3-Modelle in Vertex AI bieten vollständig verwaltete und serverlose Modelle als APIs. Wenn Sie ein Claude-Modell für Vertex AI verwenden möchten, senden Sie eine Anfrage direkt an den API-Endpunkt von Vertex AI. Da Anthropic Claud 3-Modelle eine verwaltete API verwenden, muss keine Infrastruktur bereitgestellt oder verwaltet werden.

Sie können Ihre Claude-Antworten streamen, um die vom Endnutzer wahrgenommene Latenz zu reduzieren. Eine gestreamte Antwort verwendet vom Server gesendete Ereignisse (SSE, Server-Sent Events), um die Antwort schrittweise zu streamen.

Sie zahlen für Claude-Modelle, sobald sie verwendet werden. Weitere Informationen finden Sie im Abschnitt zu Anthropic Claude-Modellen auf der Vertex AI-Preisseite.

Verfügbare Anthropic Claude-Modelle

Wenn Sie auf ein Anthropic Claude-Modell zugreifen möchten, rufen Sie den Model Garden auf, suchen nach Claude und wählen das gewünschte Claude-Modell aus. Alle Claude 3-Modelle verarbeiten Bilder, geben Textausgaben zurück und haben ein Kontextfenster von 200.000. Sie können auch die folgenden Links verwenden, um zu Modellkarten für die in Vertex AI verfügbaren Claude-Modelle zu gelangen:

Claude 3 Sonnet

Anthropic Claude 3 Sonnet bietet ein ausgewogenes Intelligence/Tempo-Verhältnis für Unternehmensarbeitslasten. Es ist ein High-End-Modell für skalierte KI, das zu einem wettbewerbsfähigen Preis verfügbar ist. Claude 3 Sonnet ist für folgende Anwendungsfälle optimiert:

  • Datenverarbeitung, einschließlich Retrieval Augmented Generation (RAG) und Suchabruf.

  • Vertriebsaufgaben wie Produktempfehlungen, Prognosen und gezieltes Marketing

  • Aufgaben zur Zeiteinsparung, darunter Codegenerierung, Qualitätskontrolle und optische Zeichenerkennung (Optical Character Recognition, OCR) in Bildern.

  • Vision-Aufgaben, z. B. die Verarbeitung von Bildern, um eine Textausgabe zurückzugeben. Außerdem können Diagramme, Grafiken, technische Diagramme, Berichte und andere visuelle Inhalte analysiert werden.

Claude 3 Haiku

Anthropic Claude 3 Haiku ist das schnellste, kompaktste Modell von Anthropic. Er wurde entwickelt, um schnell auf Anfragen und Anforderungen zu reagieren. Sie können damit KI-Umgebungen erstellen, die menschliche Interaktionen imitieren. Claude 3 Haiku wurde für folgende Anwendungsfälle optimiert:

  • Live-Kundeninteraktionen und Übersetzungen

  • Inhalte moderieren, um verdächtiges Verhalten oder verdächtige Kundenanfragen zu erkennen.

  • Aufgaben zur Kosteneinsparung, darunter Inventarverwaltung und Wissensextraktion aus unstrukturierten Daten.

  • Vision-Aufgaben wie das Verarbeiten von Bildern für die Ausgabe von Texten oder die Analyse von Diagrammen, Grafiken, technischen Diagrammen, Berichten und anderen visuellen Inhalten.

Claude-Modelle verwenden

Sie können Anthropic SDK- oder curl-Befehle verwenden, um Anfragen mit den folgenden Modellnamen an den Vertex AI-Endpunkt zu senden:

  • Verwenden Sie für Claude 3 Sonnet claude-3-sonnet@20240229.
  • Verwenden Sie für Claude 3 Haiku claude-3-haiku@20240307.

Die Verwendung der Modellversionen von Anthropic Claude 3 ohne ein Suffix, das mit einem @-Symbol (claude-3-sonnet oder claude-3-haiku) beginnt, wird nicht empfohlen.

Hinweise

Führen Sie die folgenden Schritte aus, um Anthropic Claude 3-Modelle mit Vertex AI zu verwenden. Die Vertex AI API (aiplatform.googleapis.com) muss aktiviert sein, um Vertex AI verwenden zu können. Wenn Sie bereits ein Projekt mit aktivierter Vertex AI API haben, können Sie dieses Projekt verwenden, anstatt ein neues Projekt zu erstellen.

Sie müssen die erforderlichen Berechtigungen haben, um Anthropic Claude 3-Modelle zu aktivieren. Weitere Informationen finden Sie unter Erforderliche Berechtigungen erteilen.

  1. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  2. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  4. Vertex AI API aktivieren.

    Aktivieren Sie die API

  5. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  6. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  7. Vertex AI API aktivieren.

    Aktivieren Sie die API

  8. Sie brauchen die entsprechenden Berechtigungen, um Anthropic Claude-Modelle zu aktivieren und eine Aufforderung zu senden. Weitere Informationen finden Sie unter Erforderliche Berechtigungen zum Aktivieren von Claude-Modellen und zum Senden von Eingabeaufforderungen festlegen.
  9. Rufen Sie eine der folgenden Model Garden-Modellkarten auf und klicken Sie auf Aktivieren:

Anthropic SDK verwenden

Mit dem Anthropic Claude SDK können Sie API-Anfragen an Anthropic Claude-Modelle senden. Hier finden Sie weitere Informationen:

Mit dem Anthropic Vertex SDK einen Streaming-Aufruf an ein Claude 3-Modell senden

Im folgenden Codebeispiel wird das Anthropic Vertex SDK verwendet, um einen Streaming-Aufruf an ein Anthropic Claude 3-Modell auszuführen.

Python

Informationen zum Installieren oder Aktualisieren von Python finden Sie unter Vertex AI SDK für Python installieren. Weitere Informationen finden Sie in der Referenzdokumentation zur Python API.

# TODO(developer): Vertex AI SDK - uncomment below & run
# pip3 install --upgrade --user google-cloud-aiplatform
# gcloud auth application-default login
# pip3 install -U 'anthropic[vertex]'

from anthropic import AnthropicVertex

def generate_text_streaming(project_id: str, region: str) -> str:
    client = AnthropicVertex(region=region, project_id=project_id)
    result = []

    with client.messages.stream(
        model="claude-3-sonnet@20240229",
        max_tokens=1024,
        messages=[
            {
                "role": "user",
                "content": "Send me a recipe for banana bread.",
            }
        ],
    ) as stream:
        for text in stream.text_stream:
            print(text, end="", flush=True)
            result.append(text)

    return "".join(result)

Mit dem Anthropic Vertex SDK einen unären Aufruf an ein Claude 3-Modell senden

Im folgenden Codebeispiel wird das Anthropic Vertex SDK verwendet, um einen unären Aufruf an ein Anthropic Claude 3-Modell auszuführen.

Python

Informationen zum Installieren oder Aktualisieren von Python finden Sie unter Vertex AI SDK für Python installieren. Weitere Informationen finden Sie in der Referenzdokumentation zur Python API.

# TODO(developer): Vertex AI SDK - uncomment below & run
# pip3 install --upgrade --user google-cloud-aiplatform
# gcloud auth application-default login
# pip3 install -U 'anthropic[vertex]'

from anthropic import AnthropicVertex

def generate_text(project_id: str, region: str) -> object:
    client = AnthropicVertex(region=region, project_id=project_id)
    message = client.messages.create(
        model="claude-3-sonnet@20240229",
        max_tokens=1024,
        messages=[
            {
                "role": "user",
                "content": "Send me a recipe for banana bread.",
            }
        ],
    )
    print(message.model_dump_json(indent=2))
    return message

curl-Befehl verwenden

Mit einem curl-Befehl können Sie eine Anfrage an den Vertex AI-Endpunkt senden. Der curl-Befehl gibt an, welches unterstützte Anthropic Claude-Modell Sie verwenden möchten:

  • Verwenden Sie für Claude 3 Sonnet claude-3-sonnet@20240229.
  • Verwenden Sie für Claude 3 Haiku claude-3-haiku@20240307.

Die Verwendung der Modellversionen von Anthropic Claude 3 ohne ein Suffix, das mit einem @-Symbol (claude-3-sonnet oder claude-3-haiku) beginnt, wird nicht empfohlen.

Im folgenden Thema erfahren Sie, wie Sie einen curl-Befehl erstellen. Es enthält außerdem einen curl-Beispielbefehl. Der curl-Beispielbefehl verwendet das Claude 3 Sonnet-Modell.

REST

Senden Sie zum Testen eines Text-Prompts mit der Vertex AI API eine POST-Anfrage an den Endpunkt des Publisher-Modells.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • LOCATION: Eine Region, die Anthropic-Claude-Modelle unterstützt. Claude 3 Sonnet ist in folgenden Regionen verfügbar:
    • us-central1 (Iowa)
    • asia-southeast1 (Singapore)
    Claude 3 Haiku ist in den folgenden Regionen verfügbar:
    • us-central1 (Iowa)
    • europe-west4 (Netherlands)
  • MODEL ist der Modellname, den Sie verwenden möchten. Verwenden Sie für Claude 3 Haiku claude-3-haiku@20240307. Verwenden Sie für Claude 3 Sonnet claude-3-sonnet@20240229.
  • ROLE ist die einer Nachricht zugeordnete Rolle. Sie können user oder assistant angeben. Die erste Nachricht muss die Rolle user haben. Claude-Modelle arbeiten mit abwechselnden user- und assistant-Rotationen. Wenn die endgültige Nachricht die Rolle assistant verwendet, wird der Antwortinhalt direkt vom Inhalt dieser Nachricht aus fortgesetzt. Damit können Sie einen Teil der Antwort des Modells einschränken.
  • STREAM ist ein boolescher Wert, mit dem angegeben wird, ob die Antwort gestreamt wird oder nicht. Streamen Sie Ihre Antwort, um die Wahrnehmung der Endnutzungslatenz zu reduzieren. Setzen Sie diesen Wert auf true, um die Antwort zu streamen, und auf false, um die Antwort auf einmal zurückzugeben.
  • CONTENT: Der Inhalt, z. B. Text der user- oder assistant-Nachricht.
  • MAX_OUTPUT_TOKENS: Maximale Anzahl an Tokens, die in der Antwort generiert werden können. Ein Token besteht aus etwa 3,5 Zeichen. 100 Tokens entsprechen etwa 60–80 Wörtern.

    Geben Sie kürzere Werte für kürzere Antworten und höhere Werte für längere Antworten an.

  • TOP_P (Optional): Der Wert „Top-P“ ändert, wie das Modell Tokens für die Ausgabe auswählt. Die Tokens werden von den wahrscheinlichsten (siehe „Top-K“) bis zu den unwahrscheinlichsten Werten ausgewählt, bis die Summe ihrer Wahrscheinlichkeiten dem „Top-P“-Wert entspricht. Beispiel: Wenn die Tokens A, B und C eine Wahrscheinlichkeit von 0,3, 0,2 und 0,1 haben und der „Top-P“-Wert 0.5 ist, wählt das Modell anhand der Temperatur entweder A oder B als das nächste Token und C als Kandidaten ausschließen.

    Geben Sie einen niedrigeren Wert für weniger zufällige Antworten und einen höheren Wert für zufälligere Antworten an.

  • TOP_K (Optional): Der Wert „Top-K“ ändert, wie das Modell Tokens für die Ausgabe auswählt. Ein „Top-K“ von 1 bedeutet, dass das nächste ausgewählte Token unter den Tokens im Modell-Vokabular (auch als gierige Decodierung bezeichnet) am wahrscheinlichsten ist, während ein „Top-K“ von3 bedeutet, dass das nächste Token mithilfe der Temperatur aus den drei wahrscheinlichsten Tokens ausgewählt wird.

    Für jeden Tokenauswahlschritt werden die „Top-K“-Tokens mit den höchsten Wahrscheinlichkeiten abgetastet. Anschließend werden Tokens weiter auf der Grundlage von „Top-P“ gefiltert, wobei das endgültige Token mithilfe von Temperaturproben ausgewählt wird.

    Geben Sie einen niedrigeren Wert für weniger zufällige Antworten und einen höheren Wert für zufälligere Antworten an.

HTTP-Methode und URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/anthropic/models/MODEL:streamRawPredict

JSON-Text der Anfrage:

{
  "anthropic_version": "vertex-2023-10-16",
  "messages": [
   {
    "role": "ROLE",
    "content": "CONTENT"
   }],
  "max_tokens": MAX_TOKENS,
  "stream": STREAM
}

Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

curl

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/anthropic/models/MODEL:streamRawPredict"

PowerShell

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/anthropic/models/MODEL:streamRawPredict" | Select-Object -Expand Content

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

Beispiel: cURL-Befehls

MODEL_ID="claude-3-sonnet@20240229"
LOCATION="us-central1"
PROJECT_ID="PROJECT_ID"

curl \
-X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://${LOCATION}-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/${LOCATION}/publishers/anthropic/models/${MODEL_ID}:streamRawPredict -d \
'{
  "anthropic_version": "vertex-2023-10-16",
  "messages": [{
    "role": "user",
    "content": "Hello!"
  }],
  "max_tokens": 50,
  "stream": true}'

Verfügbarkeit: Anthropic Claude-Region

Claude 3 Sonnet ist in folgenden Regionen verfügbar:

  • us-central1 (Iowa)
  • asia-southeast1 (Singapore)
Claude 3 Haiku ist in den folgenden Regionen verfügbar:
  • us-central1 (Iowa)
  • europe-west4 (Netherlands)

Kontingente für Anthropic Claude und unterstützte Kontextlänge

Für Claude 3 Sonnet und Claude 3 Haiku gibt es zwei Kontingente, eines für jede Region, in der sie verfügbar sind. Das Kontingent wird in Abfragen pro Minute (QPM) und Tokens pro Minute (TPM) angegeben. TPM enthält sowohl Eingabe- als auch Ausgabetokens.

Das Standardkontingentlimit und die unterstützte Kontextlänge für Claude 3 Sonnet sind:

Region Standardkontingentlimit Unterstützte Kontextlänge
us-central1 (Iowa) 60 QPM, 50.000 TPM 200.000 Tokens
asia-southeast1 (Singapore) 60 QPM, 50.000 TPM 200.000 Tokens

Das Standardkontingentlimit und die unterstützte Kontextlänge für Claude 3 Haiku sind:

Region Standardkontingentlimit Unterstützte Kontextlänge
us-central1 (Iowa) 60 QPM, 50.000 TPM 200.000 Tokens
europe-west4 (Netherlands) 60 QPM, 50.000 TPM 200.000 Tokens

Wenn Sie eines der Kontingente für die generative AI auf Vertex AI erhöhen möchten, können Sie über die Google Cloud Console eine Kontingenterhöhung anfordern. Weitere Informationen zu Kontingenten finden Sie unter Mit Kontingenten arbeiten.

Erforderliche Berechtigungen zum Aktivieren von Claude-Modellen und zum Senden von Prompts festlegen

Damit ein Nutzer Anthropic Claude-Modelle aktivieren kann, muss ein Administrator ihm die Rolle „Manager von Nutzer-Beschaffungsberechtigungen“ (Identity and Access Management, IAM) zuweisen. Nutzer, denen diese Rolle zugewiesen wurde, können Anthropic-Claude-Modelle in Model Garden aktivieren.

Damit ein Nutzer Prompt-Anfragen von Vertex AI senden kann, muss ein Administrator diesem Nutzer die Berechtigung aiplatform.endpoints.predict erteilen. Diese Berechtigung ist in der IAM-Rolle „Vertex AI-Nutzer“ enthalten. Weitere Informationen finden Sie unter Vertex AI-Nutzer und Zugriffssteuerung.

Console

  1. Um einem Nutzer die IAM-Rollen für Manager von Nutzer-Beschaffungsberechtigungen zuzuweisen, rufen Sie die Seite IAM auf.

    IAM aufrufen

  2. Suchen Sie in der Spalte Hauptkonto das Nutzer-Hauptkonto, für das Sie den Zugriff auf Anthropic Claude-Modelle aktivieren möchten, und klicken Sie dann in dieser Zeile auf Hauptkonto bearbeiten.

  3. Klicken Sie im Bereich Berechtigungen bearbeiten auf Weitere Rolle hinzufügen.

  4. Wählen Sie unter Rolle auswählen die Option Manager von Nutzer-Beschaffungsberechtigungen aus.

  5. Klicken Sie im Bereich Berechtigungen bearbeiten auf Weitere Rolle hinzufügen.

  6. Wählen Sie unter Rolle auswählen die Option Vertex AI-Nutzer aus.

  7. Klicken Sie auf Speichern.

gcloud

  1. Aktivieren Sie Cloud Shell in der Google Cloud Console.

    Cloud Shell aktivieren

  2. Weisen Sie die Rolle „Manager von Nutzer-Beschaffungsberechtigungen“ zu, die zum Aktivieren von Anthropic-Claude-Modellen in Model Garden erforderlich ist

    gcloud projects add-iam-policy-binding  PROJECT_ID \
    --member=PRINCIPAL --role=roles/consumerprocurement.entitlementManager
    
  3. Erteilen Sie die Rolle „Vertex AI-Nutzer“, die die aiplatform.endpoints.predict-Berechtigung enthält, die zum Senden von Prompts erforderlich ist:

    gcloud projects add-iam-policy-binding  PROJECT_ID \
    --member=PRINCIPAL --role=roles/aiplatform.user
    

    Ersetzen Sie PRINCIPAL durch die Kennung des Hauptkontos. Die Kennung hat das Format user|group|serviceAccount:email oder domain:domain, z. B. user:cloudysanfrancisco@gmail.com, group:admins@example.com, serviceAccount:test123@example.domain.com oder domain:example.domain.com.

    Die Ausgabe ist eine Liste von Richtlinienbindungen, die Folgendes enthält:

    - members:
      - user:PRINCIPAL
      role: roles/roles/consumerprocurement.entitlementManager
    

    Weitere Informationen finden Sie unter Einzelne Rolle zuweisen und gcloud projects add-iam-policy-binding.