Redacción de un informe de investigación con la herramienta de búsqueda de Gemini
Copyright 2026 Google LLC.
# @title Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
En este tutorial, vas a aprovechar la última herramienta de búsqueda del modelo Gemini para escribir un informe de empresa. Ten en cuenta que la herramienta de búsqueda es una función de pago y este tutorial no funciona con una clave de API de nivel gratuito.
Quizás te preguntes, ¿por qué es necesario usar la herramienta de búsqueda para este propósito? Bueno, como sabrás, el mundo empresarial actual evoluciona muy rápido y los LLM generalmente no se entrenan con la frecuencia suficiente para capturar las últimas actualizaciones. Afortunadamente, la búsqueda de Google viene al rescate. La búsqueda de Google está diseñada para proporcionar información precisa y casi en tiempo real, y puede ayudarnos a cumplir esta tarea perfectamente.
Ten en cuenta que, si bien los modelos Gemini 1.5 ofrecían la función de grounding de búsqueda que también podría ayudarte a lograr resultados similares (consulta un notebook anterior que usa grounding de búsqueda), la nueva herramienta de búsqueda en Gemini 2.0 y modelos posteriores es mucho más potente y fácil de usar, y debería priorizarse sobre el grounding de búsqueda. También es posible usar varias herramientas juntas (por ejemplo, la herramienta de búsqueda y la llamada a funciones).
Configuración
Instala el SDK
El nuevo SDK de Google Gen AI proporciona acceso programático a los modelos Gemini usando las API de Google AI for Developers y Vertex AI. Con algunas excepciones, el código que se ejecuta en una plataforma se ejecutará en ambas. Esto significa que puedes crear un prototipo de aplicación usando la API de desarrollador y luego migrar la aplicación a Vertex AI sin reescribir tu código.
Más detalles sobre este nuevo SDK en la documentación o en el notebook Primeros pasos.
%pip install -U -q google-genai
Configura tu clave de API
Para ejecutar la siguiente celda, tu clave de API debe estar almacenada en un secreto de Colab llamado GEMINI_API_KEY. Si aún no tienes una clave de API, o no estás seguro de cómo crear un secreto de Colab, consulta Autenticación
para ver un ejemplo.
from google.colab import userdata
GEMINI_API_KEY=userdata.get('GEMINI_API_KEY')
Importa las bibliotecas
from google import genai
from google.genai.types import GenerateContentConfig, Tool
from IPython.display import display, HTML, Markdown
import io
import json
import re
Inicializa el cliente del SDK
Con el nuevo SDK, ahora solo necesitas inicializar un cliente con tu clave de API (o OAuth si usas Vertex AI). El modelo ahora se configura en cada llamada.
client = genai.Client(api_key=GEMINI_API_KEY)
Selecciona un modelo
La herramienta de búsqueda es una nueva característica de los modelos Gemini que recupera automáticamente artefactos precisos y fundamentados de la web para que los desarrolladores los procesen. A diferencia del grounding de búsqueda en los modelos Gemini 1.5, no necesitas establecer el umbral de recuperación dinámica.
Para obtener más información sobre todos los modelos Gemini, consulta la documentación para obtener información ampliada sobre cada uno de ellos.
MODEL_ID = "gemini-3.7-flash" # @param ["gemini-3.1-pro-preview", "gemini-3.7-flash", "gemini-3.5-flash-lite", "gemini-2.5-pro"] {"allow-input":true, isTemplate: true}
Escribe el informe con Gemini
Selecciona una empresa objetivo para investigar
A continuación, usarás Alphabet como ejemplo de objetivo de investigación.
COMPANY = 'Alphabet' # @param {type:"string"}
Haz que Gemini planifique la tarea y escriba el informe
Los modelos Gemini más recientes son un gran avance con respecto a los modelos anteriores, ya que pueden razonar, planificar, buscar y escribir de una sola vez. En este caso, solo le darás a Gemini un prompt para que haga todo esto y el modelo terminará tu tarea sin problemas. También usarás la transmisión de salida, que transmite la respuesta a medida que se genera, y el modelo devolverá fragmentos de la respuesta tan pronto como se generen. Si deseas que el SDK devuelva una respuesta después de que el modelo complete todo el proceso de generación, también puedes usar el enfoque sin transmisión.
Ten en cuenta que debes habilitar las Sugerencias de búsqueda de Google, que ayudan a los usuarios a encontrar resultados de búsqueda correspondientes a una respuesta fundamentada, y mostrar las consultas de búsqueda que se incluyen en los metadatos de la respuesta fundamentada. Puedes encontrar más detalles sobre este requisito.
sys_instruction = """You are an analyst that conducts company research.
You are given a company name, and you will work on a company report. You have access
to Google Search to look up company news, updates and metrics to write research reports.
When given a company name, identify key aspects to research, look up that information
and then write a concise company report.
Feel free to plan your work and talk about it, but when you start writing the report,
put a line of dashes (---) to demarcate the report itself, and say nothing else after
the report has finished.
"""
config = GenerateContentConfig(system_instruction=sys_instruction, tools=[Tool(google_search={})], temperature=0)
response_stream = client.models.generate_content_stream(
model=MODEL, config=config, contents=[COMPANY])
report = io.StringIO()
for chunk in response_stream:
candidate = chunk.candidates[0]
for part in candidate.content.parts:
if part.text:
display(Markdown(part.text))
# Find and save the report itself.
if m := re.search('(^|\n)-+\n(.*)$', part.text, re.M):
# Find the starting '---' line and start saving.
report.write(m.group(2))
elif report.tell():
# If there's already something in the buffer, keep recording.
report.write(part.text)
else:
print(json.dumps(part.model_dump(exclude_none=True), indent=2))
# You must enable Google Search Suggestions
if gm := candidate.grounding_metadata:
if sep := gm.search_entry_point:
display(HTML(sep.rendered_content))
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.Markdown object>
<IPython.core.display.HTML object>
¡Muy impresionante! Gemini comienza planificando la tarea, realizando búsquedas relevantes y transmitiendo un informe para ti.
Salida final
Renderiza la salida final.
display(Markdown(report.getvalue().replace('$', r'\$'))) # Escape $ signs for better MD rendering
display(HTML(sep.rendered_content))
<IPython.core.display.Markdown object>
<IPython.core.display.HTML object>
Como puedes ver, el modelo Gemini es capaz de escribir un informe de investigación conciso, preciso y bien estructurado para nosotros. Toda la información del informe es fáctica y está actualizada.
Ten en cuenta que este tutorial tiene como objetivo mostrar la capacidad de la nueva herramienta de búsqueda e inspirar casos de uso interesantes, no construir un generador de informes de investigación de producción. Si buscas usar una herramienta, consulta Deep Research de Google en la aplicación Gemini.
Próximos pasos
- Para obtener más información sobre la herramienta de búsqueda, consulta la documentación de la herramienta de búsqueda.
- Para empezar con la transmisión, consulta el Inicio rápido de transmisión.
- Para empezar con la herramienta de búsqueda, consulta el Inicio rápido de la herramienta de búsqueda.
- Para ver lo mucho más fácil y potente que es la herramienta de búsqueda en Gemini 2.0 que la función anterior de grounding de búsqueda, compara este tutorial con el ejemplo anterior.
Para obtener más información sobre todas las funciones de Gemini, consulta los notebooks de inicio rápido de Gemini.