Blog / AI
AI

Construire des agents d’intelligence artificielle avec Bright Data dans Agno

Découvrez comment alimenter les agents Agno AI avec des outils de SERP et de web scraping de Bright Data pour des flux de données précis et en temps réel.
6 min de lecture
Build an Agent with SERP and Web Scraping Tools in Agno

Dans cet article, vous verrez ce qui suit :

  • Ce qu’est Agno et ce qui le rend spécial en tant que cadre d’agent d’IA.
  • Pourquoi le fait de l’intégrer à des outils de recherche de données rend vos agents d’IA beaucoup plus puissants.
  • Comment combiner Agno avec les outils Bright Data pour créer des agents capables de récupérer des données en direct.

Plongeons dans l’aventure !

Qu’est-ce qu’Agno ?

Agno est un framework Python open-source pour la construction d’agents d’intelligence artificielle légers et de systèmes multi-agents. Il est doté d’un support intégré pour la mémoire, l’intégration des connaissances, le raisonnement avancé, etc.

Ce qui rend Agno unique, ce sont les aspects suivants :

  • Indépendant du modèle: Offre une interface unifiée à plus de 23 fournisseurs de LLM.
  • Haute performance: Les agents sont instanciés en environ 3 microsecondes, en utilisant seulement ~6,5 KiB de mémoire en moyenne.
  • Leraisonnement en tant que citoyen de première classe: L’accent est mis sur le raisonnement pour améliorer la fiabilité de l’agent et gérer les tâches difficiles. Il prend en charge trois approches de raisonnement : les modèles de raisonnement, les outils de raisonnement et les chaînes de pensée personnalisées.
  • Multi-modalité native: Les agents peuvent traiter et générer du texte, des images, du son et de la vidéo dès le départ.
  • Prise en charge des scénarios multi-agents: Construire des équipes collaboratives d’agents avec une mémoire partagée, un contexte et un raisonnement coordonné.
  • Recherche agentique intégrée: Les agents peuvent effectuer des recherches dans plus de 20 bases de données vectorielles en cours d’exécution pour des flux de travail RAG agentiques de pointe.
  • Mémoire intégrée et stockage des sessions: Les agents intègrent des pilotes de stockage et de mémoire, ce qui permet de disposer d’une mémoire à long terme et d’un suivi permanent des sessions.
  • Sorties structurées: Renvoie des réponses entièrement typées.

En outre, Agno est livré avec un support intégré pour plus de 50 fournisseurs d’outils d’IA tiers. Cela signifie que les agents d’IA créés avec Agno peuvent facilement s’intégrer à certaines des meilleures solutions d’IA du marché.

Les agents d’IA doivent avoir accès aux données Web pour être précis et efficaces

Chaque cadre d’agent d’IA hérite des principales limitations des LLM sur lesquels il s’appuie. Étant donné que la plupart des LLM sont préformés sur des ensembles de données statiques, ils ne sont pas conscients du temps réel et ne peuvent pas accéder de manière fiable à des contenus web en direct.

Cela conduit souvent à des réponses périmées, voire à des hallucinations. Pour surmonter ces limitations, les agents (et, pour les extensions, les LLM sur lesquels ils s’appuient) ont besoin d’accéder à des données web fiables. Pourquoi des données web en particulier ? Parce que le web est la source d’information la plus complète qui soit.

Par conséquent, un moyen efficace d’y parvenir est de donner aux agents d’Agno la possibilité d’effectuer des recherches en direct et de récupérer le contenu de n’importe quelle page web. C’est possible grâce aux outils Bright Data d’Agno!

Ces outils sont intégrés de manière native dans Agno et permettent aux agents d’accéder à une large suite d’outils de données web prêts pour l’IA. Les fonctionnalités comprennent le web scraping, l’extraction de données SERP, des capacités de capture d’écran et l’accès à des flux de données au format JSON provenant de plus de 40 sites bien connus.

Comment intégrer les outils de récupération de données Bright dans un agent Agno ?

Dans cette section, vous apprendrez à utiliser Agno pour construire un agent d’intelligence artificielle Python qui peut se connecter aux outils Bright Data. Ces derniers doteront votre agent de la capacité de récupérer des données à partir de n’importe quelle page et d’extraire des résultats de moteurs de recherche à jour.

Suivez les étapes ci-dessous pour créer votre agent Bright Data-powered AI dans Agno !

Conditions préalables

Pour suivre ce tutoriel, assurez-vous d’avoir les éléments suivants :

Ne vous inquiétez pas si vous n’avez pas encore de clé d’API Bright Data, car nous vous aiderons à en créer une dans les étapes suivantes.

Étape 1 : Configuration du projet

Ouvrez un terminal et créez un nouveau dossier pour votre agent Agno AI avec récupération de données alimentée par Bright Data :

mkdir agno-bright-data-agent

Le dossier agno-bright-data-agent contiendra tout le code Python de votre agent IA.

Ensuite, accédez au dossier du projet et créez un environnement virtuel à l’intérieur de celui-ci :

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

Ouvrez maintenant le dossier du projet dans votre IDE Python préféré. Nous recommandons Visual Studio Code (avec l’extension Python) ou PyCharm Community Edition.

Créez un nouveau fichier nommé agent.py dans le dossier du projet. La structure de votre projet devrait maintenant ressembler à ceci :

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

Activez l’environnement virtuel dans votre terminal. Sous Linux ou macOS, exécutez cette commande :

source venv/bin/activate

De manière équivalente, sous Windows, lancez :

venv/Scripts/activate

Dans les étapes suivantes, vous serez guidé dans l’installation des dépendances requises. Si vous préférez tout installer maintenant, exécutez la commande suivante dans l’environnement virtuel activé :

pip install agno python-dotenv openai requests 

Note: Nous installons openai parce que ce tutoriel utilise OpenAI comme fournisseur LLM. Si vous prévoyez d’utiliser un autre LLM, installez plutôt la bibliothèque appropriée pour ce fournisseur.

Vous êtes prêt ! Vous disposez maintenant d’un environnement de développement Python prêt à construire un agent d’IA à l’aide des outils Agno et Bright Data.

Étape 2 : Configurer les variables d’environnement Lecture

Votre agent Agno interagira avec des services tiers tels que OpenAI et Bright Data via l’intégration d’API. Pour le faire en toute sécurité, vous ne devez pas coder en dur les clés d’API directement dans votre code Python. Au lieu de cela, stockez-les en tant que variables d’environnement.

Pour simplifier le chargement des variables d’environnement, utilisez la bibliothèque python-dotenv. Une fois votre environnement virtuel activé, installez-le en exécutant :

pip install python-dotenv

Ensuite, dans votre fichier agent.py, importez la bibliothèque et chargez les variables d’environnement à l’aide de la fonction load_dotenv() :

from dotenv import load_dotenv

load_dotenv()

Cette fonction permet à votre script de lire les variables d’un fichier .env local. Créez un fichier .env à la racine du dossier de votre projet :

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

C’est parfait ! Vous êtes maintenant prêt à gérer en toute sécurité les secrets d’intégration de tiers à l’aide de variables d’environnement.

Étape 3 : Démarrer avec Bright Data

A ce jour, les outils Bright Data intégrés à Agno permettent d’accéder à ces solutions :

  • API SERP: Une API qui fournit des résultats de recherche en temps réel de tous les principaux moteurs de recherche.
  • API Web Unlocker: Une API de scraping avancée qui contourne les protections sophistiquées des robots, vous donnant accès à n’importe quelle page web (au format Markdown, qui est optimisé pour l’utilisation par l’IA).
  • Web Scraper APIs: Points d’accès dédiés au scraping pour l’extraction éthique de données web fraîches et structurées à partir de plusieurs domaines populaires.

Pour intégrer les outils susmentionnés, vous devez :

  1. Configurez les solutions SERP API et Web Unlocker dans votre compte Bright Data.
  2. Récupérez votre clé API Bright Data pour accéder à ces services.

Suivez les instructions ci-dessous pour faire les deux !

Tout d’abord, si vous n’avez pas encore de compte Bright Data, commencez par en créer un. Si vous en avez déjà un, connectez-vous et ouvrez votre tableau de bord :

En cliquant sur le bouton "Get proxy products" dans votre compte Bright Data

Cliquez sur le bouton “Get proxy products”, qui vous mènera à la page “Proxies & Scraping Infrastructure” :

Notez les zones SERP API et Web Unlocker API

Dans ce cas, vous pouvez voir que l’API SERP et l’API Web Unlocker sont déjà activées et prêtes à être utilisées. Leurs noms de zone sont respectivement serp et unblocker.

Si ce n’est pas le cas, vous devez les créer. Nous allons voir comment créer une zone API Web Unlocker, mais le processus est similaire pour la création d’une zone API SERP.

Faites défiler vers le bas et cliquez sur “Créer une zone” sur la carte “Web Unlocker API” :

Cliquer sur "Créer une zone" sur la carte "Web Unlocker API".

Donnez un nom à votre zone (par exemple débloqueur), activez les fonctions avancées pour une efficacité maximale et cliquez sur “Ajouter” :

Configuration de votre nouvelle zone API Web Unlocker

Vous serez alors redirigé vers la page de la zone, qui se présente comme suit :

La page "unlocker" de la zone de l'API Web Unlocker

Assurez-vous que le commutateur d’activation est réglé sur “Actif”, car cela signifie que votre zone est correctement configurée et prête à être utilisée.

Ensuite, suivez le guide officiel de Bright Data pour générer votre clé API. Une fois que vous l’avez, ajoutez-la à votre fichier .env comme ceci :

BRIGHT_DATA_API_KEY="<YOUR_BRIGHT_DATA_API_KEY>"

Remplacez le par la valeur réelle de votre clé API.

Merveilleux ! Il est temps d’intégrer les outils de Bright Data dans votre script d’agent Agno.

Étape 4 : Installer et configurer les outils de données Agno Bright

Dans votre dossier de projet, avec l’environnement virtuel activé, installez Agno en exécutant :

pip install agno

Remarque: le paquet agno comprend déjà une prise en charge intégrée des outils Bright Data, de sorte qu’aucun paquet spécifique à l’intégration n’est nécessaire pour cette configuration.

Puisque les outils Bright Data reposent sur la bibliothèque de requêtes Python, veillez à l’installer également :

pip install requests

Dans votre fichier agent.py, importez les outils Bright Data d’Agno :

from agno.tools.brightdata import BrightDataTools

Initialiser ensuite les outils de cette manière :

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

Remplacez "YOUR_SERP_ZONE_NAME" et "YOUR_UNLOCKER_ZONE_NAME" par les noms des zones Bright Data que vous avez configurées précédemment. Par exemple, si vos zones sont nommées serp et unlocker, le code sera le suivant :

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

Notez que vous pouvez également ne pas passer les noms de zones directement dans le code. A la place, utilisez les variables d’environnement suivantes dans votre fichier .env :

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

Remplacez les caractères de remplacement par les noms réels de vos zones Bright Data. Ensuite, supprimez les arguments serp_zone et web_unlocker_zone dans BrightDataTools,

Remarque: pour se connecter aux solutions Bright Data, BrightDataTools s’appuie sur la variable d’environnement BRIGHT_DATA_API_KEY. Plus précisément, il s’attend à ce que la variable BRIGHT_DATA_API_KEY env contienne votre clé d’API Bright Data. C’est pourquoi nous l’avons ajoutée au fichier .env dans l’étape précédente.

C’est incroyable ! La prochaine intégration est celle du LLM.

Étape n° 5 : Mise en place du modèle LLM

Pour se connecter à OpenAI – le fournisseur LLM utilisé dans ce tutoriel – commencez par installer la dépendance openai requise :

pip install openai

Ensuite, importez la classe d’intégration OpenAI d’Agno :

from agno.models.openai import OpenAIChat

Initialisez maintenant votre modèle LLM comme suit :

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

Ci-dessus, "gpt-4o-mini" est le nom du modèle OpenAI utilisé dans ce guide. Vous pouvez le remplacer par n’importe quel autre modèle OpenAI pris en charge si nécessaire.

Dans les coulisses, OpenAIChat s’attend à ce que votre clé d’API OpenAI soit définie dans une variable d’environnement nommée OPENAI_API_KEY. Pour la configurer, ajoutez la ligne suivante à votre fichier .env :

OPENAI_API_KEY="<YOUR_OPENAI_API_KEY>"

Remplacez le par votre clé d’API OpenAI.

Note: Si vous préférez vous connecter à un autre LLM pris en charge par Agno, reportez-vous à la documentation officielle pour obtenir des instructions.

Bravo ! Vous disposez maintenant de tous les éléments nécessaires à la création d’un agent Agno doté de capacités de recherche de données sur le web.

Étape 6 : Créer l’agent

Dans votre fichier agent.py, définissez votre agent :

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

Cela crée un agent Agno qui utilise le modèle LLM configuré pour traiter les entrées des utilisateurs et qui a accès aux outils Bright Data pour la récupération des données. L’option show_tool_calls=True est utile pour comprendre ce qui se passe, car elle affiche les outils utilisés par l’agent pour traiter la demande.

N’oubliez pas d’importer la classe Agent d’Agno :

from agno.agent import Agent

Fantastique ! L’intégration Agno + Bright Data est terminée. Il ne vous reste plus qu’à envoyer une requête à votre agent pour la voir à l’œuvre.

Étape 7 : Interroger l’agent à l’aide de Bright Data Tools

Vous pouvez maintenant interagir avec votre agent Agno AI en utilisant les deux lignes de code suivantes :

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

La première ligne définit l’invite, qui décrit la tâche ou la question que vous voulez que votre agent traite. La deuxième ligne l’exécute et imprime sa sortie.

L’option markdown=True garantit que la réponse est formatée en Markdown, ce qui est idéal pour un résultat lisible et adapté à l’IA.

Remarque: vous pouvez essayer n’importe quelle requête, mais “Rechercher des informations sur AAPL” est un excellent point de départ pour tester la fonctionnalité d’extraction des données SERP.

Étape n° 8 : Assembler le tout

Ceci devrait être le code final de votre fichier 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 moins de 30 lignes de code, vous venez de construire un agent d’intelligence artificielle capable d’extraire des données de n’importe quelle page web et d’effectuer des recherches en temps réel sur les principaux moteurs de recherche. C’est la puissance d’Agno en tant que framework complet pour la construction d’agents d’intelligence artificielle !

Étape n° 9 : Exécuter votre agent Agno

Il est temps de faire fonctionner votre agent Agno AI. Dans votre terminal, lancez-le avec :

python agent.py

Vous verrez une sortie animée dans le terminal, montrant que l’agent est en train de traiter l’invite “Search for AAPL news”. Une fois le traitement terminé, l’agent produira un résultat comme celui-ci :

Le résultat de l'agent Agno à l'invite "Search for AAPL news" (Recherche de nouvelles AAPL)

La production comprend

  1. L’invite que vous avez soumise.
  2. L’outil utilisé par l’agent pour réaliser la tâche. Dans ce cas, il a utilisé la fonction search_engine() des outils Bright Data pour accéder à Google via l’API SERP et récupérer des informations en temps réel sur l’action AAPL.
  3. Une réponse au format Markdown générée par le modèle OpenAI sur la base des données récupérées.

Remarque: le résultat contient des nouvelles en direct avec des liens cliquables, grâce au formatage Markdown. De plus, certains articles sont très récents et n’ont été publiés que quelques heures avant l’exécution de l’invite.

Allons un peu plus loin. Supposons que vous souhaitiez obtenir un résumé de l’un des articles d’actualité récupérés. Il vous suffit de mettre à jour l’invite :

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)

Cette fois, le résultat ressemblera à ceci :

Le résultat de la tâche de résumé de nouvelles

Dans ce cas, l’agent a utilisé un outil différent : scrape_as_markdown(), qui se connecte à l’API Web Unlocker. Cet outil récupère le contenu de la page web au format Markdown et le transmet au LLM pour qu’il le résume.

Et voilà ! Vous venez de faire l’expérience d’une récupération et d’un traitement transparents des données dans votre agent d’intelligence artificielle, grâce aux outils Bright Data et à Agno.

Prochaines étapes

L’agent IA que vous avez construit avec Agno dans ce tutoriel n’est qu’un point de départ. En détail, nous n’avons fait qu’effleurer la surface de ce qui est possible. Pour faire avancer votre projet, envisagez les étapes suivantes :

Pour plus d’idées et d’intégrations avancées, consultez la documentation officielle d’Agno.

Conclusion

Dans cet article, vous avez appris à utiliser Agno pour créer un agent d’intelligence artificielle doté de capacités d’extraction de données en temps réel à l’aide des outils Bright Data. Cette intégration permet à votre agent d’accéder au contenu web public à partir de sites web et de moteurs de recherche.

N’oubliez pas que ce que vous avez vu ici n’est qu’un simple exemple. Si vous souhaitez créer des agents plus avancés, vous aurez besoin de solutions pour récupérer, valider et transformer les données Web en direct. C’est précisément ce que vous trouverez dans l’infrastructure AI de Bright Data.

Créez un compte Bright Data gratuit et commencez à expérimenter avec nos outils de données prêts pour l’IA !