Solicita predicciones con modelos de Claude

Puedes usar el SDK de Anthropic o comandos curl para enviar solicitudes al extremo de Gemini Enterprise Agent Platform con los siguientes nombres de modelos:

  • Para Claude Sonnet 5.5 en Google Cloud, usa claude-sonnet-5-5.
  • Para Claude Fable 5.1 en Google Cloud, usa claude-fable-5-1.
  • Para Claude Sonnet 5 en Google Cloud, usa claude-sonnet-5.
  • Para Claude Opus 5.5 en Google Cloud, usa claude-opus-5-5.
  • Para Claude Opus 5 en Google Cloud, usa claude-opus-5.
  • Para Claude Fable 5 en Google Cloud, usa claude-fable-5.
  • Para Claude Opus 4.8 en Google Cloud, usa claude-opus-4-8.
  • Para Claude Opus 4.7 en Google Cloud, usa claude-opus-4-7.
  • Para Claude Opus 4.6 en Google Cloud, usa claude-opus-4-6.
  • Para Claude Sonnet 4.6 en Google Cloud, usa claude-sonnet-4-6.
  • Para Claude Opus 4.5 en Google Cloud, usa claude-opus-4-5.
  • Para Claude Opus 4.1 en Google Cloud, usa claude-opus-4-1.
  • Para Claude Opus 4 en Google Cloud, usa claude-opus-4.
  • Para Claude Sonnet 4.5 en Google Cloud, usa claude-sonnet-4-5.
  • Para Claude Sonnet 4 en Google Cloud, usa claude-sonnet-4.
  • Para Claude 3.7 Sonnet en Google Cloud, usa claude-3-7-sonnet.
  • Para Claude 3.5 Sonnet v2 en Google Cloud, usa claude-3-5-sonnet-v2.
  • Para Claude Haiku 5.5 en Google Cloud, usa claude-haiku-5-5.
  • Para Claude Haiku 4.5 en Google Cloud, usa claude-haiku-4-5.
  • Para Claude 3.5 Haiku en Google Cloud, usa claude-3-5-haiku.
  • Para Claude 3.5 Sonnet en Google Cloud, usa claude-3-5-sonnet.
  • Para Claude 3 Opus en Google Cloud, usa claude-3-opus.
  • Para Claude 3 Haiku en Google Cloud, usa claude-3-haiku.

Antes de comenzar

Anthropic aplica políticas que prohíben que ciertos revendedores revendan sus productos. Si tu cuenta de facturación Cloud de Confiance by S3NS está administrada por un revendedor prohibido, no podrás aceptar las Condiciones del Servicio ni habilitar los modelos de Claude. Si esto ocurre, comunícate directamente con tu revendedor.

Para usar los modelos de Anthropic Claude con Gemini Enterprise Agent Platform, debes realizar los siguientes pasos. La API de Agent Platform (aiplatform.googleapis.com) debe estar habilitada para usar Gemini Enterprise Agent Platform. Si ya tienes un proyecto existente con la API de Agent Platform habilitada, puedes usar ese proyecto en lugar de crear uno nuevo.

Asegúrate de tener los permisos necesarios para habilitar y usar modelos de socios. Para obtener más información, consulta Otorga los permisos necesarios.

  1. In the Cloud de Confiance console, on the project selector page, select or create a Cloud de Confiance project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Verify that billing is enabled for your Cloud de Confiance project.

  3. Enable the Gemini Enterprise Agent Platform API, if it is not already enabled.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the API

  4. Ve a una de las siguientes tarjetas de modelo de Model Garden y, luego, haz clic en Habilitar:

Anthropic recomienda que habilites el registro de 30 días de tu actividad de instrucciones y finalizaciones para registrar cualquier uso inadecuado del modelo. Para habilitar el registro, consulta Cómo registrar solicitudes y respuestas.

Usa el SDK de Anthropic

Puedes realizar solicitudes a la API para los modelos Anthropic Claude con el SDK de Anthropic Claude. Para obtener más información, consulta lo siguiente:

Realiza una llamada de transmisión a un modelo Claude con el SDK de Vertex de Anthropic.

En la siguiente muestra de código, se usa el SDK de Vertex de Anthropic para realizar una llamada de transmisión a un modelo de Claude.

Python

Si deseas obtener información para instalar o actualizar el SDK de Vertex AI para Python, consulta Instala el SDK de Vertex AI para Python. Para obtener más información, consulta la documentación de referencia de la API de Python.

En el siguiente ejemplo, se usan extremos regionales. Para usar el extremo global o multirregional, consulta Cómo especificar el extremo multirregional o Cómo especificar el extremo global.
# 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]'

# TODO(developer): Update and un-comment below line
# PROJECT_ID = "your-project-id"

from anthropic import AnthropicVertex

client = AnthropicVertex(project_id=PROJECT_ID, region="us-east5")
result = []

with client.messages.stream(
    model="claude-3-5-sonnet-v2@20241022",
    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)

# Example response:
# Here's a simple recipe for delicious banana bread:
# Ingredients:
# - 2-3 ripe bananas, mashed
# - 1/3 cup melted butter
# ...
# ...
# 8. Bake for 50-60 minutes, or until a toothpick inserted into the center comes out clean.
# 9. Let cool in the pan for a few minutes, then remove and cool completely on a wire rack.

Realiza una llamada unaria a un modelo de Claude con el SDK de Vertex de Anthropic.

En la siguiente muestra de código, se usa el SDK de Vertex de Anthropic para realizar una llamada unaria a un modelo de Claude.

Python

Si deseas obtener información para instalar o actualizar el SDK de Vertex AI para Python, consulta Instala el SDK de Vertex AI para Python. Para obtener más información, consulta la documentación de referencia de la API de Python.

En el siguiente ejemplo, se usan extremos regionales. Para usar el extremo global o multirregional, consulta Cómo especificar el extremo multirregional o Cómo especificar el extremo global.
# 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]'

# TODO(developer): Update and un-comment below line
# PROJECT_ID = "your-project-id"

from anthropic import AnthropicVertex

client = AnthropicVertex(project_id=PROJECT_ID, region="us-east5")
message = client.messages.create(
    model="claude-3-5-sonnet-v2@20241022",
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": "Send me a recipe for banana bread.",
        }
    ],
)
print(message.model_dump_json(indent=2))
# Example response:
# {
#   "id": "msg_vrtx_0162rhgehxa9rvJM5BSVLZ9j",
#   "content": [
#     {
#       "text": "Here's a simple recipe for delicious banana bread:\n\nIngredients:\n- 2-3 ripe bananas...
#   ...

Usa un comando curl

Puedes usar un comando curl para realizar una solicitud al extremo de Gemini Enterprise Agent Platform. El comando curl especifica qué modelo de Claude compatible deseas usar.

En el siguiente tema, se muestra cómo crear un comando curl y se incluye un comando curl de muestra.

REST

Para probar una instrucción de texto con la API de Agent Platform, envía una solicitud POST al extremo del modelo de publicador.

En el siguiente ejemplo, se usan extremos regionales. Para usar el extremo global o multirregional, consulta Cómo especificar el extremo multirregional o Cómo especificar el extremo global.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • LOCATION: Es una región que admite modelos de Claude Anthropic. Para usar el extremo global, consulta Cómo especificar el extremo global.
  • MODEL: El nombre del modelo que deseas usar.
  • ROLE: El rol asociado a un mensaje. Puedes especificar un user o un assistant. El primer mensaje debe usar el rol user. Los modelos de Claude operan con turnos alternativos de user y assistant. Si el mensaje final usa el rol assistant, el contenido de la respuesta continúa inmediatamente desde el contenido de ese mensaje. Puedes usar esto para restringir parte de la respuesta del modelo.
  • STREAM: Un valor booleano que especifica si la respuesta se transmite o no. Transmite tu respuesta para reducir la percepción de latencia del uso final. Configúralo como true para transmitir la respuesta y false para mostrar la respuesta de una sola vez.
  • CONTENT: el contenido, como texto, del mensaje user o assistant.
  • MAX_TOKENS: Cantidad máxima de tokens que se pueden generar en la respuesta. Un token tiene aproximadamente 3.5 caracteres. 100 tokens corresponden a casi 60 u 80 palabras.

    Especifica un valor más bajo para las respuestas más cortas y un valor más alto para las respuestas potencialmente más largas.

  • TOP_P (opcional): Top-P cambia la manera en la que el modelo selecciona tokens para la salida. Los tokens se seleccionan del más probable al menos probable hasta que la suma de sus probabilidades sea igual al valor de Top-P. Por ejemplo, si los tokens A, B y C tienen una probabilidad de 0.3, 0.2 y 0.1, y el valor Top-P es 0.5, el modelo elegirá A o B como el siguiente token usando la temperatura y excluirá a C como candidato.

    Especifica un valor más bajo para respuestas menos aleatorias y un valor más alto para respuestas más aleatorias.

  • TOP_K (opcional): Top-K cambia la manera en la que el modelo selecciona los tokens para el resultado. Un top-K de 1 significa que el siguiente token seleccionado es el más probable entre todos los tokens en el vocabulario del modelo (también llamado decodificación codiciosa), mientras que un top-K de 3 significa que el siguiente token se selecciona de los tres tokens más probables con la temperatura.

    Para cada paso de selección de tokens, se muestran los tokens de Top-K con las probabilidades más altas. Luego, los tokens se filtran según el Top-P con el token final seleccionado a través del muestreo de temperatura.

    Especifica un valor más bajo para respuestas menos aleatorias y un valor más alto para respuestas más aleatorias.

  • TYPE: Para Claude 3.7 Sonnet en Google Cloud y modelos de Claude posteriores, especifica enabled para habilitar el modo de pensamiento extendido.
  • BUDGET_TOKENS: Si habilitas el pensamiento extendido, debes especificar la cantidad de tokens que el modelo puede usar para su razonamiento interno como parte del resultado. Los presupuestos más grandes pueden permitir un análisis más exhaustivo para problemas complejos y mejorar la calidad de las respuestas. Debes especificar un valor mayor o igual que 1024, pero menor que MAX_TOKENS.

Método HTTP y URL:

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

Cuerpo JSON de la solicitud:

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

Para enviar tu solicitud, elige una de estas opciones:

curl

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:

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

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:

$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

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

Ejemplo del comando curl

MODEL_ID="MODEL"
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}'

Uso de herramientas (llamadas a función)

Los modelos de Claude de Anthropic admiten herramientas y llamadas a función para mejorar las capacidades de un modelo. Para obtener más información, consulta la descripción general del uso de herramientas en la documentación de Anthropic. Los modelos de Claude en Gemini Enterprise Agent Platform admiten herramientas de cliente, pero no herramientas de servidor.

En los siguientes ejemplos, se muestra cómo usar herramientas con un SDK o un comando curl. En los ejemplos, se buscan restaurantes cercanos en San Francisco que estén abiertos.

Python

Si deseas obtener información para instalar o actualizar el SDK de Vertex AI para Python, consulta Instala el SDK de Vertex AI para Python. Para obtener más información, consulta la documentación de referencia de la API de Python.

En el siguiente ejemplo, se usan extremos regionales. Para usar el extremo global o multirregional, consulta Cómo especificar el extremo multirregional o Cómo especificar el extremo global.
# 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

# TODO(developer): Update and un-comment below line
# PROJECT_ID = "your-project-id"

client = AnthropicVertex(project_id=PROJECT_ID, region="us-east5")
message = client.messages.create(
    model="claude-3-5-sonnet-v2@20241022",
    max_tokens=1024,
    tools=[
        {
            "name": "text_search_places_api",
            "description": "returns information about a set of places based on a string",
            "input_schema": {
                "type": "object",
                "properties": {
                    "textQuery": {
                        "type": "string",
                        "description": "The text string on which to search",
                    },
                    "priceLevels": {
                        "type": "array",
                        "description": "Price levels to query places, value can be one of [PRICE_LEVEL_INEXPENSIVE, PRICE_LEVEL_MODERATE, PRICE_LEVEL_EXPENSIVE, PRICE_LEVEL_VERY_EXPENSIVE]",
                    },
                    "openNow": {
                        "type": "boolean",
                        "description": "whether those places are open for business.",
                    },
                },
                "required": ["textQuery"],
            },
        }
    ],
    messages=[
        {
            "role": "user",
            "content": "What are some affordable and good Italian restaurants open now in San Francisco??",
        }
    ],
)
print(message.model_dump_json(indent=2))
# Example response:
# {
#   "id": "msg_vrtx_018pk1ykbbxAYhyWUdP1bJoQ",
#   "content": [
#     {
#       "text": "To answer your question about affordable and good Italian restaurants
#       that are currently open in San Francisco....
# ...

REST

En el siguiente ejemplo, se usan extremos regionales. Para usar el extremo global o multirregional, consulta Cómo especificar el extremo multirregional o Cómo especificar el extremo global.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • LOCATION: Es una región que admite modelos de Claude Anthropic. Para usar el extremo global, consulta Cómo especificar el extremo global.
  • MODEL: Es el nombre del modelo que se usará.
  • ROLE: El rol asociado a un mensaje. Puedes especificar un user o un assistant. El primer mensaje debe usar el rol user. Los modelos de Claude operan con turnos alternativos de user y assistant. Si el mensaje final usa el rol assistant, el contenido de la respuesta continúa inmediatamente desde el contenido de ese mensaje. Puedes usar esto para restringir parte de la respuesta del modelo.
  • STREAM: Un valor booleano que especifica si la respuesta se transmite o no. Transmite tu respuesta para reducir la percepción de latencia del uso final. Configúralo como true para transmitir la respuesta y false para mostrar la respuesta de una sola vez.
  • CONTENT: el contenido, como texto, del mensaje user o assistant.
  • MAX_TOKENS: Cantidad máxima de tokens que se pueden generar en la respuesta. Un token tiene aproximadamente 3.5 caracteres. 100 tokens corresponden a casi 60 u 80 palabras.

    Especifica un valor más bajo para las respuestas más cortas y un valor más alto para las respuestas potencialmente más largas.

Método HTTP y URL:

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

Cuerpo JSON de la solicitud:


{
  "anthropic_version": "vertex-2023-10-16",
  "max_tokens": MAX_TOKENS,
  "stream": STREAM,
  "tools": [
    {
      "name": "text_search_places_api",
      "description": "Returns information about a set of places based on a string",
      "input_schema": {
        "type": "object",
        "properties": {
          "textQuery": {
            "type": "string",
            "description": "The text string on which to search"
          },
          "priceLevels": {
            "type": "array",
            "description": "Price levels to query places, value can be one of [PRICE_LEVEL_INEXPENSIVE, PRICE_LEVEL_MODERATE, PRICE_LEVEL_EXPENSIVE, PRICE_LEVEL_VERY_EXPENSIVE]",
          },
          "openNow": {
            "type": "boolean",
            "description": "Describes whether a place is open for business at
            the time of the query."
          },
        },
        "required": ["textQuery"]
      }
    }
  ],
  "messages": [
    {
      "role": "user",
      "content": "What are some affordable and good Italian restaurants that are open now in San Francisco??"
    }
  ]
}

Para enviar tu solicitud, elige una de estas opciones:

curl

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:

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:rawPredict"

PowerShell

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:

$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:rawPredict" | Select-Object -Expand Content

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

Usa Agent Studio en Gemini Enterprise Agent Platform

En el caso de algunos modelos de Claude de Anthropic, puedes usar Agent Studio en Gemini Enterprise Agent Platform para crear prototipos y probar modelos de IA generativa rápidamente en la consola de Cloud de Confiance . Por ejemplo, puedes usar Agent Studio en Gemini Enterprise Agent Platform para comparar las respuestas del modelo Claude con otros modelos compatibles, como Google Gemini.

Para obtener más información, consulta Inicio rápido: Envía instrucciones de texto a Gemini con Agent Studio en Gemini Enterprise Agent Platform.