Heim >Technologie-Peripheriegeräte >KI >Aufbau eines Agentenlappen mit Phidata
Beim Erstellen von Anwendungen mit großer Sprachmodellen (LLMs) hängt die Qualität der Antworten stark von effektiven Planungs- und Argumentationsfunktionen für eine bestimmte Benutzeraufgabe ab. Während herkömmliche RAG -Techniken leistungsstark sind, kann das Einbinden von Agenten -Workflows die Fähigkeit des Systems, auf Fragen zu verarbeiten und zu reagieren, erheblich verbessern.
In diesem Artikel erstellen Sie ein Agentenlag-System mit Speicherkomponenten mit dem Phidata Open-Source-Agenten-Framework, um zu demonstrieren, wie Vektordatenbanken, Qdrant, Einbettungsmodelle und intelligente Agenten für verbesserte Ergebnisse kombiniert werden können.
Dieser Artikel wurde als Teil des Data Science -Blogathons veröffentlicht.
Agenten im Kontext von KI sind Komponenten, um menschlich-ähnliches Denken und Planungsfähigkeiten nachzuahmen. Agentenkomponenten bestehen aus:
RAG (Retrieval-Augmented-Generation) kombiniert Wissensabruf mit LLM-Funktionen. Wenn wir Agenten in RAG -Systeme integrieren, erstellen wir einen leistungsstarken Workflow, der kann:
Der Hauptunterschied zwischen herkömmlichem Lappen und Agentenlappen liegt in der Entscheidungsschicht, die feststellt, wie jede Abfrage verarbeitet und mit Tools interagiert, um Echtzeitinformationen zu erhalten.
Jetzt, wo wir wissen, gibt es so etwas wie agentische Lappen, wie bauen wir ihn auf? Lass es uns zusammenbrechen.
Phidata ist ein Open-Source-Framework, mit dem Agenten-Workflows erstellt, überwacht und bereitgestellt werden sollen. Es unterstützt multimodale KI -Agenten, die mit Speicher-, Wissens-, Tools- und Argumentationsfunktionen ausgestattet sind. Die Modell-Agnostic-Architektur sorgt für die Kompatibilität mit verschiedenen großsprachigen Modellen (LLMs) und ermöglicht den Entwicklern, LLM in einen funktionalen AI-Agenten zu verwandeln. Darüber hinaus können Sie mit Phidata Ihre Agent -Workflows über einen Byoc -Ansatz (bringen Sie Ihren eigenen Cloud) bereit, um sowohl Flexibilität als auch Kontrolle über Ihre KI -Systeme anzubieten.
Zu den wichtigsten Merkmalen von Phidata gehören die Fähigkeit, Teams von Agenten zu erstellen, die zusammenarbeiten, um komplexe Probleme zu lösen, eine benutzerfreundliche UI-UI für die nahtlose Interaktion (Phidata-Spielplatz) und eingebaute Unterstützung für agentenabruf-generale Generation (LAB) und strukturierte Ausgaben. Das Framework betont auch die Überwachung und Debuggierung und bietet Tools, um robuste und zuverlässige AI -Anwendungen zu gewährleisten.
Erforschen Sie die transformative Leistung von agentenbasierten Systemen in realen Anwendungen und nutzen Sie Phidata, um die Entscheidungsfindung und die Aufgabenautomatisierung zu verbessern.
Durch die Integration von Tools wie YFInance ermöglicht Phidata die Erstellung von Agenten, die Echtzeit-Aktienkurse abrufen, Finanzdaten analysieren und Analystenempfehlungen zusammenfassen können. Solche Agenten unterstützen Anleger und Analysten bei fundierten Entscheidungen, indem sie aktuelle Markteinblicke liefern.
Phidata hilft auch dabei, Agenten zu entwickeln, die in der Lage sind, Echtzeitinformationen aus dem Web mithilfe von Suchwerkzeugen wie DuckDuckgo, Serpapi oder Serper abzurufen. Diese Agenten können Benutzeranfragen beantworten, indem sie die neuesten Daten beschaffen, wodurch sie für Forschungs- und Informationsansammlungsaufgaben wertvoll sind.
Phidata unterstützt auch multimodale Funktionen und ermöglicht die Erstellung von Agenten, die Bilder, Videos und Audio analysieren. Diese multimodalen Wirkstoffe können Aufgaben wie Bilderkennung, Text-zu-Image-Generierung, Audio-Transkription und Videoanalyse übernehmen und vielseitige Lösungen in verschiedenen Domänen anbieten. Für Text-zu-Image- oder Text-zu-Video-Aufgaben können Tools wie Dall-E und Replicate integriert werden, während für Bild-zu-Text- und Video-zu-Text-Aufgaben, multimodale LLMs wie GPT-4, Gemini 2.0, Claude AI und andere verwendet werden können.
Stellen Sie sich vor, Sie haben Unterlagen für Ihr Startup und möchten einen Chat -Assistenten erstellen, der die Benutzerfragen basierend auf dieser Dokumentation beantworten kann. Um Ihren Chatbot intelligenter zu gestalten, müssen auch Echtzeitdaten verarbeitet werden. Die Beantwortung von Echtzeit-Datenabfragen erfordert in der Regel die Wiederaufbau der Wissensbasis oder zur Umschulung des Modells.
Hier kommen Agenten ins Spiel. Durch die Kombination der Wissensbasis mit Agenten können Sie eine Agentenlagung (Abrufen-Generation) erstellen, die nicht nur die Fähigkeit des Chatbot verbessert, genaue Antworten abzurufen, sondern auch die Gesamtleistung verbessert.
Wir haben drei Hauptkomponenten, die zusammenkommen, um unsere Wissensbasis zu bilden. Erstens haben wir Datenquellen wie Dokumentationsseiten, PDFs oder Websites, die wir verwenden möchten. Dann haben wir QDrant, das ist unsere Vektor -Datenbank - es ist wie ein intelligentes Speichersystem, mit dem wir schnell ähnliche Informationen finden können. Und schließlich haben wir das Einbettungsmodell, das unseren Text in ein Format umwandelt, das Computer besser verstehen können. Diese drei Komponenten ernähren sich in unsere Wissensbasis, die wie das Gehirn unseres Systems entspricht.
Jetzt definieren wir das Agentenobjekt von Phidata.
Der Agent ist mit drei Komponenten verbunden:
HINWEIS: Hier fungieren die Wissensbasis und DuckDuckgo beide als Tool und basieren dann auf einer Aufgabe oder einer Benutzerabfrage, die der Agent über welches Tool zum Generieren der Antwort verwendet werden soll. Das Einbettungsmodell ist standardmäßig offen, sodass wir OpenAI-GPT-4O als Argumentationsmodell verwenden.
Erstellen wir diesen Code.
Es ist an der Zeit, einen Dokumentanalysator -Assistenten zu erstellen, der mit persönlichen Informationen (einer Website) von der Wissensbasis und Duckduckgo ohne Kontext in der Wissensbasis interagieren kann.
Um den Agentic Rag -Workflow zu erstellen, müssen wir einige Bibliotheken installieren, die enthalten:
PIP Installation Phidata Google-Generativai Duckduckgo-Search QDrant-Client
In diesem Schritt richten wir die Umgebungsvariablen ein und sammeln die erforderlichen API -Anmeldeinformationen, um diesen Anwendungsfall auszuführen. Für Ihre OpenAI -API -Schlüssel können Sie sie erhalten: https: //platform.openai.com/. Erstellen Sie Ihr Konto und erstellen Sie einen neuen Schlüssel.
von Phi.knowledge.website Import -Website -KnowledgeBase von Phi.Vectordb.qdrant import Qdrant von Phi.agent Importagenten von Phi.Storage.agent.sqlite import SQLAGentStorage von Phi.Model.openai Import Openaichat von Phi.tools.duckDuckgo Import Duckduckgo OS importieren Os.Environ ['openai_api_key'] = "<ersatz>"</ersatz>
Sie müssen jetzt den QDRant -Client initialisieren, indem Sie den Sammlungsnamen, die URL und den API -Schlüssel für Ihre Vektor -Datenbank bereitstellen. Die QDRant -Datenbank speichert und indiziert das Wissen von der Website, sodass der Agent das Abrufen relevanter Informationen basierend auf Benutzeranfragen durchführen kann. In diesem Schritt werden die Datenebene für Ihren Agenten festgelegt:
Collection_name = "Agentic-Rag" QDRANT_URL = "<seventliche>" Qdrant_api_key = "<ersetzen>" vector_db = qdrant ( Sammlung = Sammlung_Name, url = qdrant_url, api_key = qdrant_api_key, )</ersetzen></seventliche>
Hier definieren Sie die Quellen, aus denen der Agent sein Wissen stellt. In diesem Beispiel erstellen wir einen Dokumentanalysator -Agenten, mit dem unsere Aufgabe von der Website beantwortet werden kann. Wir werden die URL der QDrant -Dokument -Website zur Indizierung verwenden.
Das Website -KnowledgeBase -Objekt interagiert mit der QDrant Vector -Datenbank, um das indizierte Wissen über die bereitgestellte URL zu speichern. Es ist dann in die Wissensbasis für das Abrufen des Agenten geladen.
Hinweis: Denken Sie daran, wir verwenden die Lastfunktion, um die Datenquelle in die Wissensbasis zu indizieren. Dies muss nur einmal für jeden Sammlungsnamen ausgeführt werden, wenn Sie den Sammlungsnamen ändern und neue Daten hinzufügen möchten. Führen Sie nur dann die Lastfunktion aus.
Url = "https://qdrant.tech/documentation/overview/" Knowledge_base = Website KnowledgeBase ( URLS = [URL], max_links = 10, vector_db = vector_db, ) Knowledge_base.load () # Nur einmal ausführen, nachdem die Sammlung erstellt wurde, kommentieren Sie dies
Der Agent konfiguriert ein LLM (GPT-4) für die Reaktionsgenerierung, eine Wissensbasis für das Abrufen von Informationen und ein SQLite-Speichersystem, um Interaktionen und Antworten als Speicher zu verfolgen. Es werden auch ein DuckDuckgo -Such -Tool für zusätzliche Websuche eingerichtet. Dieses Setup bildet den Kern -KI -Agenten, der in der Lage ist, Abfragen zu beantworten.
Wir setzen show_tool_calls auf true, um die Backend -Laufzeitausführung zu beobachten und zu verfolgen, ob die Abfrage an die Wissensbasis oder das DuckDuckgo -Suchwerkzeug weitergeleitet wird. Wenn Sie diese Zelle ausführen, wird eine Datenbankdatei erstellt, in der alle Nachrichten gespeichert werden, indem Speicherspeicher aktiviert und add_history_to_messages in true festgelegt wird.
Agent = Agent ( Modell = openaichat (), Knowledge = Knowledge_base, Werkzeuge = [Duckduckgo ()], show_tool_calls = true, markdown = true, Storage = SQLAGentStorage (table_name = "agentic_rag", db_file = "Agents_rag.db"), add_history_to_messages = true, )
Schließlich ist der Agent bereit, Benutzeranfragen zu bearbeiten. Durch Aufrufen der Funktion print_response () geben Sie eine Benutzerabfrage über, und der Agent antwortet, indem Sie relevante Informationen von der Wissensbasis abrufen und diese verarbeiten. Wenn die Abfrage nicht aus der Wissensbasis stammt, wird ein Suchwerkzeug verwendet. Beobachten wir die Veränderungen.
Agent.print_response ( "Was sind die Indexierungstechniken im Dokument?", stream = true )
Agent.print_response ( "Wer ist Virat Kohli?", stream = true )
Entdecken Sie die wichtigsten Vorteile von Agentenlappen, bei denen intelligente Agenten und relationale Diagramme zusammenarbeiten, um das Abrufen und die Entscheidungsfindung von Daten zu optimieren.
Das Implementieren von Agentenlagern mit Speicherkomponenten bietet eine zuverlässige Lösung für den Aufbau intelligenter Wissensabrufsysteme und Suchmaschinen. In diesem Artikel haben wir untersucht, was Agenten und Lappen sind und wie man sie kombiniert. Mit der Kombination von Agentenlappen verbessert sich das Abfragerouting aufgrund der Entscheidungsfähigkeiten der Agenten.
A. Ja, Phidata ist so gebaut, dass multimodale KI -Wirkstoffe, die Aufgaben mit Bildern, Videos und Audio beinhalten können. Es integriert Tools wie Dall-E und replizieren Sie Text-to-Image- oder Text-to-Video-Generation und verwendet multimodale LLMs wie GPT-4, Gemini 2.0 und Claude AI für Bild-zu-Text- und Video-zu-Text-Aufgaben.
Q2. Welche Tools und Frameworks stehen zur Entwicklung von Agentenlag -Systemen zur Verfügung?A. Entwicklungsverträte-Systeme (AGENTIC ARRAVEAL-AUGMENTED ERGEBNISSE (BALL) -Systeme (RAGS-Systeme) beinhaltet die Verwendung verschiedener Werkzeuge und Rahmenbedingungen, die die Integration autonomer Agenten mit Abruf- und Erzeugungsfunktionen erleichtern. Hier sind einige Tools und Frameworks für diesen Zweck verfügbar: Langchain, Llamaindex, Phidata, Crewai und Autogen.
Q3. Kann sich Phidata in externe Werkzeuge und Wissensbasis integrieren?A. Ja, Phidata ermöglicht die Integration verschiedener Werkzeuge und Wissensbasis. Beispielsweise kann es mit Finanzdaten-Tools wie YFInance für Echtzeit-Bestandsanalysen oder Web-Such-Tools wie DuckDuckgo eine Verbindung herstellen, um aktuelle Informationen zu rufen. Diese Flexibilität ermöglicht die Erstellung von speziellen Wirkstoffen, die auf bestimmte Anwendungsfälle zugeschnitten sind.
Die in diesem Artikel gezeigten Medien sind nicht im Besitz von Analytics Vidhya und werden nach Ermessen des Autors verwendet.
Das obige ist der detaillierte Inhalt vonAufbau eines Agentenlappen mit Phidata. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!