Las herramientas y los agentes extienden las capacidades de los modelos de Gemini, lo que les permite realizar acciones en el mundo, acceder a información en tiempo real y llevar a cabo tareas computacionales complejas. Los modelos pueden usar herramientas en interacciones estándar de solicitud y respuesta, y en sesiones de transmisión en tiempo real con la API en vivo.
- Las herramientas son capacidades específicas (como la Búsqueda de Google o la ejecución de código) que un modelo puede usar para responder preguntas.
- Los agentes son sistemas que pueden planificar, ejecutar y sintetizar tareas de varios pasos para lograr un objetivo del usuario.
La API de Gemini proporciona un conjunto de herramientas y agentes integrados y completamente administrados, optimizados para los modelos de Gemini. También puedes definir herramientas personalizadas con la llamada a funciones.
Herramientas integradas disponibles
| Herramienta | Descripción | Casos de uso |
|---|---|---|
| Búsqueda de Google | Fundamentar las respuestas en eventos actuales y hechos de la Web para reducir las alucinaciones | - Responder preguntas sobre eventos recientes - Verificar datos con diversas fuentes |
| Google Maps | Crea asistentes que reconocen la ubicación y pueden encontrar lugares, obtener instrucciones sobre cómo llegar y proporcionar un contexto local enriquecido. | - Planificar itinerarios de viaje con varias paradas - Encontrar empresas locales según los criterios del usuario |
| Ejecución de código | Permite que el modelo escriba y ejecute código en Python para resolver problemas matemáticos o procesar datos con precisión. | - Resolver ecuaciones matemáticas complejas - Procesar y analizar datos de texto con precisión |
| Contexto de URL | Indicarle al modelo que lea y analice contenido de páginas web o documentos específicos | - Responder preguntas basadas en URLs o documentos específicos - Recuperar información de diferentes páginas web |
| Uso de la computadora (vista previa) | Permite que Gemini vea una pantalla y genere acciones para interactuar con las IU de los navegadores web (ejecución del lado del cliente). | - Automatizar flujos de trabajo repetitivos basados en la Web - Probar interfaces de usuario de aplicaciones web |
| Búsqueda de archivos | Indexa y busca tus propios documentos para habilitar la generación mejorada por recuperación (RAG). | - Búsqueda en manuales técnicos - Respuesta a preguntas sobre datos de propiedad de la empresa |
Consulta la página de precios para obtener detalles sobre los costos asociados con herramientas específicas.
Agentes disponibles
| Agente | Descripción | Casos de uso |
|---|---|---|
| Deep Research | Planifica, ejecuta y sintetiza de forma autónoma tareas de investigación de varios pasos. | - Análisis de mercado - Diligencia debida - Revisión de literatura |
Cómo funciona la ejecución de herramientas
Las herramientas permiten que el modelo solicite acciones durante una conversación. El flujo difiere según si la herramienta es integrada (administrada por Google) o personalizada (administrada por ti).
Flujo de herramientas integradas
En el caso de las herramientas integradas (Búsqueda de Google, Google Maps, contexto de URL, búsqueda de archivos y ejecución de código), todo el proceso se realiza en una sola llamada a la API:
- Tú envías una instrucción: "¿Cuál es la raíz cuadrada del precio de las acciones más reciente de GOOG?".
- Gemini decide que necesita herramientas y las ejecuta en los servidores de Google (p.ej., busca el precio de las acciones y, luego, ejecuta código de Python para calcular la raíz cuadrada).
- Gemini envía la respuesta final basada en los resultados de la herramienta.
Flujo de herramientas personalizadas (llamada a función)
En el caso de las herramientas personalizadas y el uso de la computadora, tu aplicación controla la ejecución:
- Tú envías una instrucción junto con declaraciones de funciones (herramientas).
- Gemini podría enviar un JSON estructurado para llamar a una función específica (por ejemplo,
{"name": "get_order_status", "args": {"order_id": "123"}}), siempre con unidúnico. - Tú ejecutas la función en tu aplicación o entorno.
- Tú envías los resultados de la función, con el mismo
idque la llamada a la función, a Gemini. - Gemini usa los resultados para generar una respuesta final o realizar otra llamada a la herramienta.
Obtén más información en la guía de llamadas a funciones.
Flujo de combinación de herramientas integradas y personalizadas
Para las solicitudes que combinan herramientas integradas y personalizadas (llamadas a funciones), el modelo usa la circulación del contexto de la herramienta para coordinar la ejecución en diferentes entornos:
- Tú envías una instrucción y declaras las herramientas integradas y las funciones personalizadas que quieres habilitar, y estableces una marca para activar la compatibilidad con la combinación.
- Gemini ejecuta herramientas integradas y cede el control al usuario si se generan llamadas a funciones del cliente (lo que se ejecuta primero depende de la instrucción y de lo que decida el modelo). Devuelve una respuesta con lo siguiente:
- Confirmación de la llamada a la herramienta
- Resultados de la respuesta de la herramienta (pueden aparecer después del JSON si el modelo generó dos llamadas a funciones paralelas)
- JSON estructurado para llamar a tu función
- Firmas de pensamientos encriptadas para preservar el contexto
- Tú ejecutas la función en tu aplicación o entorno.
- Devuelves todas las partes de la respuesta de Gemini, además de los resultados de la llamada a la función.
- Gemini genera la respuesta final con todo el contexto combinado.
Lee la Guía de combinación de herramientas para aprender a activar la compatibilidad con la combinación de herramientas integradas y personalizadas, y ver ejemplos de circulación de contexto.
Comparación entre los resultados estructurados y las llamadas a funciones
Gemini ofrece dos métodos para generar resultados estructurados. Usa Llamadas a funciones cuando el modelo necesite realizar un paso intermedio conectándose a tus propias herramientas o sistemas de datos. Usa Resultados estructurados cuando necesites estrictamente que la respuesta final del modelo se ajuste a un esquema específico, por ejemplo, para renderizar una IU personalizada.
Resultados estructurados con herramientas
Puedes combinar los resultados estructurados con herramientas integradas para garantizar que las respuestas del modelo fundamentadas en datos externos o cálculos sigan un esquema estricto.
Consulta Salidas estructuradas con herramientas para ver ejemplos de código.
Creación de agentes
Los agentes son sistemas que usan modelos y herramientas para completar tareas de varios pasos. Si bien Gemini proporciona las capacidades de razonamiento (el "cerebro") y las herramientas esenciales (las "manos"), a menudo necesitas un framework de organización para administrar la memoria del agente, los bucles de planificación y la encadenamiento de herramientas complejo.
Para maximizar la confiabilidad en los flujos de trabajo de varios pasos, debes crear instrucciones que controlen de forma explícita cómo razona y planifica el modelo. Si bien Gemini proporciona un razonamiento general sólido, los agentes complejos se benefician de las instrucciones que imponen comportamientos específicos, como la persistencia ante los problemas, la evaluación de riesgos y la planificación proactiva.
Consulta los Flujos de trabajo basados en agentes para conocer estrategias sobre cómo diseñar estas instrucciones. Este es un ejemplo de una instrucción del sistema que mejoró el rendimiento en varias comparativas de agentes en alrededor de un 5%.
Frameworks de agentes
Gemini se integra con los principales frameworks de agentes de código abierto, como los siguientes:
- LangChain / LangGraph: Crea flujos de aplicaciones complejos y con estado, y sistemas multiagente con estructuras de gráficos.
- LlamaIndex: Conecta agentes de Gemini a tus datos privados para flujos de trabajo mejorados con RAG.
- CrewAI: Organiza agentes de IA autónomos colaborativos que interpretan roles.
- Vercel AI SDK: Compila interfaces de usuario y agentes potenciados por IA en JavaScript o TypeScript.
- ADK de Google: Es un framework de código abierto para compilar y organizar agentes de IA interoperables.