Usar os modelos Claude 3 da Anthropic

Os modelos Anthropic Claude 3 na Vertex AI oferecem modelos totalmente gerenciados e sem servidor como APIs. Para usar um modelo Claude na Vertex AI, envie uma solicitação diretamente para o endpoint da API Vertex AI. Como os modelos do Anthropic Claude 3 usam uma API gerenciada, não é necessário provisionar ou gerenciar a infraestrutura.

É possível transmitir as respostas do Claude para reduzir a percepção de latência do usuário final. Uma resposta transmitida usa eventos enviados pelo servidor (SSE) para transmitir a resposta de forma incremental.

Você paga pelos modelos do Claude conforme eles são usados. Para mais informações, consulte a seção sobre modelos do Anthropic Claude na página de preços da Vertex Generative AI.

Modelos Anthropic Claude disponíveis

Os modelos a seguir estão disponíveis pela Anthropic para uso na Vertex Generative AI. Para acessar um modelo do Anthropic Claude 3, acesse o respectivo card do Model Garden.

Claude 3 Opus (pré-lançamento)

O Anthropic Claude 3 Opus (pré-lançamento) é o modelo mais capaz de executar tarefas complexas rapidamente. Ele foi criado para lidar com comandos abertos e novos cenários.

O Claude 3 Opus (pré-lançamento) é otimizado para os seguintes casos de uso:

  • Automação de tarefas, como programação e planejamento interativos, ou execução de ações complexas em APIs e bancos de dados.

  • Tarefas de pesquisa e desenvolvimento, como revisão de pesquisa, brainstorming, geração de hipóteses e teste de produtos.

  • Tarefas estratégicas, como análise avançada de gráficos, finanças e tendências de mercado, e previsões.

  • Tarefas de visão, como processar imagens para retornar saídas de texto. Além disso, análise de tabelas, gráficos, diagramas técnicos, relatórios e outros conteúdos visuais.

Acessar o card do modelo Claude 3 Opus

Claude 3 Sonnet

O Anthropic Claude 3 Sonnet oferece um equilíbrio entre inteligência e velocidade para cargas de trabalho corporativas. É um modelo de alta resistência para IA em escala que está disponível a um preço competitivo. O Claude 3 Sonnet é otimizado para os seguintes casos de uso:

  • Processamento de dados, incluindo geração de recuperação aumentada (RAG, na sigla em inglês) e recuperação de pesquisa.

  • Tarefas de vendas, como recomendações de produtos, previsão e marketing direcionado.

  • Tarefas que economizam tempo, como geração de código, controle de qualidade e reconhecimento óptico de caracteres (OCR) em imagens.

  • Tarefas de visão, como processar imagens para retornar saídas de texto. Além disso, análise de tabelas, gráficos, diagramas técnicos, relatórios e outros conteúdos visuais.

Acesse o card do modelo Claude 3 Sonnet

Claude 3 Haiku

O Anthropic Claude 3 Haiku é o modelo mais compacto e mais rápido disponível da Anthropic. Ele foi desenvolvido para responder a consultas e solicitações com rapidez. É possível usá-lo para criar experiências de IA que imitam interações humanas. O Claude 3 Haiku é otimizado para os seguintes casos de uso:

  • Interações com o cliente e traduções ao vivo.

  • Moderação de conteúdo para detectar comportamentos suspeitos ou solicitações de clientes.

  • Tarefas de economia de custos, como gerenciamento de inventário e extração de conhecimento de dados não estruturados.

  • Tarefas de visão, como processamento de imagens para retornar resultados de texto, análise de tabelas, gráficos, diagramas técnicos, relatórios e outros conteúdos visuais.

Acesse o card do modelo Claude 3 Haiku

Usar modelos de Claude

É possível usar um SDK Anthropic ou comandos curl para enviar solicitações ao endpoint da Vertex Generative AI usando os seguintes nomes de modelos:

  • Para o Claude 3 Opus (pré-lançamento), use claude-3-opus@20240229.
  • Para o Claude 3 Sonnet, use claude-3-sonnet@20240229.
  • Para Claude 3 Haiku, use claude-3-haiku@20240307.

Não recomendamos usar as versões do modelo Anthropic Claude 3 que não incluem um sufixo que comece com um símbolo @ (claude-3-opus, claude-3-sonnet ou claude-3-haiku).

Antes de começar

Para usar modelos do Anthropic Claude 3 com a Vertex Generative AI, você precisa executar as etapas a seguir. A API Vertex AI (aiplatform.googleapis.com) precisa estar ativada para usar a Vertex Generative AI. Se você já tiver um projeto existente com a API do Vertex AI ativada, poderá usar esse projeto em vez de criar um novo.

Verifique se você tem as permissões necessárias para ativar os modelos do Anthropic Claude 3. Para mais informações, consulte Conceder as permissões necessárias.

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Vertex AI API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Vertex AI API.

    Enable the API

  8. Verifique se você tem permissões para ativar os modelos do Anthropic Claude e enviar uma solicitação. Para mais informações, consulte Definir as permissões necessárias para ativar os modelos do Claude e enviar solicitações.
  9. Acesse um dos seguintes cards de modelo do Model Garden e clique em enable:

Usar o SDK do Anthropic

É possível fazer solicitações de API para modelos do Anthropic Claude usando o SDK do Anthropic Claude (link em inglês). Para saber mais, consulte:

Fazer uma chamada de streaming para um modelo Claude 3 usando o SDK Vertex Anthropic

O exemplo de código a seguir usa o SDK Vertex Anthropic para realizar uma chamada de streaming para um modelo do Anthropic Claude 3.

Python

Para saber como instalar o SDK da Vertex AI para Python, consulte Instalar o SDK da Vertex AI para Python. Para mais informações, consulte a documentação de referência da API Python.

# 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

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)

Fazer uma chamada unária para um modelo Claude 3 usando o SDK Vertex Anthropic

O exemplo de código a seguir usa o SDK Vertex Anthropic para realizar uma chamada unária para um modelo do Anthropic Claude 3.

Python

Para saber como instalar o SDK da Vertex AI para Python, consulte Instalar o SDK da Vertex AI para Python. Para mais informações, consulte a documentação de referência da API Python.

# 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

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))

Usar um comando curl

É possível usar um comando curl para fazer uma solicitação ao endpoint da Vertex Generative AI. O comando curl especifica qual modelo do Anthropic Claude compatível você quer usar:

  • Para o Claude 3 Opus (pré-lançamento), use claude-3-opus@20240229.
  • Para o Claude 3 Sonnet, use claude-3-sonnet@20240229.
  • Para o Claude 3 Haiku, use claude-3-haiku@20240307.

Não recomendamos usar as versões do modelo Anthropic Claude 3 que não incluem um sufixo que comece com um símbolo @ (claude-3-opus, claude-3-sonnet ou claude-3-haiku).

O tópico a seguir mostra como criar um comando curl e inclui uma amostra do comando curl. O comando curl de amostra usa o modelo Claude 3 Sonnet.

REST

Para testar um prompt de texto usando a API Vertex AI, envie uma solicitação POST para o endpoint do modelo do editor.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • LOCATION: uma região compatível com modelos do Anthropic Claude.
    O Claude 3 Opus está disponível na seguinte região:
    • us-east5 (Ohio)
    O Claude 3 Sonnet está disponível nas seguintes regiões:
    • us-central1 (Iowa)
    • asia-southeast1 (Singapore)
    O Claude 3 Haiku está disponível nas seguintes regiões:
    • us-central1 (Iowa)
    • europe-west4 (Netherlands)
  • MODEL: o nome do modelo que você quer usar.
    • Para Claude 3 Opus, use claude-3-opus@20240229.
    • Para o Claude 3 Sonnet, use claude-3-sonnet@20240229.
    • Para Claude 3 Haiku, use claude-3-haiku@20240307.
  • ROLE: o papel associado a uma mensagem. É possível especificar user ou assistant. A primeira mensagem precisa usar o papel user. Os modelos de Claude funcionam com voltas alternadas de user e assistant. Se a mensagem final usar o papel assistant, o conteúdo da resposta continuará imediatamente a partir do conteúdo dessa mensagem. É possível usar isso para restringir parte da resposta do modelo.
  • STREAM: um booleano que especifica se a resposta será transmitida ou não. Transmita sua resposta para reduzir a percepção de latência do uso final. Defina como true para transmitir a resposta e false para retornar a resposta de uma só vez.
  • CONTENT: o conteúdo, como texto, da mensagem user ou assistant.
  • MAX_OUTPUT_TOKENS: número máximo de tokens que podem ser gerados na resposta. Um token tem aproximadamente 3,5 caracteres. 100 tokens correspondem a cerca de 60 a 80 palavras.

    Especifique um valor mais baixo para respostas mais curtas e um valor mais alto para respostas potencialmente mais longas.

  • TOP_P (opcional): o Top-P muda a forma como o modelo seleciona tokens para saída. Os tokens são selecionados do mais provável (veja o top-K) para o menos provável até que a soma das probabilidades seja igual ao valor do top-P. Por exemplo, se os tokens A, B e C tiverem uma probabilidade de 0,3, 0,2 e 0,1 e o valor de top-P for 0.5, o modelo selecionará A ou B como token seguinte usando temperatura e exclui C como candidato.

    Especifique um valor mais baixo para respostas menos aleatórias e um valor mais alto para respostas mais aleatórias.

  • TOP_K(opcional): o Top-P muda a forma como o modelo seleciona tokens para saída. Um top-K de 1 significa que o próximo token selecionado é o mais provável entre todos os tokens no vocabulário do modelo (também chamado de decodificação gananciosa), enquanto um top-K de 3 significa que o próximo token está selecionado entre os três tokens mais prováveis usando a temperatura.

    Para cada etapa da seleção de tokens, são amostrados os tokens top-K com as maiores probabilidades. Em seguida, os tokens são filtrados com base no valor de top-P com o token final selecionado por meio da amostragem de temperatura.

    Especifique um valor mais baixo para respostas menos aleatórias e um valor mais alto para respostas mais aleatórias.

Método HTTP e URL:

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

Corpo JSON da solicitação:

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

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

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

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$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

Você receberá uma resposta JSON semelhante a seguinte.

Exemplo de comando curl

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}'

Disponibilidade na região de Anthropic Claude

O Claude 3 Opus está disponível na seguinte região:

  • us-east5 (Ohio)
O Claude 3 Sonnet está disponível nas seguintes regiões:
  • us-central1 (Iowa)
  • asia-southeast1 (Singapore)
O Claude 3 Haiku está disponível nas seguintes regiões:
  • us-central1 (Iowa)
  • europe-west4 (Netherlands)

Cotas do Anthropic Claude e tamanho de contexto compatível

Para os modelos Claude 3, uma cota se aplica a cada região em que o modelo está disponível. A cota é especificada em consultas por minuto (QPM) e tokens por minuto (TPM). O TPM inclui tokens de entrada e saída.

O limite de cota padrão e o tamanho de contexto com suporte para Claude 3 Opus (pré-lançamento) são:

Região Limite de cota padrão Tamanho de contexto compatível
us-east5 (Ohio) 15 QPM, 50.000 TPM 200.000 tokens

O limite de cota padrão e o tamanho de contexto compatível com o Claude 3 Sonnet são:

Região Limite de cota padrão Tamanho de contexto compatível
us-central1 (Iowa) 60 QPM, 50.000 TPM 200.000 tokens
asia-southeast1 (Singapore) 60 QPM, 50.000 TPM 200.000 tokens

O limite de cota padrão e o tamanho de contexto compatível com o Claude 3 Haiku são:

Região Limite de cota padrão Tamanho de contexto compatível
us-central1 (Iowa) 60 QPM, 50.000 TPM 200.000 tokens
europe-west4 (Netherlands) 60 QPM, 50.000 TPM 200.000 tokens

Para aumentar alguma das suas cotas de IA generativa na Vertex AI, use o console do Google Cloud para solicitar um aumento de cota. Para saber mais sobre cotas, consulte Trabalhar com cotas.

Ativar modelos de Claude para usuários

Para que um usuário ative os modelos do Anthropic Claude e faça uma solicitação de solicitação, um administrador precisa definir as permissões necessárias e verificar se a política da organização permite o uso dos recursos necessários. APIs.

Definir as permissões necessárias

Os seguintes papéis e permissões são necessários para usar os modelos do Anthropic Claude:

  1. O usuário precisa receber o papel de Gerente de direito de compra do consumidor do Identity and Access Management (IAM) Qualquer usuário que tenha esse papel pode ativar um modelo Anthropic Claude no Model Garden.

  2. O usuário precisa receber a permissão aiplatform.endpoints.predict. Essa permissão está incluída no papel de IAM de usuário da Vertex AI. Para mais informações, consulte Usuário da Vertex AI e Controle de acesso.

Console

  1. Para conceder os papéis de IAM do Gerente de direito de compra do consumidor a um usuário, acesse a página IAM.

    Acessar IAM

  2. Na coluna Principal, encontre a principal do usuário que você quer ativar o acesso aos modelos do Anthropic Claude e clique em . Edite a principal nessa linha.

  3. No painel Editar acesso, clique em Adicionar outro papel.

  4. Em Selecionar uma função, escolha Gerente de direito de compra do consumidor.

  5. No painel Editar acesso, clique em Adicionar outro papel.

  6. Em Selecionar um papel, escolha Usuário da Vertex AI.

  7. Clique em Salvar.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

  2. Conceda o papel de gerente de direito de compra do consumidor necessário para ativar os modelos do Anthropic Claude no Model Garden

    gcloud projects add-iam-policy-binding  PROJECT_ID \
    --member=PRINCIPAL --role=roles/consumerprocurement.entitlementManager
    
  3. Conceda a função de usuário da Vertex AI que inclui a permissão aiplatform.endpoints.predict, necessária para fazer solicitações de comandos:

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

    Substitua PRINCIPAL pelo identificador do principal. O identificador tem o formato user|group|serviceAccount:email ou domain:domain, por exemplo, user:cloudysanfrancisco@gmail.com, group:admins@example.com, serviceAccount:test123@example.domain.com ou domain:example.domain.com.

    A saída é uma lista de vinculações de política que inclui o seguinte:

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

    Para mais informações, consulte Conceder um único papel e gcloud projects add-iam-policy-binding.

Como definir a política da organização

Para ativar os modelos do Anthropic Claude, a política da organização que permite o uso das seguintes APIs:

  • API Cloud Commerce Consumer Procurement: cloudcommerceconsumerprocurement.googleapis.com
  • API Commerce Agreement: commerceagreement.googleapis.com

Se a organização definir uma política da organização para restringir o uso do serviço, um administrador da organização precisará verificar se cloudcommerceconsumerprocurement.googleapis.com e commerceagreement.googleapis.com são permitidos pelo definição da política da organização.