Instructivo: API de Agent Platform en modo Express

Gemini Enterprise Agent Platform en modo express te permite probar las funciones principales de IA generativa disponibles en Agent Platform. En este instructivo, se muestra cómo completar las siguientes tareas con la API de Agent Platform en modo express:

  • Instala e inicializa el SDK de IA generativa de Google para el modo rápido.
  • Envía una solicitud a la API de Gemini para Google Cloud, que incluya lo siguiente:

    • Solicitud de transmisión
    • Solicitud sin transmisión
    • Solicitud de llamada a función

Antes de comenzar

Antes de realizar las tareas descritas en este documento, regístrate en el modo exprés.

Instala e inicializa el SDK para el modo exprés

El SDK de IA generativa de Google te permite usar modelos y funciones de IA generativa de Google para compilar aplicaciones potenciadas por IA. Cuando uses Agent Platform en modo express, instala e inicializa el paquete google-genai para autenticarte con la clave de API que generaste.

Instalar

Para instalar el SDK de IA generativa de Google para el modo rápido, ejecuta los siguientes comandos:

# Developer TODO: If you're using Colab, uncomment the following lines:
# from google.colab import auth
# auth.authenticate_user()

!pip install --upgrade google-genai

Si usas Colaboratory, reinicia el entorno de ejecución después de la instalación si se te solicita.

Inicialización

Configura la clave de API para el modo exprés y, luego, inicializa el cliente con enterprise=True. Para obtener detalles sobre cómo obtener una clave de API, consulta la Descripción general de Agent Platform en modo exprés.

from google import genai
from google.genai import types

# Developer TODO: Replace YOUR_API_KEY with your API key.
API_KEY = "YOUR_API_KEY"

client = genai.Client(
    enterprise=True, api_key=API_KEY
)

Envía una solicitud a la API de Gemini para Google Cloud

Puedes enviar solicitudes de transmisión o sin transmisión a la API de Gemini para Google Cloud. Las solicitudes de transmisión devuelven la respuesta en fragmentos a medida que se procesa la solicitud. Las solicitudes sin transmisión continua devuelven la respuesta completa después de que finaliza el procesamiento.

Solicitud de transmisión

Para enviar una solicitud de transmisión, llama a client.models.generate_content_stream() y, luego, imprime cada fragmento a medida que llega:

from google import genai
from google.genai import types

def generate():
  client = genai.Client(enterprise=True, api_key="YOUR_API_KEY")

  config = types.GenerateContentConfig(
      thinking_config=types.ThinkingConfig(
          thinking_level="MEDIUM",
      ),
      seed=5,
      max_output_tokens=1024,
      stop_sequences=["STOP!"],
      safety_settings=[
          types.SafetySetting(
              category="HARM_CATEGORY_HATE_SPEECH",
              threshold="BLOCK_ONLY_HIGH",
          )
      ],
  )
  for chunk in client.models.generate_content_stream(
      model="gemini-3.8-flash",
      contents="Explain bubble sort to me",
      config=config,
  ):
    print(chunk.text, end="")

generate()

Solicitud sin transmisión

En la siguiente muestra de código, se define una función que envía una solicitud sin transmisión a Gemini 3.8 Flash (gemini-3.8-flash). Se muestra cómo configurar el nivel de pensamiento, los parámetros de salida y la configuración de seguridad:

from google import genai
from google.genai import types

def generate():
  client = genai.Client(enterprise=True, api_key="YOUR_API_KEY")

  config = types.GenerateContentConfig(
      thinking_config=types.ThinkingConfig(
          thinking_level="MEDIUM",
      ),
      seed=5,
      max_output_tokens=1024,
      stop_sequences=["STOP!"],
      safety_settings=[
          types.SafetySetting(
              category="HARM_CATEGORY_HATE_SPEECH",
              threshold="BLOCK_ONLY_HIGH",
          )
      ],
  )
  response = client.models.generate_content(
      model="gemini-3.8-flash",
      contents="Explain bubble sort to me",
      config=config,
  )
  print(response.text)

generate()

Solicitud de llamada a función

En la siguiente muestra de código, se declara una herramienta de función, se envía una instrucción inicial a Flash 3.8, se recibe una parte de la llamada a función en la respuesta y, luego, se envía el FunctionResponse coincidente al modelo para generar una respuesta final:

from google import genai
from google.genai import types

client = genai.Client(enterprise=True, api_key="YOUR_API_KEY")

get_weather_declaration = types.FunctionDeclaration(
    name="get_current_weather",
    description="Gets the current weather in a given city.",
    parameters={
        "type": "OBJECT",
        "properties": {
            "location": {
                "type": "STRING",
                "description": "The city and state, such as Boston, MA.",
            },
            "unit": {
                "type": "STRING",
                "enum": ["C", "F"],
            },
        },
        "required": ["location"],
    },
)
tools = [types.Tool(function_declarations=[get_weather_declaration])]

prompt = "What is the weather in Boston?"
first_response = client.models.generate_content(
    model="gemini-3.8-flash",
    contents=prompt,
    config=types.GenerateContentConfig(tools=tools),
)

function_call = first_response.function_calls[0]
contents = [
    types.Content(role="user", parts=[types.Part(text=prompt)]),
    first_response.candidates[0].content,
    types.Content(
        role="user",
        parts=[
            types.Part(
                function_response=types.FunctionResponse(
                    id=function_call.id,
                    name=function_call.name,
                    response={"weather": "sunny", "temperature": "72F"},
                )
            )
        ],
    ),
]

response = client.models.generate_content(
    model="gemini-3.8-flash",
    contents=contents,
    config=types.GenerateContentConfig(tools=tools),
)
print(response.text)

Realiza una limpieza

En este instructivo, no se crean recursos de Google Cloud , por lo que no es necesario realizar ninguna limpieza para evitar cargos.

¿Qué sigue?