Cómo realizar la puesta a tierra con Google Maps

La fundamentación con Google Maps conecta las capacidades generativas de Gemini con los datos enriquecidos, fácticos y actualizados de Google Maps. Esta función permite a los desarrolladores incorporar fácilmente la funcionalidad basada en la ubicación en sus aplicaciones. Cuando una búsqueda del usuario tiene un contexto relacionado con los datos de Maps, el modelo de Gemini aprovecha Google Maps para proporcionar respuestas fácticas y actualizadas que son pertinentes para la ubicación especificada por el usuario o el área general.

  • Respuestas precisas y basadas en la ubicación: Aprovecha los datos extensos y actuales de Google Maps para las búsquedas específicas de una ubicación geográfica.
  • Personalización mejorada: Adapta las recomendaciones y la información según las ubicaciones proporcionadas por el usuario.
  • Información contextual y widgets: Tokens contextuales para renderizar widgets interactivos de Google Maps junto con el contenido generado.

Comenzar

En este ejemplo, se muestra cómo integrar Grounding con Google Maps en tu aplicación para proporcionar respuestas precisas y basadas en la ubicación a las preguntas de los usuarios. La instrucción solicita recomendaciones locales con una ubicación del usuario opcional, lo que permite que el modelo de Gemini aproveche los datos de Google Maps.

Python

from google import genai
from google.genai import types

client = genai.Client()

prompt = "What are the best Italian restaurants within a 15-minute walk from here?"

response = client.models.generate_content(
    model='gemini-2.5-flash-lite',
    contents=prompt,
    config=types.GenerateContentConfig(
        # Turn on grounding with Google Maps
        tools=[types.Tool(google_maps=types.GoogleMaps())],
        # Optionally provide the relevant location context (this is in Los Angeles)
        tool_config=types.ToolConfig(retrieval_config=types.RetrievalConfig(
            lat_lng=types.LatLng(
                latitude=34.050481, longitude=-118.248526))),
    ),
)

print("Generated Response:")
print(response.text)

if grounding := response.candidates[0].grounding_metadata:
  if grounding.grounding_chunks:
    print('-' * 40)
    print("Sources:")
    for chunk in grounding.grounding_chunks:
      print(f'- [{chunk.maps.title}]({chunk.maps.uri})')

JavaScript

import { GoogleGenAI } from "@google/gnai";

const ai = new GoogleGenAI({});

async function generateContentWithMapsGrounding() {
  const response = await ai.models.generateContent({
    model: "gemini-2.5-flash",
    contents: "What are the best Italian restaurants within a 15-minute walk from here?",
    config: {
      // Turn on grounding with Google Maps
      tools: [{ googleMaps: {} }],
      toolConfig: {
        retrievalConfig: {
          // Optionally provide the relevant location context (this is in Los Angeles)
          latLng: {
            latitude: 34.050481,
            longitude: -118.248526,
          },
        },
      },
    },
  });

  console.log("Generated Response:");
  console.log(response.text);

  const grounding = response.candidates[0]?.groundingMetadata;
  if (grounding?.groundingChunks) {
    console.log("-".repeat(40));
    console.log("Sources:");
    for (const chunk of grounding.groundingChunks) {
      if (chunk.maps) {
        console.log(`- [${chunk.maps.title}](${chunk.maps.uri})`);
      }
    }
  }
}

generateContentWithMapsGrounding();

REST

curl -X POST 'https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash-lite:generateContent' \
  -H 'Content-Type: application/json' \
  -H "x-goog-api-key: ${GEMINI_API_KEY}" \
  -d '{
  "contents": [{
    "role": "user",
    "parts": [{
      "text": "What are the best Italian restaurants within a 15-minute walk from here?"
    }]
  }],
  "tools": [{"googleMaps": {}}],
  "toolConfig": {
    "retrievalConfig": {
      "latLng": {"latitude": 34.050481, "longitude": -118.248526}
    }
  }
}'

Cómo funciona la fundamentación con Google Maps

La fundamentación con Google Maps integra la API de Gemini en el ecosistema geográfico de Google usando la API de Maps como fuente de fundamentación. Cuando la búsqueda de un usuario contiene contexto geográfico, el modelo de Gemini puede invocar la herramienta Fundamentos con Google Maps. Luego, el modelo puede generar respuestas fundamentadas en los datos de Google Maps que sean pertinentes para la ubicación proporcionada.

Por lo general, el proceso incluye lo siguiente:

  1. Consulta del usuario: Un usuario envía una consulta a tu aplicación, que puede incluir contexto geográfico (p.ej., "Cafeterías cerca de mí", "Museos en San Francisco").
  2. Invocación de la herramienta: El modelo de Gemini, que reconoce la intención geográfica, invoca la herramienta de fundamentación con Google Maps. De manera opcional, se puede proporcionar a esta herramienta el latitude y el longitude del usuario para obtener resultados que tengan en cuenta la ubicación.
  3. Recuperación de datos: El servicio de Grounding con Google Maps consulta Google Maps para obtener información pertinente (p.ej., lugares, opiniones, fotos, direcciones y horarios de atención).
  4. Generación fundamentada: Los datos recuperados de Maps se usan para fundamentar la respuesta del modelo de Gemini, lo que garantiza la precisión y la relevancia fácticas.
  5. Token de respuesta y widget: El modelo devuelve una respuesta de texto que incluye citas de fuentes de Google Maps. De manera opcional, la respuesta de la API también puede contener un google_maps_widget_context_token, lo que permite a los desarrolladores renderizar un widget contextual de Google Maps en su aplicación para la interacción visual.

Por qué y cuándo usar la Fundamentación con Google Maps

La fundamentación con Google Maps es ideal para las aplicaciones que requieren información precisa, actualizada y específica de la ubicación. Mejora la experiencia del usuario, ya que proporciona contenido pertinente y personalizado respaldado por la extensa base de datos de Google Maps de más de 250 millones de lugares en todo el mundo.

Debes usar la fundamentación con Google Maps cuando tu aplicación necesite lo siguiente:

  • Proporciona respuestas completas y precisas a preguntas específicas de la ubicación geográfica.
  • Crea planificadores de viajes y guías locales conversacionales.
  • Recomendar lugares de interés según la ubicación y las preferencias del usuario, como restaurantes o tiendas
  • Crea experiencias basadas en la ubicación para servicios de redes sociales, venta minorista o entrega de comida.

La fundamentación con Google Maps se destaca en los casos de uso en los que la proximidad y los datos fácticos actuales son fundamentales, como encontrar la "mejor cafetería cerca de mí" o recibir indicaciones para llegar.

Métodos y parámetros de la API

La fundamentación con Google Maps se expone a través de la API de Gemini como una herramienta dentro del método generateContent. Para habilitar y configurar la fundamentación con Google Maps, incluye un objeto googleMaps en el parámetro tools de tu solicitud.

JSON

{
  "contents": [{
    "parts": [
      {"text": "Restaurants near Times Square."}
    ]
  }],
  "tools":  { "googleMaps": {} }
}

La herramienta googleMaps también puede aceptar un parámetro booleano enableWidget, que se usa para controlar si el campo googleMapsWidgetContextToken se devuelve en la respuesta. Se puede usar para mostrar un widget contextual de Places.

JSON

{
"contents": [{
    "parts": [
      {"text": "Restaurants near Times Square."}
    ]
  }],
  "tools":  { "googleMaps": { "enableWidget": true } }
}

Además, la herramienta admite pasar la ubicación contextual como toolConfig.

JSON

{
  "contents": [{
    "parts": [
      {"text": "Restaurants near here."}
    ]
  }],
  "tools":  { "googleMaps": {} },
  "toolConfig":  {
    "retrievalConfig": {
      "latLng": {
        "latitude": 40.758896,
        "longitude": -73.985130
      }
    }
  }
}

Cómo comprender la respuesta de fundamentación

Cuando una respuesta se fundamenta correctamente con datos de Google Maps, incluye un campo groundingMetadata. Estos datos estructurados son esenciales para verificar las afirmaciones y crear una experiencia de citas enriquecida en tu aplicación, así como para cumplir con los requisitos de uso del servicio.

JSON

{
  "candidates": [
    {
      "content": {
        "parts": [
          {
            "text": "CanteenM is an American restaurant with..."
          }
        ],
        "role": "model"
      },
      "groundingMetadata": {
        "groundingChunks": [
          {
            "maps": {
              "uri": "https://maps.google.com/?cid=13100894621228039586",
              "title": "Heaven on 7th Marketplace",
              "placeId": "places/ChIJ0-zA1vBZwokRon0fGj-6z7U"
            },
            // repeated ...
          }
        ],
        "groundingSupports": [
          {
            "segment": {
              "startIndex": 0,
              "endIndex": 79,
              "text": "CanteenM is an American restaurant with a 4.6-star rating and is open 24 hours."
            },
            "groundingChunkIndices": [0]
          },
          // repeated ...
        ],
        "webSearchQueries": [
          "restaurants near me"
        ],
        "googleMapsWidgetContextToken": "widgetcontent/..."
      }
    }
  ]
}

La API de Gemini devuelve la siguiente información con groundingMetadata:

  • groundingChunks: Es un array de objetos que contiene las fuentes de maps (uri, placeId y title).
  • groundingSupports: Es un array de fragmentos para conectar el texto de respuesta del modelo con las fuentes en groundingChunks. Cada fragmento vincula un intervalo de texto (definido por startIndex y endIndex) a uno o más groundingChunkIndices. Esta es la clave para crear citas intercaladas.
  • googleMapsWidgetContextToken: Es un token de texto que se puede usar para renderizar un widget contextual de Places.

Si deseas ver un fragmento de código que muestra cómo renderizar citas intercaladas en el texto, consulta el ejemplo en la documentación de Grounding con la Búsqueda de Google.

Cómo mostrar el widget contextual de Google Maps

Para usar el googleMapsWidgetContextToken que se devolvió, debes cargar la API de Google Maps JavaScript.

Casos de uso

La fundamentación con Google Maps admite una variedad de casos de uso que tienen en cuenta la ubicación. En los siguientes ejemplos, se muestra cómo diferentes instrucciones y parámetros pueden aprovechar la fundamentación con Google Maps. La información de los resultados fundamentados de Google Maps puede diferir de las condiciones reales.

Cómo responder preguntas específicas sobre lugares

Haz preguntas detalladas sobre un lugar específico para obtener respuestas basadas en las opiniones de los usuarios de Google y otros datos de Maps.

Python

from google import genai
from google.genai import types

client = genai.Client()

prompt = "Is there a cafe near the corner of 1st and Main that has outdoor seating?"

response = client.models.generate_content(
    model='gemini-2.5-flash-lite',
    contents=prompt,
    config=types.GenerateContentConfig(
        # Turn on the Maps tool
        tools=[types.Tool(google_maps=types.GoogleMaps())],

        # Provide the relevant location context (this is in Los Angeles)
        tool_config=types.ToolConfig(retrieval_config=types.RetrievalConfig(
            lat_lng=types.LatLng(
                latitude=34.050481, longitude=-118.248526))),
    ),
)

print("Generated Response:")
print(response.text)

if grounding := response.candidates[0].grounding_metadata:
  if chunks := grounding.grounding_chunks:
    print('-' * 40)
    print("Sources:")
    for chunk in chunks:
      print(f'- [{chunk.maps.title}]({chunk.maps.uri})')
  ```

JavaScript

import { GoogleGenAI } from '@google/genai';

const ai = new GoogleGenAI({});

async function run() {
  const prompt = "Is there a cafe near the corner of 1st and Main that has outdoor seating?";

  const response = await ai.models.generateContent({
    model: 'gemini-2.5-flash',
    contents: prompt,
    config: {
      // Turn on the Maps tool
      tools: [{googleMaps: {}}],
      // Provide the relevant location context (this is in Los Angeles)
      toolConfig: {
        retrievalConfig: {
          latLng: {
            latitude: 34.050481,
            longitude: -118.248526
          }
        }
      }
    },
  });

  console.log("Generated Response:");
  console.log(response.text);

  const chunks = response.candidates[0].groundingMetadata?.groundingChunks;
  if (chunks) {
    console.log('-'.repeat(40));
    console.log("Sources:");
    for (const chunk of chunks) {
      if (chunk.maps) {
        console.log(`- [${chunk.maps.title}](${chunk.maps.uri})`);
      }
    }
  }
}

run();

REST

curl -X POST 'https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash-lite:generateContent' \
  -H 'Content-Type: application/json' \
  -H "x-goog-api-key: ${GEMINI_API_KEY}" \
  -d '{
  "contents": [{
    "role": "user",
    "parts": [{
      "text": "Is there a cafe near the corner of 1st and Main that has outdoor seating?"
    }]
  }],
  "tools": [{"googleMaps": {}}],
  "toolConfig": {
    "retrievalConfig": {
      "latLng": {"latitude": 34.050481, "longitude": -118.248526}
    }
  }
}'

Proporcionar personalización basada en la ubicación

Obtener recomendaciones personalizadas según las preferencias de un usuario y un área geográfica específica

Python

from google import genai
from google.genai import types

client = genai.Client()

prompt = "Which family-friendly restaurants near here have the best playground reviews?"

response = client.models.generate_content(
    model='gemini-2.5-flash',
    contents=prompt,
    config=types.GenerateContentConfig(
      tools=[types.Tool(google_maps=types.GoogleMaps())],
      tool_config=types.ToolConfig(retrieval_config=types.RetrievalConfig(
          # Provide the location as context; this is Austin, TX.
          lat_lng=types.LatLng(
              latitude=30.2672, longitude=-97.7431))),
    ),
)

print("Generated Response:")
print(response.text)

if grounding := response.candidates[0].grounding_metadata:
  if chunks := grounding.grounding_chunks:
    print('-' * 40)
    print("Sources:")
    for chunk in chunks:
      print(f'- [{chunk.maps.title}]({chunk.maps.uri})')

JavaScript

import { GoogleGenAI } from '@google/genai';

const ai = new GoogleGenAI({});

async function run() {
  const prompt = "Which family-friendly restaurants near here have the best playground reviews?";

  const response = await ai.models.generateContent({
    model: 'gemini-2.5-flash',
    contents: prompt,
    config: {
      tools: [{googleMaps: {}}],
      toolConfig: {
        retrievalConfig: {
          // Provide the location as context; this is Austin, TX.
          latLng: {
            latitude: 30.2672,
            longitude: -97.7431
          }
        }
      }
    },
  });

  console.log("Generated Response:");
  console.log(response.text);

  const chunks = response.candidates[0].groundingMetadata?.groundingChunks;
  if (chunks) {
    console.log('-'.repeat(40));
    console.log("Sources:");
    for (const chunk of chunks) {
      if (chunk.maps) {
        console.log(`- [${chunk.maps.title}](${chunk.maps.uri})`);
      }
    }
  }
}

run();

REST

curl -X POST 'https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash-lite:generateContent' \
  -H 'Content-Type: application/json' \
  -H "x-goog-api-key: ${GEMINI_API_KEY}" \
  -d '{
  "contents": [{
    "role": "user",
    "parts": [{
      "text": "Which family-friendly restaurants near here have the best playground reviews?"
    }],
  }],
  "tools": [{"googleMaps": {}}],
  "toolConfig": {
    "retrievalConfig": {
      "latLng": {"latitude": 30.2672, "longitude": -97.7431}
    }
  }
}'

Asistencia con la planificación de itinerarios

Genera planes de varios días con instrucciones sobre cómo llegar e información sobre varias ubicaciones, lo que resulta ideal para aplicaciones de viajes.

En este ejemplo, se solicitó googleMapsWidgetContextToken habilitando el widget en la herramienta de Google Maps. Cuando se habilita, el token que se devuelve se puede usar para renderizar un widget contextual de Places con <gmp-places-contextual> component de la API de Maps JavaScript de Google Maps.

Python

from google import genai
from google.genai import types

client = genai.Client()

prompt = "Plan a day in San Francisco for me. I want to see the Golden Gate Bridge, visit a museum, and have a nice dinner."

response = client.models.generate_content(
    model='gemini-2.5-flash',
    contents=prompt,
    config=types.GenerateContentConfig(
      tools=[types.Tool(google_maps=types.GoogleMaps(enable_widget=True))],
      tool_config=types.ToolConfig(retrieval_config=types.RetrievalConfig(
          # Provide the location as context, this is in San Francisco.
          lat_lng=types.LatLng(
              latitude=37.78193, longitude=-122.40476))),
    ),
)

print("Generated Response:")
print(response.text)

if grounding := response.candidates[0].grounding_metadata:
  if grounding.grounding_chunks:
    print('-' * 40)
    print("Sources:")
    for chunk in grounding.grounding_chunks:
      print(f'- [{chunk.maps.title}]({chunk.maps.uri})')

  if widget_token := grounding.google_maps_widget_context_token:
    print('-' * 40)
    print(f'<gmp-place-contextual context-token="{widget_token}"></gmp-place-contextual>')

JavaScript

import { GoogleGenAI } from '@google/genai';

const ai = new GoogleGenAI({});

async function run() {
  const prompt = "Plan a day in San Francisco for me. I want to see the Golden Gate Bridge, visit a museum, and have a nice dinner.";

  const response = await ai.models.generateContent({
    model: 'gemini-2.5-flash',
    contents: prompt,
    config: {
      tools: [{googleMaps: {enableWidget: true}}],
      toolConfig: {
        retrievalConfig: {
          // Provide the location as context, this is in San Francisco.
          latLng: {
            latitude: 37.78193,
            longitude: -122.40476
          }
        }
      }
    },
  });

  console.log("Generated Response:");
  console.log(response.text);

  const groundingMetadata = response.candidates[0]?.groundingMetadata;
  if (groundingMetadata) {
    if (groundingMetadata.groundingChunks) {
      console.log('-'.repeat(40));
      console.log("Sources:");
      for (const chunk of groundingMetadata.groundingChunks) {
        if (chunk.maps) {
          console.log(`- [${chunk.maps.title}](${chunk.maps.uri})`);
        }
      }
    }

    if (groundingMetadata.googleMapsWidgetContextToken) {
      console.log('-'.repeat(40));
      document.body.insertAdjacentHTML('beforeend', `<gmp-place-contextual context-token="${groundingMetadata.googleMapsWidgetContextToken}`"></gmp-place-contextual>`);
    }
  }
}

run();

REST

curl -X POST 'https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash-lite:generateContent' \
  -H 'Content-Type: application/json' \
  -H "x-goog-api-key: ${GEMINI_API_KEY}" \
  -d '{
  "contents": [{
    "role": "user",
    "parts": [{
      "text": "Plan a day in San Francisco for me. I want to see the Golden Gate Bridge, visit a museum, and have a nice dinner."
    }]
  }],
  "tools": [{"googleMaps": {"enableWidget":"true"}}],
  "toolConfig": {
    "retrievalConfig": {
    "latLng": {"latitude": 37.78193, "longitude": -122.40476}
  }
  }
}'

Cuando se renderice el widget, se verá de la siguiente manera:

Ejemplo de un widget de mapas cuando se renderiza

Requisitos de uso del servicio

En esta sección, se describen los requisitos de uso del servicio de Grounding con Google Maps.

Informa al usuario sobre el uso de las fuentes de Google Maps

Con cada resultado fundamentado de Google Maps, recibirás fuentes en groundingChunks que respaldan cada respuesta. También se devuelven los siguientes metadatos:

  • URI de origen
  • título
  • ID

Cuando presentes resultados de la fundamentación con Google Maps, debes especificar las fuentes asociadas de Google Maps y comunicarles a los usuarios lo siguiente:

  • Las fuentes de Google Maps deben aparecer inmediatamente después del contenido generado que admiten. Este contenido generado también se conoce como resultado fundamentado de Google Maps.
  • Las fuentes de Google Maps deben poder verse en una sola interacción del usuario.

Para cada fuente en groundingChunks y en grounding_chunks.maps.placeAnswerSources.reviewSnippets, se debe generar una vista previa del vínculo según los siguientes requisitos:

  • Atribuye cada fuente a Google Maps según los lineamientos de atribución de texto de Google Maps.
  • Muestra el título de la fuente proporcionado en la respuesta.
  • Vincula la fuente con uri o googleMapsUri de la respuesta.

Estas imágenes muestran los requisitos mínimos para mostrar las fuentes y los vínculos de Google Maps.

Instrucción con respuesta que muestra las fuentes

Puedes contraer la vista de las fuentes.

Instrucción con respuesta y fuentes contraídas

Opcional: Mejora la vista previa del vínculo con contenido adicional, como el siguiente:

  • Se inserta un favicon de Google Maps antes de la atribución de texto de Google Maps.
  • Una foto de la URL de origen (og:image).

Para obtener más información sobre algunos de nuestros proveedores de datos de Google Maps y sus condiciones de licencia, consulta los avisos legales de Google Maps y Google Earth.

Lineamientos para la atribución de texto de Google Maps

Cuando atribuyas fuentes a Google Maps en texto, sigue estos lineamientos:

  • No modifiques el texto de Google Maps de ninguna manera:
    • No cambies el uso de mayúsculas en Google Maps.
    • No dividas Google Maps en varias líneas.
    • No localices Google Maps en otro idioma.
    • Evita que los navegadores traduzcan Google Maps usando el atributo HTML translate="no".
  • Aplica el siguiente estilo al texto de Google Maps:
Propiedad Estilo
Font family Roboto. La carga de la fuente es opcional.
Fallback font family Cualquier fuente de cuerpo sans serif que ya se use en tu producto o "Sans-Serif" para invocar la fuente predeterminada del sistema
Font style Normal
Font weight 400
Font color Blanco, negro (#1F1F1F) o gris (#5E5E5E). Mantén un contraste accesible (4.5:1) con el fondo.
Font size
  • Tamaño de fuente mínimo: 12 sp
  • Tamaño de fuente máximo: 16 sp
  • Para obtener información sobre sp, consulta las unidades de tamaño de fuente en el sitio web de Material Design.
Spacing Normal

Ejemplo de CSS

El siguiente código CSS renderiza Google Maps con el color y el estilo tipográfico adecuados sobre un fondo blanco o claro.

CSS

@import url('https://fonts.googleapis.com/css2?family=Roboto&display=swap');

.GMP-attribution {

font-family: Roboto, Sans-Serif;
font-style: normal;
font-weight: 400;
font-size: 1rem;
letter-spacing: normal;
white-space: nowrap;
color: #5e5e5e;
}

Token de contexto, ID de lugar y ID de opinión

Los datos de Google Maps incluyen el token de contexto, el ID de lugar y el ID de opinión. Puedes almacenar en caché, guardar y exportar los siguientes datos de respuesta:

  • googleMapsWidgetContextToken
  • placeId
  • reviewId

No se aplican las restricciones contra el almacenamiento en caché de las Condiciones de Fundamentación con Google Maps.

Actividad y territorio prohibidos

La fundamentación con Google Maps tiene restricciones adicionales para cierto contenido y actividades para mantener una plataforma segura y confiable. Además de las restricciones de uso que se mencionan en las Condiciones, no usarás la fundamentación con Google Maps para actividades de alto riesgo, incluidos los servicios de respuesta ante emergencias. No distribuirás ni comercializarás tu aplicación que ofrece Grounding con Google Maps en un Territorio Prohibido. Los territorios prohibidos actuales son los siguientes:

  • China
  • Crimea
  • Cuba
  • República Popular de Donetsk
  • Irán
  • República Popular de Luhansk
  • Corea del Norte
  • Siria
  • Vietnam

Es posible que esta lista se actualice de forma periódica.

Prácticas recomendadas

  • Proporciona la ubicación del usuario: Para obtener las respuestas más relevantes y personalizadas, siempre incluye user_location (latitud y longitud) en tu configuración de googleMapsGrounding cuando se conozca la ubicación del usuario.
  • Renderiza el widget contextual de Google Maps: El widget contextual se renderiza con el token de contexto, googleMapsWidgetContextToken, que se devuelve en la respuesta de la API de Gemini y se puede usar para renderizar contenido visual de Google Maps. Para obtener más información sobre el widget contextual, consulta Cómo fundamentar con el widget de Google Maps en la Guía para desarrolladores de Google.
  • Informa a los usuarios finales: Informa claramente a los usuarios finales que se usan datos de Google Maps para responder sus preguntas, en especial cuando la herramienta está habilitada.
  • Supervisa la latencia: En el caso de las aplicaciones conversacionales, asegúrate de que la latencia del percentil 95 para las respuestas fundamentadas se mantenga dentro de los umbrales aceptables para mantener una experiencia del usuario fluida.
  • Desactivar cuando no sea necesario: La fundamentación con Google Maps está desactivada de forma predeterminada. Solo habilítalo ("tools": [{"googleMaps": {}}]) cuando una búsqueda tenga un contexto geográfico claro para optimizar el rendimiento y el costo.

Limitaciones

  • Alcance geográfico: Actualmente, la fundamentación con Google Maps está disponible a nivel mundial.
  • Compatibilidad con modelos: Solo modelos específicos de Gemini admiten la fundamentación con Google Maps: Gemini 2.5 Flash-Lite, Gemini 2.5 Pro, Gemini 2.5 Flash y Gemini 2.0 Flash (pero no 2.0 Flash Lite).
  • Entradas y salidas multimodales: Actualmente, la fundamentación con Google Maps no admite entradas ni salidas multimodales más allá del texto y los widgets contextuales del mapa.
  • Estado predeterminado: La herramienta Fundamentación con Google Maps está desactivada de forma predeterminada. Debes habilitarlo de forma explícita en tus solicitudes a la API.

Precios y límites de frecuencia

La fundamentación con los precios de Google Maps se basa en las búsquedas. La tarifa actual es de USD 25 por cada 1,000 instrucciones fundamentadas. Una solicitud solo se contabiliza para la cuota cuando una instrucción devuelve correctamente al menos un resultado fundamentado de Google Maps (es decir, resultados que contienen al menos una fuente de Google Maps). Si se envían varias búsquedas a Google Maps desde una sola solicitud, se contabiliza como una solicitud para el límite de frecuencia.

Para obtener información detallada sobre los precios, consulta la página de precios de la API de Gemini.

Modelos compatibles

Puedes encontrar sus capacidades en la página de descripción general del modelo.

Modelo Fundamentación con Google Maps
Gemini 2.5 Pro ✔️
Gemini 2.5 Flash ✔️
Gemini 2.5 Flash-Lite ✔️
Gemini 2.0 Flash ✔️

¿Qué sigue?