Blog / AI
AI

Cree agentes de IA con Bright Data en Agno

Descubra cómo potenciar los agentes de Agno AI con las herramientas de SERP y web scraping de Bright Data para obtener flujos de trabajo de datos precisos y en tiempo real.
6 min de lectura
Build an Agent with SERP and Web Scraping Tools in Agno

En este artículo, verá lo siguiente:

  • Qué es Agno y qué lo hace especial como marco de agentes de IA.
  • Por qué integrarla con herramientas de recuperación de datos hace que sus agentes de IA sean mucho más potentes.
  • Cómo combinar Agno con las herramientas de Bright Data para crear agentes capaces de recuperar datos en tiempo real.

Sumerjámonos.

¿Qué es Agno?

Agno es un framework Python de código abierto para construir agentes de IA ligeros y sistemas multiagente. Incorpora funciones de memoria, integración de conocimientos y razonamiento avanzado, entre otras.

Lo que hace único a Agno son los siguientes aspectos:

  • Modelo agnóstico: Ofrece una interfaz unificada para más de 23 proveedores de LLM.
  • Alto rendimiento: Los agentes se instancian en aproximadamente 3 microsegundos, utilizando sólo ~6,5 KiB de memoria de media.
  • Elrazonamiento como ciudadano de primera clase: Hace hincapié en el razonamiento para mejorar la fiabilidad de los agentes y gestionar tareas difíciles. Admite tres enfoques de razonamiento: modelos de razonamiento, herramientas de razonamiento y cadenas de pensamiento personalizadas.
  • Multimodalidad nativa: Los agentes pueden procesar y generar texto, imágenes, audio y vídeo desde el primer momento.
  • Soporte para escenarios multiagente: Construye equipos colaborativos de agentes con memoria compartida, contexto y razonamiento coordinado.
  • Búsqueda automática integrada: Los agentes pueden buscar en más de 20 bases de datos de vectores en tiempo de ejecución para flujos de trabajo RAG agénticos de última generación.
  • Memoria integrada y almacenamiento de sesión: Los agentes incluyen controladores de almacenamiento y memoria integrados, que proporcionan memoria a largo plazo y seguimiento persistente de las sesiones.
  • Salidas estructuradas: Devuelve respuestas completamente tipificadas.

Además, Agno es compatible con más de 50 proveedores de herramientas de IA de terceros. Esto significa que los agentes de IA creados con Agno pueden integrarse fácilmente con algunas de las mejores soluciones de IA del mercado.

Los agentes de IA necesitan acceder a datos web para ser precisos y eficaces

Todos los marcos de agentes de IA heredan limitaciones clave de los LLM en los que se basan. Dado que la mayoría de los LLM están preentrenados en conjuntos de datos estáticos, carecen de conciencia de tiempo real y no pueden acceder de forma fiable a contenidos web en directo.

Esto suele dar lugar a respuestas obsoletas o incluso alucinaciones. Para superar estas limitaciones, los agentes (y, por extensión, los LLM de los que dependen) necesitan acceder a datos web fiables. ¿Por qué datos web en concreto? Porque la web es la fuente de información más completa que existe.

Por lo tanto, una forma eficaz de conseguirlo es dotar a los agentes de Agno de la capacidad de realizar consultas de búsqueda en directo y raspar contenidos de cualquier página web. Esto es posible gracias a las herramientas Bright Data de Agno.

Estas herramientas están integradas de forma nativa en Agno y proporcionan a los agentes acceso a un amplio conjunto de herramientas de datos web preparadas para la IA. Entre sus funciones se incluyen el raspado web, la recuperación de datos de SERP, las capacidades de captura de pantalla y el acceso a fuentes de datos en formato JSON de más de 40 sitios conocidos.

Cómo integrar herramientas de Bright Data Scraping en un Agente Agno

En esta sección, aprenderás a utilizar Agno para construir un agente Python de IA que pueda conectarse a herramientas de Bright Data. Estas dotarán a su agente de la capacidad de raspar datos de cualquier página y recuperar resultados actualizados de motores de búsqueda.

Siga los pasos que se indican a continuación para crear su agente de IA basado en Bright Data en Agno.

Requisitos previos

Para seguir este tutorial, asegúrate de tener lo siguiente:

No se preocupe si todavía no tiene una clave API de Bright Data, ya que le guiaremos para crear una en los siguientes pasos.

Paso nº 1: Configuración del proyecto

Abra un terminal y cree una nueva carpeta para su agente Agno AI con recuperación de datos impulsada por Bright Data:

mkdir agno-bright-data-agent

La carpeta agno-bright-data-agent contendrá todo el código Python para tu agente de IA.

A continuación, vaya a la carpeta del proyecto y cree un entorno virtual dentro de ella:

cd agno-bright-data-agent
python -m venv venv

Ahora, abre la carpeta del proyecto en tu IDE de Python preferido. Recomendamos Visual Studio Code (con la extensión Python) o PyCharm Community Edition.

Crea un nuevo archivo llamado agent.py dentro de la carpeta del proyecto. La estructura del proyecto debería ser la siguiente:

agno-bright-data-agent/
├── venv/
└── agent.py

Active el entorno virtual en su terminal. En Linux o macOS, ejecute este comando:

source venv/bin/activate

De forma equivalente, en Windows, ejecute:

venv/Scripts/activate

En los siguientes pasos, se le guiará a través de la instalación de las dependencias necesarias. Si prefiere instalar todo ahora, ejecute el siguiente comando en el entorno virtual activado:

pip install agno python-dotenv openai requests 

Nota: Estamos instalando openai porque este tutorial utiliza OpenAI como proveedor LLM. Si usted planea utilizar un LLM diferente, instale la biblioteca apropiada para ese proveedor en su lugar.

¡Ya está todo listo! Ya tienes un entorno de desarrollo Python listo para construir un agente de IA utilizando las herramientas Agno y Bright Data.

Paso 2: Configurar las variables de entorno Lectura

Su agente Agno interactuará con servicios de terceros como OpenAI y Bright Data a través de la integración API. Para hacerlo de forma segura, no debes codificar las claves API directamente en tu código Python. En su lugar, guárdalas como variables de entorno.

Para simplificar la carga de variables de entorno, aprovecha la biblioteca python-dotenv. Con tu entorno virtual activado, instálalo ejecutando:

pip install python-dotenv

Luego, en tu archivo agent.py, importa la librería y carga las variables de entorno usando load_dotenv():

from dotenv import load_dotenv

load_dotenv()

Esta función permite a tu script leer variables desde un archivo local .env. Sigue adelante y crea un archivo .env en la raíz de la carpeta de tu proyecto:

agno-bright-data-agent/
├── venv/
├── .env # <-------------
└── agent.py

¡Genial! Ya está preparado para gestionar de forma segura los secretos de integración de terceros mediante variables de entorno.

Paso 3: Empezar con Bright Data

En el momento de redactar este documento, las herramientas de Bright Data integradas con Agno proporcionan acceso a estas soluciones:

  • API SERP: Una API que ofrece resultados de búsqueda en tiempo real de los principales motores de búsqueda.
  • API Web Unlocker: Una avanzada API de scraping que elude las sofisticadas protecciones contra bots, dándote acceso a cualquier página web (en formato Markdown, que está optimizado para el uso de IA).
  • API de raspado web: Puntos finales dedicados al raspado para extraer de forma ética datos web frescos y estructurados de varios dominios populares.

Para integrar las herramientas anteriores, es necesario:

  1. Configure las soluciones SERP API y Web Unlocker en su cuenta de Bright Data.
  2. Recupere su token de la API de Bright Data para acceder a estos servicios.

Siga las instrucciones que figuran a continuación para hacer ambas cosas.

En primer lugar, si aún no tiene una cuenta de Bright Data, empiece por crear una. Si ya la tiene, inicie sesión y abra su panel de control:

Haciendo clic en el botón "Obtener productos proxy" de su cuenta de Bright Data

Haga clic en el botón “Obtener productos proxy”, que le llevará a la página “Proxies e infraestructura de scraping”:

Tenga en cuenta las zonas SERP API y Web Unlocker API

En este caso, puede ver que tanto la API SERP como la API Web Unlocker ya están activadas y listas para usar. Sus nombres de zona son serp y unblocker, respectivamente.

Si no es su caso, deberá crearlas. Demostraremos cómo crear una zona API Web Unlocker, pero el proceso es similar para crear una zona API SERP.

Desplácese hacia abajo y haga clic en “Crear zona” en la tarjeta “Web Unlocker API”:

Haciendo clic en "Crear zona" en la tarjeta "Web Unlocker API".

Dale un nombre a tu zona (como desbloqueador), activa las funciones avanzadas para conseguir la máxima eficacia y pulsa “Añadir”:

Configuración de su nueva zona API de Web Unlocker

A continuación, se le redirigirá a la página de la zona, que tendrá el siguiente aspecto:

La página "unlocker" de la zona API de Web Unlocker

Asegúrese de que el conmutador de activación está en “Activo”, ya que esto significa que su zona está correctamente configurada y lista para ser utilizada.

A continuación, siga la guía oficial de Bright Data para generar su clave API. Una vez que la tenga, añádala a su archivo .env de la siguiente forma:

BRIGHT_DATA_API_KEY="<YOUR_BRIGHT_DATA_API_KEY>"

Sustituya el por el valor real de su clave API.

¡Maravilloso! Es hora de integrar las herramientas de Bright Data en su script de agente Agno.

Paso 4: Instalar y configurar Agno Bright Data Tools

En la carpeta de su proyecto, con el entorno virtual activado, instale Agno ejecutando:

pip install agno

Nota: El paquete agno ya incluye soporte integrado para las herramientas de Bright Data, por lo que no se requieren paquetes específicos de integración para esta configuración.

Ahora, como las herramientas de Bright Data dependen de la biblioteca de peticiones Python, asegúrese de instalarla también:

pip install requests

En su archivo agent.py, importe las herramientas Bright Data de Agno:

from agno.tools.brightdata import BrightDataTools

A continuación, inicialice las herramientas de este modo:

bright_data_tools = BrightDataTools(
    serp_zone="YOUR_SERP_ZONE_NAME",
    web_unlocker_zone="YOUR_UNLOCKER_ZONE_NAME"
)

Sustituya "YOUR_SERP_ZONE_NAME" y "YOUR_UNLOCKER_ZONE_NAME" por los nombres de las zonas de Bright Data que configuró anteriormente. Por ejemplo, si sus zonas se llaman serp y unlocker, el código sería el siguiente:

bright_data_tools = BrightDataTools(
    serp_zone="serp",
    web_unlocker_zone="unlocker"
)

Tenga en cuenta que también puede omitir pasar los nombres de zona directamente en el código. En su lugar, utilice las siguientes variables de entorno en su archivo .env:

BRIGHT_DATA_WEB_UNLOCKER_ZONE="<YOUR_BRIGHT_DATA_WEB_UNLOCKER_ZONE>"
BRIGHT_DATA_SERP_ZONE="<YOUR_BRIGHT_DATA_SERP_ZONE>"

Sustituya los marcadores de posición por los nombres reales de sus zonas de Bright Data. A continuación, elimine los argumentos serp_zone y web_unlocker_zone en BrightDataTools,

Nota: Para conectarse a las soluciones de Bright Data, BrightDataTools se basa en la variable de entorno BRIGHT_DATA_API_KEY. En concreto, espera que la variable de entorno BRIGHT_DATA_API_KEY contenga su clave API de Bright Data. Por eso la hemos añadido al archivo .env en el paso anterior.

¡Increíble! Que la próxima integración es que con el LLM.

Paso 5: Configurar el modelo LLM

Para conectarse a OpenAI, el proveedor LLM utilizado en este tutorial, comience instalando la dependencia openai necesaria:

pip install openai

A continuación, importa la clase de integración OpenAI de Agno:

from agno.models.openai import OpenAIChat

Ahora, inicializa tu modelo LLM como se indica a continuación:

llm_model = OpenAIChat(id="gpt-4o-mini")

Arriba, "gpt-4o-mini" es el nombre del modelo OpenAI utilizado en esta guía. Puedes cambiarlo por cualquier otro modelo OpenAI compatible si es necesario.

Entre bastidores, OpenAIChat espera que tu clave de la API OpenAI esté definida en una variable de entorno llamada OPENAI_API_KEY. Para configurarlo, agregue la siguiente línea a su archivo .env:

OPENAI_API_KEY="<YOUR_OPENAI_API_KEY>"

Reemplaza el con tu clave de API de OpenAI real.

Nota: Si prefiere conectarse a un LLM diferente soportado por Agno, consulte la documentación oficial para obtener instrucciones.

Bien hecho. Ya tiene todos los elementos necesarios para crear un agente Agno con capacidades de recuperación de datos web.

Paso nº 6: Crear el agente

En su archivo agent.py, defina su agente:

agent = Agent(
    tools=[bright_data_tools],
    show_tool_calls=True,
    model=llm_model,
)

Esto crea un agente Agno que utiliza el modelo LLM configurado para procesar la entrada del usuario y tiene acceso a las herramientas de Bright Data para la recuperación de datos. La opción show_tool_calls=True es útil para comprender lo que está ocurriendo, ya que muestra qué herramientas está utilizando el agente para gestionar la solicitud.

No olvide importar la clase Agente de Agno:

from agno.agent import Agent

¡Fantástico! La integración Agno + Bright Data está completa. Solo queda enviar una consulta a su agente y verlo en acción.

Paso nº 7: Consultar al agente con Bright Data Tools

Ahora puede interactuar con su agente Agno AI utilizando las siguientes dos líneas de código:

prompt = "Search for AAPL news"
agent.print_response(prompt, markdown=True)

La primera línea define el prompt, que describe la tarea o pregunta que quieres que tu agente maneje. La segunda, la ejecuta e imprime su salida.

La opción markdown=True garantiza que la respuesta se formatee en Markdown, lo que resulta ideal para obtener un resultado legible y fácil de leer.

Nota: Puede probar con cualquier pregunta que desee, pero “Buscar noticias de AAPL” es un buen punto de partida para probar la funcionalidad de recuperación de datos SERP.

Paso 8: Póngalo todo junto

Este debería ser el código final de tu archivo agent.py:

from dotenv import load_dotenv
from agno.tools.brightdata import BrightDataTools
from agno.models.openai import OpenAIChat
from agno.agent import Agent

# Load the environment variables from the .env file
load_dotenv()

# Configure the Bright Data tools for Agno integration
bright_data_tools = BrightDataTools(
    serp_zone="serp", # Replace with your SERP API zone name
    web_unlocker_zone="unlocker" # Replace with your Web Unlocker API zone name
)

# The LLM that will be used by the AI agent
llm_model = OpenAIChat(id="gpt-4o-mini")

# The definition of your Agno agent, with Bright Data tools
agent = Agent(
    tools=[bright_data_tools],
    show_tool_calls=True, # Useful for understanding what happens behind the scenes
    model=llm_model,
)

# Run a task in the AI agent
prompt = "Search for AAPL news"
agent.print_response(prompt, markdown=True)

En menos de 30 líneas de código, acabas de construir un agente de IA que puede extraer datos de cualquier página web y realizar búsquedas en tiempo real en los principales motores de búsqueda. Este es el poder de Agno como framework completo para construir agentes de IA.

Paso nº 9: Ejecute su Agente Agno

Es hora de poner en marcha tu agente Agno AI. En tu terminal, lánzalo con:

python agent.py

Verá una salida animada en el terminal, mostrando que el agente está procesando la petición “Buscar noticias de AAPL”. Una vez completado, el agente producirá un resultado como este:

El resultado del agente Agno en la pregunta "Buscar noticias de AAPL".

La salida incluye:

  1. El mensaje que ha enviado.
  2. La herramienta que el agente utilizó para completar la tarea. En este caso, utilizó la función search_engine() de las herramientas de Bright Data para acceder a Google a través de la SERP API y recuperar noticias en tiempo real sobre las acciones de AAPL.
  3. Una respuesta con formato Markdown generada por el modelo OpenAI a partir de los datos recuperados.

Nota: El resultado contiene noticias en directo con enlaces en los que se puede hacer clic, gracias al formato Markdown. Además, algunas de las noticias son muy recientes y se publicaron sólo unas horas antes de ejecutar la consulta.

Vayamos un paso más allá. Supongamos que desea un resumen de uno de los artículos recuperados. Basta con actualizar la consulta:

prompt = """
Give me a summary of the following news in around 150 words.

NEWS URL:
https://www.msn.com/en-us/money/other/apple-inc-aapl-to-introduce-new-parental-controls-to-protect-kids-and-teens-online/ar-AA1HdVd6
"""
agent.print_response(prompt, markdown=True)

Esta vez, el resultado será algo parecido a esto:

Resultados de la tarea de resumen de noticias

En este caso, el agente utilizó una herramienta diferente: scrape_as_markdown(), que se conecta a la API de Web Unlocker. Esta herramienta recupera el contenido de la página web en formato Markdown y se lo pasa al LLM para que lo resuma.

¡Et voilà! Acaba de experimentar una recuperación y un procesamiento de datos fluidos en su agente de IA, con la tecnología de las herramientas de Bright Data y Agno.

Próximos pasos

El agente de IA que has construido con Agno en este tutorial es sólo un punto de partida. En detalle, sólo hemos arañado la superficie de lo que es posible. Para llevar tu proyecto más lejos, considera los siguientes pasos:

Para más ideas e integraciones avanzadas, echa un vistazo a la documentación oficial de Agno.

Conclusión

En este artículo, ha aprendido a utilizar Agno para construir un agente de IA con capacidades de recuperación de datos en tiempo real utilizando herramientas de Bright Data. Esta integración permite a su agente acceder a contenido web público tanto de sitios web como de motores de búsqueda.

No olvides que lo que has visto aquí es sólo un ejemplo sencillo. Si desea crear agentes más avanzados, necesitará soluciones para recuperar, validar y transformar datos web en directo. Eso es precisamente lo que puede encontrar en la infraestructura de IA de Bright Data.

Cree una cuenta gratuita de Bright Data y empiece a experimentar con nuestras herramientas de datos preparadas para la IA.