Maison >Périphériques technologiques >IA >Construire un chiffon agentique avec Phidata

Construire un chiffon agentique avec Phidata

Christopher Nolan
Christopher Nolanoriginal
2025-03-13 11:54:13840parcourir

Lors de la création d'applications à l'aide de modèles de grande langue (LLMS), la qualité des réponses dépend fortement d'une planification et des capacités de raisonnement efficaces pour une tâche utilisateur donnée. Bien que les techniques de chiffon traditionnelles soient puissantes, l'incorporation de workflows agentiques peut améliorer considérablement la capacité du système à traiter et à répondre aux requêtes.

Dans cet article, vous construirez un système de chiffon agentique avec des composants de mémoire à l'aide du cadre agentique open-source Phidata, démontrant comment combiner les bases de données vectorielles, c'est-à-dire QDRANT, des modèles d'intégration et des agents intelligents pour des résultats améliorés.

Objectifs d'apprentissage

  • Comprendre et concevoir l'architecture pour les composants requis pour les systèmes de chiffon agentiques.
  • Comment les bases de données vectorielles et les modèles d'intégration pour la création de base de connaissances sont-ils intégrés dans le flux de travail agentique?
  • Apprenez à implémenter des composants de la mémoire pour une rétention de contexte améliorée
  • Développez un agent d'IA qui peut effectuer plusieurs appels d'outils et décider de l'outil à choisir en fonction des questions ou des tâches de l'utilisateur à l'aide du phidata.
  • Cas d'utilisation du monde réel pour construire un agent assistant d'analyseur de documents qui peut interagir avec les informations personnelles de la base de connaissances et DuckDuckgo en l'absence de contexte dans la base de connaissances.

Cet article a été publié dans le cadre du Blogathon de la science des données.

Table des matières

  • Qu'est-ce que les agents et le chiffon?
  • Qu'est-ce que Phidata?
  • Agents Utiliser les cas à l'aide de phidata
  • Cas d'utilisation en temps réel pour le chiffon agentique
  • Implémentation de code étape par étape: Rag de l'agence utilisant QDrant, Openai et Phidata
  • Avantages du chiffon agentique
  • Conclusion
  • Questions fréquemment posées

Qu'est-ce que les agents et le chiffon?

Les agents dans le contexte de l'IA sont des composants conçus pour imiter les capacités de pensée et de planification de type humain. Les composants des agents sont constitués de:

Construire un chiffon agentique avec Phidata

  • Décomposition des tâches en sous-tâches gérables.
  • Prise de décision intelligente sur les outils à utiliser et prendre les mesures nécessaires.
  • Raisonnement sur la meilleure approche pour résoudre un problème.

RAG (génération auprès de la récupération) combine la récupération des connaissances avec les capacités LLM. Lorsque nous intégrons les agents dans des systèmes de chiffon, nous créons un flux de travail puissant qui peut:

Construire un chiffon agentique avec Phidata

  • Analyser les requêtes utilisateur intelligemment.
  • Enregistrez le document utilisateur dans une base de données de base ou de vecteur.
  • Choisissez des sources de connaissances ou un contexte appropriés pour la requête utilisateur donnée.
  • Planifiez le processus de récupération et de génération de réponse.
  • Maintenir le contexte à travers des composants de mémoire.

La principale différence entre le chiffon traditionnel et le chiffon agentique réside dans la couche décisionnelle qui détermine comment traiter chaque requête et interagir avec des outils pour obtenir des informations en temps réel.

Maintenant que nous savons, il y a une chose comme le chiffon agentique, comment le construisons-nous? Décomposons-le.

Qu'est-ce que Phidata?

Phidata est un cadre open source conçu pour construire, surveiller et déployer des workflows agentiques. Il prend en charge les agents d'IA multimodaux équipés de mémoire, de connaissances, d'outils et de capacités de raisonnement. Son architecture autochtone modèle garantit la compatibilité avec divers modèles de langage grand (LLM), permettant aux développeurs de transformer n'importe quel LLM en un agent d'IA fonctionnel. De plus, Phidata vous permet de déployer vos workflows d'agent à l'aide d'une approche Bring Your Own Cloud (BYOC), offrant à la fois une flexibilité et un contrôle sur vos systèmes d'IA.

Les caractéristiques clés de Phidata incluent la possibilité de constituer des équipes d'agents qui collaborent pour résoudre des problèmes complexes, une interface utilisateur d'agent conviviale pour une interaction transparente (Phidata Playground) et une prise en charge intégrée pour la génération (RAG) (RAG) de la récupération agentique et les sorties structurées. Le cadre met également l'accent sur la surveillance et le débogage, en fournissant des outils pour garantir des applications d'IA robustes et fiables.

Agents Utiliser les cas à l'aide de phidata

Explorez la puissance transformatrice des systèmes basés sur des agents dans les applications du monde réel, en tirant parti des phidata pour améliorer la prise de décision et l'automatisation des tâches.

Agent d'analyse financière

En intégrant des outils tels que YFinance, Phidata permet la création d'agents qui peuvent récupérer les cours des actions en temps réel, analyser les données financières et résumer les recommandations des analystes. Ces agents aident les investisseurs et les analystes à prendre des décisions éclairées en fournissant des informations à jour sur le marché.

Agent de recherche sur le Web

Phidata aide également à développer des agents capables de récupérer des informations en temps réel à partir du Web à l'aide d'outils de recherche comme DuckDuckgo, Serpapi ou Serper. Ces agents peuvent répondre aux requêtes des utilisateurs en s'approchant des dernières données, ce qui les rend précieuses pour les tâches de recherche et de collecte d'informations.

Agents multimodaux

Phidata prend également en charge les capacités multimodales, permettant la création d'agents qui analysent les images, les vidéos et l'audio. Ces agents multimodaux peuvent gérer des tâches telles que la reconnaissance d'image, la génération de texte à l'image, la transcription audio et l'analyse vidéo, offrant des solutions polyvalentes dans divers domaines. Pour les tâches de texte à image ou de texte à vidéo, des outils comme Dall-E et Replicat peuvent être intégrés, tandis que pour les tâches d'image à texte et de vidéo à texte, les LLM multimodaux tels que GPT-4, Gemini 2.0, Claude AI et d'autres peuvent être utilisés.

Cas d'utilisation en temps réel pour le chiffon agentique

Imaginez que vous ayez une documentation pour votre startup et que vous souhaitez créer un assistant de chat qui peut répondre aux questions des utilisateurs en fonction de cette documentation. Pour rendre votre chatbot plus intelligent, il doit également gérer les données en temps réel. En règle générale, répondre aux requêtes de données en temps réel nécessite de reconstruire la base de connaissances ou de recycler le modèle.

C'est là que les agents entrent en jeu. En combinant la base de connaissances avec des agents, vous pouvez créer une solution de génération de chiffon agentique (récupération auprès de la récupération) qui améliore non seulement la capacité du chatbot à récupérer des réponses précises mais améliore également ses performances globales.

Construire un chiffon agentique avec Phidata

Nous avons trois composantes principales qui se réunissent pour former notre base de connaissances. Tout d'abord, nous avons des sources de données, comme les pages de documentation, les PDF ou les sites Web que nous souhaitons utiliser. Ensuite, nous avons QDrant, qui est notre base de données vectorielle - c'est comme un système de stockage intelligent qui nous aide à trouver rapidement des informations similaires. Et enfin, nous avons le modèle d'incorporation qui convertit notre texte en un format que les ordinateurs peuvent mieux comprendre. Ces trois composants alimentent notre base de connaissances, ce qui ressemble au cerveau de notre système.

Maintenant, nous définissons l'objet Agent de Phidata.

L'agent est connecté à trois composants:

  • Un modèle de raisonnement (comme GPT-4, Gemini 2.0 ou Claude) qui l'aide à penser et à planifier.
  • Mémoire (SqlagentStorage) qui aide à se souvenir des conversations précédentes
  • Outils (comme la recherche DuckDuckgo) qu'il peut utiliser pour trouver des informations

Remarque: Ici, la base de connaissances et DuckDuckgo agiront comme un outil, puis sur la base d'une tâche ou d'une question utilisateur, l'agent prendra des mesures sur l'outil à utiliser pour générer la réponse. Le modèle d'intégration est également OpenAI par défaut, nous utiliserons donc OpenAI - GPT-4O comme modèle de raisonnement.

Créons ce code.

Implémentation de code étape par étape: Rag de l'agence utilisant QDrant, Openai et Phidata

Il est temps de construire un agent assistant de documentanyzer qui peut interagir avec les informations personnelles (un site Web) à partir de la base de connaissances et de DuckDuckgo en l'absence de contexte dans la base de connaissances.

Étape 1: Configuration des dépendances

Pour construire le flux de travail de chiffon agentique, nous devons installer quelques bibliothèques qui incluent:

  • Phidata: pour définir l'exécution de l'objet et du flux de travail de l'agent.
  • Google Generative AI - Modèle de raisonnement IE, Gemini 2.0 Flash
  • QDRANT - Base de données vectorielle où la base de connaissances sera enregistrée et utilisée plus tard pour récupérer les informations pertinentes
  • DuckDuckgo - Moteur de recherche utilisé pour extraire des informations en temps réel.
 PIP installe Phidata Google-Generativaiai DuckDuckGo-Search Qdrant-Client

Étape2: touches API de configuration et de configuration initiales

Dans cette étape, nous allons configurer les variables d'environnement et rassembler les informations d'identification API requises pour exécuter ce cas d'utilisation.Pour votre clé API OpenAI, vous pouvez l'obtenir à partir de: https: //platform.openai.com/. Créez votre compte et créez une nouvelle clé.

 de Phi.Knowledge.Website Import Site Webknowledgebase
à partir de Phi.vectordb.qdrant Import qdrant

de l'agent d'importation Phi.agent
de phi.storage.agent.sqlite Import SqlagentStorage
à partir de Phi.Model.Openai Import Openaichat
de phi.tools.duckduckgo Import DuckDuckgo

Importer un système d'exploitation

os.environ ['openai_api_key'] = "<place>"</place>

Étape 3: Configuration de la base de données vectorielle - Qdrant

Vous devrez maintenant initialiser le client QDrant en fournissant le nom de la collection, l'URL et la clé API pour votre base de données vectorielle. La base de données QDRANT stocke et indexe les connaissances du site Web, permettant à l'agent d'effectuer la récupération des informations pertinentes en fonction des requêtes utilisateur. Cette étape configure la couche de données pour votre agent:

  • Créer un cluster: https://cloud.qdrant.io/
  • Donnez un nom à votre cluster et copiez la clé API une fois le cluster créé.
  • Sous la commande curl, vous pouvez copier l'URL du point de terminaison.
 Collection_name = "agentic-rag"
Qdrant_url = "<place>"
Qdrant_API_KEY = "<play>"

vector_db = qdrant (
    collection = collection_name,
    url = qdrant_url,
    api_key = qdrant_api_key,
)</play></place>

Étape 4: Création de la base de connaissances

Ici, vous définissez les sources à partir desquelles l'agent tirera ses connaissances. Dans cet exemple, nous construisons un agent d'analyseur de documents qui peut rendre notre travail facile à répondre aux questions du site Web. Nous utiliserons l'URL du site Web du document QDrant pour l'indexation.

L'objet Sitewekeledgebase interagit avec la base de données vectorielle QDRANT pour stocker les connaissances indexées de l'URL fournie. Il est ensuite chargé dans la base de connaissances pour la récupération par l'agent.

Remarque: N'oubliez pas que nous utilisons la fonction de charge pour indexer la source de données vers la base de connaissances. Cela doit être exécuté une seule fois pour chaque nom de collection, si vous modifiez le nom de la collection et que vous souhaitez ajouter de nouvelles données, seulement ce temps exécutez la fonction de chargement.

 Url = "https://qdrant.tech/documentation/overview/"

Knowledge_Base = SitewenKeledBase (
    urls = [url],
    max_links = 10,
    vector_db = vector_db,
)

connaissance_base.load () # Exécutez une seule fois, après la création de la collection, commentez ceci

Étape 5: Définissez votre agent

L'agent configure un LLM (GPT-4) pour la génération de réponse, une base de connaissances pour la récupération d'informations et un système de stockage SQLite pour suivre les interactions et les réponses en tant que mémoire. Il configure également un outil de recherche DuckDuckgo pour des recherches Web supplémentaires en cas de besoin. Cette configuration constitue l'agent Core AI capable de répondre aux requêtes.

Nous définirons Show_Tool_Calls sur True pour observer l'exécution d'exécution du backend et suivre si la requête est acheminée vers la base de connaissances ou l'outil de recherche DuckDuckgo. Lorsque vous exécutez cette cellule, il créera un fichier de base de données où tous les messages sont enregistrés en activant le stockage de la mémoire et en définissant ADD_HISTORY_TO_MESSAGES à TRUE.

 agent = agent (
    modèle = openaichat (),
    connaissance = connaissance_base,
    outils = [DuckDuckGo ()],

    show_tool_calls = true,
    Markdown = true,

    Storage = SQLAGENTSTORAGE (TABLE_NAME = "Agenttic_Rag", DB_FILE = "AGENTS_RAG.DB"),
    add_history_to_messages = true,
)

Étape 6: Essayez plusieurs requêtes

Enfin, l'agent est prêt à traiter les requêtes utilisateur. En appelant la fonction print_response (), vous transmettez une requête utilisateur et l'agent répond en récupérant des informations pertinentes à partir de la base de connaissances et en les traitant. Si la requête n'est pas de la base de connaissances, elle utilisera un outil de recherche. Permet d'observer les changements.

Requête -1: de la base de connaissances

 agent.print_response (
  "Quelles sont les techniques d'indexation mentionnées dans le document?", 
  Stream = vrai
)

Construire un chiffon agentique avec Phidata

Requête-2 en dehors de la base de connaissances

 agent.print_response (
  "Qui est Virat Kohli?", 
  Stream = vrai
)

Construire un chiffon agentique avec Phidata

Avantages du chiffon agentique

Découvrez les principaux avantages du chiffon agentique, où les agents intelligents et les graphiques relationnels se combinent pour optimiser la récupération des données et la prise de décision.

  • Capacités de raisonnement améliorées pour une meilleure génération de réponse.
  • Sélection intelligente des outils basée sur des contextes de requête tels que la base de connaissances et DuckDuckgo ou tout autre outil à partir de l'endroit où nous pouvons récupérer le contexte qui peut être fourni à l'agent.
  • Intégration de la mémoire pour une sensibilisation au contexte améliorée qui peut se souvenir et extraire des messages de conversation historique.
  • Une meilleure planification et une meilleure décomposition des tâches, la partie principale du flux de travail agentique est d'obtenir la tâche et de la décomposer en sous-tâches, puis de prendre de meilleures décisions et plans d'action.
  • Intégration flexible avec diverses sources de données telles que le PDF, le site Web, le CSV, les documents et bien d'autres.

Conclusion

La mise en œuvre du chiffon agentique avec des composants de mémoire fournit une solution fiable pour créer des systèmes de recherche de connaissances intelligents et des moteurs de recherche. Dans cet article, nous avons exploré ce que sont les agents et le chiffon et comment les combiner. Avec la combinaison du chiffon agentique, le routage des requêtes s'améliore en raison des capacités de prise de décision des agents.

Principaux à retenir

  • Découvrez comment le chiffon agentique avec Phidata améliore l'IA en intégrant la mémoire, une base de connaissances et la manipulation de la requête dynamique.
  • Apprenez à mettre en œuvre un chiffon agentique avec Phidata pour une récupération efficace des informations et une génération de réponse adaptative.
  • La bibliothèque de données Phidata fournit un processus d'implémentation rationalisé avec seulement 30 lignes de code de base ainsi que le multimodal tel que Gemini 2.0 Flash.
  • Les composants de la mémoire sont cruciaux pour maintenir le contexte et améliorer la pertinence de la réponse.
  • L'intégration de plusieurs outils (base de connaissances, Recherche Web) permet des bases de données flexibles de récupération d'informations - vectorielle comme QDRANT offrent des capacités d'indexation avancées pour une recherche efficace.

Questions fréquemment posées

Q1. Phidata peut-il gérer les tâches multimodales et quels outils s'intègre-t-il à cet effet?

A. Oui, Phidata est conçue pour prendre en charge les agents d'IA multimodaux capables de gérer des tâches impliquant des images, des vidéos et de l'audio. Il intègre des outils comme DALL-E et reproduire pour la génération de texte à l'image ou de texte à vidéo, et utilise des LLM multimodales telles que GPT-4, Gemini 2.0 et Claude AI pour les tâches d'image à texte et vidéo-texte.

Q2. Quels outils et frameworks sont disponibles pour développer des systèmes de chiffon agentiques?

A. Les systèmes de génération (RAG) de la récupération de la récupération de la récupération (RAG) impliquent l'utilisation de divers outils et cadres qui facilitent l'intégration d'agents autonomes avec des capacités de récupération et de génération. Voici quelques outils et cadres disponibles à cet effet: Langchain, Llamaindex, Phidata, Crewai et Autogen.

Q3. Phidata peut-il s'intégrer aux outils externes et aux bases de connaissances?

A. Oui, Phidata permet l'intégration de divers outils et bases de connaissances. Par exemple, il peut se connecter avec des outils de données financières comme YFinance pour une analyse de stock en temps réel ou des outils de recherche Web comme DuckDuckgo pour récupérer des informations à jour. Cette flexibilité permet la création d'agents spécialisés adaptés à des cas d'utilisation spécifiques.

Les médias présentés dans cet article ne sont pas détenus par l'analytique vidhya et sont utilisés à la discrétion de l'auteur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn