Gemini para desarrolladores

1. Introducción 👋

35807388b800fbe0.png

En este codelab, aprenderás todo lo que necesitas saber, como desarrollador, sobre el ecosistema de Gemini. Más específicamente, aprenderás sobre los diferentes modelos de Gemini, las diferentes herramientas potenciadas por Gemini y el SDK de IA generativa de Google para integrarlo con Gemini. También explorarás varias funciones de Gemini, como su contexto largo, el modo de pensamiento, la comprensión espacial, la API de Live, la salida de audio y la imagen nativa, y mucho más.

Al final de este codelab, deberías tener una comprensión sólida del ecosistema de Gemini.

💡Qué aprenderás

  • Diferentes modelos de Gemini
  • Herramientas potenciadas por modelos de Gemini
  • Cómo realizar la integración con Gemini usando el SDK de IA generativa de Google
  • Ventana de contexto amplia de Gemini.
  • Es el modo de pensamiento de Gemini.
  • Diferentes herramientas integradas, como la Búsqueda de Google y Google Maps
  • Cómo interactuar con agentes de investigación con la API de Interactions
  • Generación de imágenes y texto a voz
  • Comprensión espacial de Gemini.
  • API de Live para interacciones de voz y video en tiempo real

⚠️ Requisitos

  • Es una clave de API para las muestras de Google AI Studio.
  • Un proyecto de Google Cloud con la facturación habilitada para las muestras de Vertex AI.
  • Tu entorno de desarrollo local o el editor de Cloud Shell en Google Cloud

2. La familia de Gemini 🫂

Gemini es el modelo de IA de Google que hace realidad todas tus ideas. Es un excelente modelo para la comprensión multimodal y la programación de agentes y de vibe, todo ello basado en una base de razonamiento de vanguardia. Puedes mirar este video para obtener una descripción general rápida del modelo de Gemini:

Gemini no es solo un modelo. También es una marca global que se usa en los productos de Google.

que utilizan el modelo de Gemini. Existe un espectro de productos de Gemini, desde la app de Gemini y NotebookLM enfocados en el consumidor hasta AI Studio enfocado en el desarrollador y Vertex AI de Google Cloud enfocado en la empresa. También hay herramientas para desarrolladores, como Gemini CLI y Google Antigravity, que funcionan con Gemini.

3ceb2752ccfbc149.jpeg

3. Herramientas potenciadas por Gemini 🧰

Veamos brevemente las herramientas potenciadas por Gemini.

App de Gemini 💬

La app de Gemini ( gemini.google.com) es una aplicación para consumidores basada en chat. Es la forma más sencilla de interactuar con Gemini. Tiene herramientas para Deep Research, generación de imágenes, videos, música y mucho más. También tiene diferentes versiones del modelo Gemini más reciente (Fast, Thinking y Pro). La app de Gemini es perfecta para el uso diario.

d3800f85bafe9a4a.png

NotebookLM 📓

NotebookLM ( notebooklm.google.com) es un socio de investigación potenciado por IA. Sube archivos PDF, sitios web, videos de YouTube, archivos de audio, documentos de Google, presentaciones de Google y mucho más. NotebookLM los resumirá y establecerá conexiones interesantes entre los temas, todo con la ayuda de la versión más reciente de las capacidades de comprensión multimodal de Gemini. También genera resúmenes de audio, resúmenes de video, infografías y mucho más interesantes y atractivos a partir de las fuentes que subiste.

4c3274795844251.png

Google AI Studio 🎨

Google AI Studio ( ai.dev) es la forma más rápida de comenzar a compilar con Gemini. El panel Playground en Google AI Studio te permite experimentar con diferentes modelos para generar texto, imágenes y videos, y también probar voz y video en tiempo real con la API de Gemini Live. El panel Build de Google AI Studio te permite crear aplicaciones web con vibe-coding, implementarlas en Cloud Run en Google Cloud y enviar el código a GitHub.

48fadc9d3d5f9500.png

Vertex AI Studio ☁️

Vertex AI es una plataforma de desarrollo de IA unificada y completamente administrada para crear y usar IA generativa en Google Cloud. Vertex AI Studio ( console.cloud.google.com/vertex-ai/studio) te ayuda a probar, ajustar e implementar aplicaciones de IA generativa listas para la empresa.

15b55a2b635d63e1.png

CLI de Gemini ⚙️

Gemini CLI ( geminicli.com) es un agente de IA de código abierto que lleva el poder de Gemini directamente a tu terminal. Está diseñada para ser una herramienta potente, extensible y que prioriza la terminal para desarrolladores, ingenieros, SRE y más. Gemini CLI se integra en tu entorno local. Puede leer y editar archivos, ejecutar comandos de shell y buscar en la Web, todo mientras mantiene el contexto de tu proyecto.

b2a7f0bf377ac7b0.png

Google Antigravity 🚀

Google Antigravity ( antigravity.google) es una plataforma de desarrollo basada en agentes que evoluciona el IDE hacia la era centrada en los agentes. Antigravity permite a los desarrolladores operar en un nivel más alto y orientado a tareas, administrar agentes en diferentes espacios de trabajo y, al mismo tiempo, conservar una experiencia familiar de IDE de IA en su núcleo.

Antigravity extrae los agentes a su propia superficie y les proporciona las herramientas necesarias para operar de forma autónoma en el editor, la terminal y el navegador, lo que enfatiza la verificación y la comunicación de alto nivel a través de tareas y artefactos. Esta capacidad permite que los agentes planifiquen y ejecuten tareas de software integrales más complejas, lo que mejora todos los aspectos del desarrollo, desde la creación de funciones, la iteración de la IU y la corrección de errores hasta la investigación y la generación de informes.

ee964351b100df93.png

Puedes descargar y probar estas herramientas. A continuación, se incluyen algunos consejos generales sobre qué herramienta usar en cada caso:

  • Si recién comienzas, probablemente usarías la app de Gemini para hacer preguntas o generar código básico.
  • Si estás creando una aplicación web con vibe-coding, es probable que elijas Google AI Studio.
  • Si quieres compilar una aplicación compleja con el contexto de tu entorno de desarrollo local, elige la CLI de Gemini o Google Antigravity.
  • Si deseas implementar Google Cloud o ya lo usas y quieres obtener asistencia y funciones de nivel empresarial, Vertex AI y su estudio son la opción que debes elegir.

Por supuesto, puedes combinar estas herramientas. Por ejemplo, comienza con vibe coding en AI Studio para enviar el código a GitHub y, luego, usa Antigravity para seguir codificando y, luego, implementa el código en Google Cloud.

4. Modelos de Gemini 🧠

Los modelos de Gemini mejoran constantemente con nuevas versiones cada pocos meses. A partir de hoy (febrero de 2026), estos son los modelos destacados en Vertex AI en Google Cloud:

d2e4a116eaccf2fc.png

Hay muchos otros modelos de Gemini disponibles de forma general, modelos de Gemini en versión preliminar, los modelos de Gemma abiertos, modelos de Embedding, modelos de Imagegen, modelos de Veo y muchos más.

Visita la página de documentación de Google Models para explorar los principales modelos disponibles en Vertex AI para diferentes casos de uso.

5. SDK de IA generativa de Google 📦

Para integrar Gemini en tu aplicación, puedes usar el SDK de IA generativa de Google.

Como mencionamos anteriormente, puedes acceder a los modelos de Gemini a través de Google AI Studio o Vertex AI Studio. El SDK de IA generativa de Google proporciona una interfaz unificada para los modelos de Gemini a través de la API de Google AI y la API de Google Cloud. Con algunas excepciones, el código que se ejecuta en una plataforma se ejecutará en ambas.

485e9a003d26f8d.png

Actualmente, el SDK de IA generativa de Google admite Python, Go, Node.js, Java y C#.

Por ejemplo, así es como hablarías con Gemini en Google AI en Python:

client = genai.Client(
  api_key=your-gemini-api-key)

response = client.models.generate_content(
  model="gemini-3-flash-preview",
  contents="Why is the sky blue?")

Para hacer lo mismo con Gemini en Vertex AI, solo debes cambiar la inicialización del cliente, y el resto es igual:

client = genai.Client(
  vertexai=True,
  project=your-google-cloud-project,
  location="us-central1")

response = client.models.generate_content(
  model="gemini-3-flash-preview",
  contents="Why is the sky blue?")

Para ejecutar estas muestras por tu cuenta, puedes ejecutar main.py en github.com/meteatamel/genai-samples/tree/main/vertexai/gemini2/hello-world.

6. API de Interactions 🔄

La API de Interactions (beta) es una nueva interfaz unificada para interactuar con los modelos y agentes de Gemini. Como alternativa mejorada a la API de generateContent, simplifica la administración de estados, la organización de herramientas y las tareas de larga duración.

Así es como tendrías una interacción básica con la nueva API:

interaction =  client.interactions.create(
    model="gemini-3-flash-preview",
    input="Tell me a short joke."
)
print(interaction.outputs[-1].text)

Puedes tener una conversación con estado pasando el ID de interacción de la interacción anterior:

interaction1 = client.interactions.create(
    model="gemini-3-flash-preview",
    input="Hi, my name is Phil."
)
print(f"Model: {interaction1.outputs[-1].text}")

interaction2 = client.interactions.create(
    model="gemini-3-flash-preview",
    input="What is my name?",
    previous_interaction_id=interaction1.id
)
print(f"Model: {interaction2.outputs[-1].text}")

La API de Interactions está diseñada para crear agentes y comunicarse con ellos, y es compatible con llamadas a funciones, herramientas integradas, resultados estructurados y el Protocolo de contexto del modelo (MCP). Para ver cómo se puede usar con el agente de Deep Research, consulta el paso de Agentes 🤖 a continuación.

Para ejecutar estas muestras por tu cuenta, puedes ejecutar main.py en github.com/meteatamel/genai-samples/blob/main/vertexai/interactions-api.

7. Ventana de contexto larga 🪟

Muchos modelos de Gemini incluyen ventanas de contexto grandes de 1 millón o más tokens. Históricamente, los modelos de lenguaje grandes (LLMs) estaban limitados de manera significativa por la cantidad de texto (o tokens) que se podían pasar al modelo a la vez. La ventana de contexto largo de Gemini desbloquea muchos casos de uso y paradigmas de desarrolladores nuevos.

3fb7123fc45e7cdf.png

Para ver la ventana de contexto largo en acción, puedes ir a la Galería de instrucciones de Vertex AI Studio y elegir la instrucción Extract Video Chapters. Esta instrucción agrupa el contenido del video en capítulos y proporciona un resumen para cada uno.

Una vez que lo ejecutes con el video proporcionado, deberías obtener un resultado similar al siguiente:

[
  {
    "timecode": "00:00",
    "chapterSummary": "The video opens with scenic views of Rio de Janeiro, introducing the \"Marvelous City\" and its famous beaches like Ipanema and Copacabana, before pivoting to the existence of the favelas."
  },
  {
    "timecode": "00:20",
    "chapterSummary": "The narrator describes the favelas, home to one in five Rio residents, highlighting that while often associated with crime and poverty, this is only a small part of their story."
  },
  {
    "timecode": "00:36",
    "chapterSummary": "Google introduces its project to map the favelas, emphasizing that providing addresses to these uncharted areas is a crucial step in giving residents an identity."
  },
  {
    "timecode": "00:43",
    "chapterSummary": "The video concludes by focusing on the people of the favelas, inviting viewers to go beyond the map and explore their world through a 360-degree experience."
  }
]

Esto solo es posible gracias a la ventana de contexto ampliada de Gemini.

8. Modo de pensamiento 🧠

Los modelos de Gemini usan un proceso de pensamiento interno que mejora significativamente su razonamiento para tareas complejas. Los niveles (Gemini 3) y los presupuestos (Gemini 2.5) de pensamiento controlan el comportamiento de pensamiento. También puedes habilitar la marca include_thoughts para ver los pensamientos sin procesar del modelo.

Para ver el modo de pensamiento en acción, abramos Google AI Studio ( ai.dev) y comencemos un nuevo chat. En el panel lateral derecho, puedes establecer el nivel de pensamiento:

382b0c617ab5940e.png

Si haces clic en el botón Get code en la parte superior derecha, también puedes ver cómo establecer el nivel de pensamiento en el código, algo similar a lo siguiente:

response = client.models.generate_content(
    model="gemini-3-pro-preview",
    contents="How does AI work?",
    config=types.GenerateContentConfig(
        thinking_config=types.ThinkingConfig(
          thinking_level="low",
          include_thoughts=True
        )
    ),
)

Prueba diferentes instrucciones y niveles de pensamiento para ver el comportamiento del modelo.

9. Herramientas 🧰

Gemini incluye varias herramientas integradas, como la Búsqueda de Google, Google Maps, ejecución de código, uso de la computadora, búsqueda de archivos y mucho más. También puedes definir tus herramientas personalizadas con la Llamada a función. Veamos brevemente cómo usarlos.

Búsqueda de Google 🔎

Puedes fundamentar las respuestas del modelo en los resultados de la Búsqueda de Google para obtener respuestas más precisas, actualizadas y pertinentes.

En Vertex AI Studio ( console.cloud.google.com/vertex-ai/studio) o Google AI Studio ( ai.dev), puedes iniciar un chat nuevo y asegurarte de que la fundamentación de la Búsqueda de Google esté desactivada:

fb694a21e7eb7d5a.png

Luego, puedes hacer una pregunta sobre el clima de hoy en tu ubicación. Por ejemplo:

How's the weather in London today?

Por lo general, obtienes una respuesta para un día anterior porque el modelo no tiene acceso a la información más reciente. Por ejemplo:

In London today (Friday, May 24, 2025), the weather is a bit of a mixed bag, typical for late May.

Ahora, habilita la fundamentación con la Búsqueda de Google y haz la misma pregunta. Deberías obtener información meteorológica actualizada con vínculos a las fuentes de fundamentación:

In London today (Wednesday, February 11, 2026), the weather is cool and mostly cloudy with a chance of light rain.

Así es como tendrías la fundamentación de la Búsqueda de Google en tu código. También puedes hacer clic en el botón Código en Vertex AI Studio para obtener una muestra de fundamentación:

google_search_tool = Tool(google_search=GoogleSearch())
response = client.models.generate_content(
    model="gemini-3-flash-preview",
    contents="How's the weather like today in London?",
    config=GenerateContentConfig(tools=[google_search_tool])
)

Google Maps 🗺️

También puedes fundamentar las respuestas del modelo con Google Maps, que tiene acceso a información sobre más de 250 millones de lugares.

Para verlo en acción, puedes elegir Google Maps en lugar de la Búsqueda de Google en la sección de fundamentación de la configuración del modelo en Vertex AI Studio y hacer una pregunta que requiera datos de Maps, por ejemplo:

Can you show me some Greek restaurants and their map coordinates near me?

El código se ve así:

google_maps_tool = Tool(google_maps=GoogleMaps())
response = client.models.generate_content(
    model="gemini-3-flash-preview",
    contents=""What are the best restaurants near here?",
    config=GenerateContentConfig(tools=[google_maps_tool]),
       # Optional: Provide location context (this is in Los Angeles)
        tool_config=ToolConfig(
          retrieval_config=types.RetrievalConfig(
            lat_lng=types.LatLng(
                latitude=34.050481, longitude=-118.248526))),
)

Ejecución de código 🧑‍💻

Gemini puede generar y ejecutar código de Python con una lista de bibliotecas compatibles (pandas, numpy, PyPDF2, etc.). Esto es útil para las aplicaciones que se benefician del razonamiento basado en código (p. ej., resolver ecuaciones).

Para probar esta función, cambia a Google AI Studio, inicia un chat nuevo y asegúrate de que el botón de activación Code execution esté activado. Luego, haz una pregunta en la que la herramienta de ejecución de código podría ser útil. Por ejemplo:

What is the sum of the first 50 prime numbers? 

Gemini debería generar y ejecutar código de Python. Al final, la respuesta correcta es 5117.

Puedes ejecutar la herramienta de ejecución de código desde el código de la siguiente manera:

code_execution_tool = Tool(code_execution=ToolCodeExecution())
response = client.models.generate_content(
  model="gemini-3-flash-preview",
  contents="What is the sum of the first 50 prime numbers?",
  config=GenerateContentConfig(
    tools=[code_execution_tool],
    temperature=0))

Uso de la computadora 🖥️

El modelo de uso de la computadora de Gemini (versión preliminar) te permite crear agentes de control del navegador para automatizar tareas. Funciona de la siguiente manera:

de6edbd0163e6ee3.png

Para verlo en acción, puedes ejecutar main.py en github.com/google-gemini/computer-use-preview.

Por ejemplo, puedes obtener tu clave de API de Google AI Studio y pedirle a Gemini que busque vuelos por ti:

export GEMINI_API_KEY=your-api-key

python main.py --query "Find me top 5 fights sorted by price with the following constraints:

Flight site to use: www.google.com/travel/flights
From: London
To: Larnaca
One-way or roundtrip: One way
Date to leave: Sometime next week
Date to return: N/A
Travel preferences:
-Direct flights
-No flights before 10am
-Carry-on luggage"

Deberías ver que Gemini abre un navegador de incógnito y comienza a buscar vuelos por ti.

Búsqueda de archivos 📁

La herramienta de búsqueda de archivos permite la Generación mejorada por recuperación (RAG) sin esfuerzo. Solo tienes que subir tus archivos y se encarga de todos los detalles de RAG, como la fragmentación, la incorporación y la recuperación.

Para verlo en acción, puedes ejecutar main.py en github.com/meteatamel/genai-beyond-basics/blob/main/samples/grounding/file-search-tool.

Obtén tu clave de API de Google AI Studio y crea un almacén de búsqueda de archivos:

export GEMINI_API_KEY=your-gemini-api-key

python main.py create_store my-file-search-store

Sube un PDF a la tienda:

python main.py upload_to_store fileSearchStores/myfilesearchstore-5a9x71ifjge9 cymbal-starlight-2024.pdf

Haz una pregunta sobre el PDF que apunta a la tienda:

python main.py generate_content "What's the cargo capacity of Cymbal Starlight?" fileSearchStores/myfilesearchstore-5a9x71ifjge9

Deberías obtener una respuesta basada en el PDF:

Generating content with file search store: fileSearchStores/myfilesearchstore-5a9x71ifjge9
Response: The Cymbal Starlight 2024 has a cargo capacity of 13.5 cubic feet, which is located in the trunk of the vehicle. It is important to distribute the weight evenly and not overload the trunk, as this could impact the vehicle's handling and stability. The vehicle can also accommodate up to two suitcases in the trunk, and it is recommended to use soft-sided luggage to maximize space and cargo straps to secure it while driving.
Grounding sources:  cymbal-starlight-2024.pdf

Llamada a función 📲

Si las herramientas integradas no son suficientes, también puedes definir tus propias herramientas (funciones) en Gemini. Simplemente envías una función de Python como herramienta (en lugar de enviar una especificación detallada de OpenAPI de la función). El modelo y el SDK lo usan automáticamente como herramienta.

Por ejemplo, puedes tener una función para devolver la latitud y la longitud de una ubicación:

def location_to_lat_long(location: str):
    """Given a location, returns the latitude and longitude

    Args:
        location: The location for which to get the weather.

    Returns:
        The latitude and longitude information in JSON.
    """
    logger.info(f"Calling location_to_lat_long({location})")
    url = f"https://geocoding-api.open-meteo.com/v1/search?name={location}&count=1"
    return api_request(url)

También puedes tener una función para devolver la información del clima a partir de una latitud y una longitud:

def lat_long_to_weather(latitude: str, longitude: str):
    """Given a latitude and longitude, returns the weather information

    Args:
        latitude: The latitude of a location
        longitude: The longitude of a location

    Returns:
        The weather information for the location in JSON.
    """
    logger.info(f"Calling lat_long_to_weather({latitude}, {longitude})")
    url = (f"https://api.open-meteo.com/v1/forecast?latitude={latitude}&longitude={longitude}&current=temperature_2m,"
           f"relative_humidity_2m,surface_pressure,wind_speed_10m,wind_direction_10m&forecast_days=1")
    return api_request(url)

Ahora puedes pasar esas dos funciones como herramientas a Gemini y permitir que las use para recuperar la información del clima de una ubicación:

def generate_content_with_function_calls():
    client = genai.Client(
        vertexai=True,
        project=PROJECT_ID,
        location=LOCATION)

    response = client.models.generate_content(
        model=MODEL_ID,
        contents=PROMPT,
        config=GenerateContentConfig(
            system_instruction=[
                "You are a helpful weather assistant.",
                "Your mission is to provide weather information for different cities."
                "Make sure your responses are in plain text format (no markdown) and include all the cities asked.",
            ],
            tools=[location_to_lat_long, lat_long_to_weather],
            temperature=0),
    )

    print(response.text)
    #print(response.automatic_function_calling_history)

Para verlo en acción, puedes ejecutar main_genaisdk.py en github.com/meteatamel/genai-beyond-basics/blob/main/samples/function-calling/weather.

10. Agentes 🤖

La API de Interactions de Gemini está diseñada para crear agentes y para interactuar con ellos. Puedes usar agentes especializados, como el agente de Deep Research de Gemini. El agente de Deep Research de Gemini planifica, ejecuta y sintetiza de forma autónoma tareas de investigación de varios pasos. Navega por entornos de información complejos con la Búsqueda web y tus propios datos para producir informes detallados con citas.

A continuación, te mostramos cómo usarías el agente de Deep Research con la API de Interaction:

interaction = client.interactions.create(
    input="Research the history of the Google TPUs.",
    agent="deep-research-pro-preview-12-2025",
    background=True
)

while True:
    if interaction.status == "completed":
        print("\nFinal Report:\n",
interaction.outputs[-1].text)
        break

Para ejecutar esta muestra por tu cuenta, puedes ejecutar main.py en github.com/meteatamel/genai-samples/blob/main/vertexai/interactions-api.

export GOOGLE_API_KEY=your-api-key
python main.py agent

Después de un tiempo, deberías ver la investigación realizada:

User: Research the history of the Google TPUs with a focus on 2025 and 2026

Status: in_progress
Status: in_progress
Status: in_progress
...
Model Final Report:
 # Architectural Convergence and Commercial Expansion: The History of Google TPUs (2015–2026)

## Key Findings
*   **Strategic Pivot (2025):** Google transitioned the Tensor Processing Unit (TPU) from a primarily internal differentiator to a commercial merchant-silicon competitor, epitomized by the massive "Ironwood" (TPU v7) deployment and external sales strategy.
*   **Technological Leap:** The introduction of TPU v7 "Ironwood" in 2025 marked a paradigm shift, utilizing 3nm process technology to deliver 42.5 exaFLOPS per pod, directly challenging NVIDIA's Blackwell architecture in the high-performance computing (HPC) sector.
...

11. Generación de imágenes 📷

Nano Banana 🍌 es el nombre de las capacidades nativas de generación de imágenes de Gemini. Gemini puede generar y procesar imágenes de forma conversacional con texto, imágenes o una combinación de ambos. Esto te permite crear, editar y realizar iteraciones en elementos visuales con un control sin precedentes.

Nano Banana hace referencia a dos modelos distintos disponibles en la API de Gemini:

  • Nano Banana: Es el modelo de Gemini 2.5 Flash Image (gemini-2.5-flash-image). Este modelo está diseñado para ofrecer velocidad y eficiencia, y está optimizado para tareas de gran volumen y baja latencia.
  • Nano Banana Pro: Es el modelo de vista previa de imágenes de Gemini 3 Pro (gemini-3-pro-image-preview). Este modelo está diseñado para la producción de recursos profesionales, ya que utiliza un razonamiento avanzado para seguir instrucciones complejas y renderizar texto de alta fidelidad.

A continuación, se incluye un fragmento de código en el que puedes pasar una imagen existente y pedirle a Nano Banana que la edite:

from google import genai
from google.genai import types
from PIL import Image

client = genai.Client()

prompt = (
    "Create a picture of my cat eating a nano-banana in a "
    "fancy restaurant under the Gemini constellation",
)

image = Image.open("/path/to/cat_image.png")

response = client.models.generate_content(
    model="gemini-2.5-flash-image",
    contents=[prompt, image],
)

for part in response.parts:
    if part.text is not None:
        print(part.text)
    elif part.inline_data is not None:
        image = part.as_image()
        image.save("generated_image.png")

Nano Banana está disponible en la app de Gemini, AI Studio o Vertex AI Studio. La forma más sencilla de probarlo es en la app de Gemini. En la app de Gemini ( gemini.google.com), selecciona 🍌 Create images en Tools. Luego, sube una imagen y prueba algo divertido. Por ejemplo, puedes decir:

Can you transform this picture of mine to a nice beach on a tropical island?

41a830bea8cf3c9f.png 2fc9ac5b7008aafb.png

12. Generación de Text-to-Speech 🎶

Gemini puede transformar la entrada de texto en audio de un solo orador o de varios oradores con las capacidades de generación de texto a voz (TTS) de Gemini. La generación de TTS es controlable, lo que significa que puedes usar el lenguaje natural para estructurar las interacciones y guiar el estilo, el acento, el ritmo y el tono del audio.

Existen 2 modelos que admiten la función de TTS:

La capacidad de TTS difiere de la generación de voz que proporciona la API de Live, que está diseñada para audio interactivo y no estructurado, y entradas y salidas multimodales. Si bien la API de Live se destaca en contextos conversacionales dinámicos, la API de Gemini ofrece TTS para situaciones que requieren una recitación de texto exacta con un control detallado sobre el estilo y el sonido, como la generación de podcasts o audiolibros.

Este es un fragmento de código para TTS de un solo orador:

from google import genai
from google.genai import types
import wave

# Set up the wave file to save the output:
def wave_file(filename, pcm, channels=1, rate=24000, sample_width=2):
   with wave.open(filename, "wb") as wf:
      wf.setnchannels(channels)
      wf.setsampwidth(sample_width)
      wf.setframerate(rate)
      wf.writeframes(pcm)

client = genai.Client()

response = client.models.generate_content(
   model="gemini-2.5-flash-preview-tts",
   contents="Say cheerfully: Have a wonderful day!",
   config=types.GenerateContentConfig(
      response_modalities=["AUDIO"],
      speech_config=types.SpeechConfig(
         voice_config=types.VoiceConfig(
            prebuilt_voice_config=types.PrebuiltVoiceConfig(
               voice_name='Kore',
            )
         )
      ),
   )
)

data = response.candidates[0].content.parts[0].inline_data.data

file_name='out.wav'
wave_file(file_name, data) # Saves the file to current directory

Puedes ver más muestras en la documentación sobre la generación de texto a voz (TTS).

También puedes probar la generación de voz en el Playground de Google AI Studio. Experimenta con diferentes instrucciones en la app de generate-speech:

6eb20d8a20e571fb.png

13. Spatial Understanding 🌐

Gemini tiene detección de objetos y comprensión espacial avanzadas.

La forma más fácil de entender esto es verlo en acción. Ve a la app de inicio de Spatial Understanding en AI Studio. Elige algunas imágenes y trata de detectar algunos elementos en ellas con Gemini.

Por ejemplo, puedes detectar "sombras" o "frutas" en diferentes imágenes:

6a521c961664339.png 2260ab81a8c9a5e8.png

Experimenta con diferentes imágenes y observa qué tan bien Gemini detecta y etiqueta diferentes objetos.

14. API en vivo 🎤

La API de Live permite interacciones de voz y video en tiempo real y de baja latencia con Gemini. Procesa flujos continuos de audio, video o texto para brindar respuestas habladas inmediatas y similares a las humanas, lo que crea una experiencia conversacional natural para tus usuarios.

9ada309ba0cd0888.png

Prueba la API en vivo en Google AI Studio o la API en vivo en Vertex AI Studio. En ambas apps, puedes compartir tu voz, video y pantalla, y tener una conversación en vivo con Gemini.

8b4901d2aecc5b62.png

Comienza a compartir tu video o pantalla, y pregúntale a Gemini cosas generales por voz. Por ejemplo:

Can you describe what you see on the screen?

Te sorprenderá lo naturales que sonarán las respuestas de Gemini.

15. Conclusión

En este codelab, analizamos el ecosistema de Gemini, comenzando con la familia de productos de Gemini y aprendiendo a integrar los modelos en nuestras aplicaciones con el SDK unificado de IA generativa de Google. Exploramos las funciones de vanguardia de Gemini, como la ventana de contexto largo, el modo de pensamiento, las herramientas de fundamentación integradas, la API de Live y la comprensión espacial. Te recomendamos que profundices en la documentación de referencia y sigas experimentando con todo el potencial de Gemini.

References