Heim >Technologie-Peripheriegeräte >KI >Aufbau eines Agentenlappen mit Phidata

Aufbau eines Agentenlappen mit Phidata

Christopher Nolan
Christopher NolanOriginal
2025-03-13 11:54:13840Durchsuche

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.

Lernziele

  • Verstehen und entwerfen Sie die Architektur für die für Agentenlagensysteme erforderlichen Komponenten.
  • Wie werden Vektor -Datenbanken und Einbettungsmodelle für die Erstellung von Wissensbasis in den agenten -Workflow integriert?
  • Lernen Sie, Speicherkomponenten für eine verbesserte Kontextbindung implementieren zu können
  • Entwickeln Sie einen AI -Agenten, der mehrere Tool -Anrufe ausführen kann, und entscheiden Sie, welches Tool mithilfe der Phidata basierend auf Benutzerfragen oder Aufgaben ausgewählt werden soll.
  • Real-World-Anwendungsfall zum Erstellen eines Dokumentanalysator-Assistenten-Agenten, der mit persönlichen Informationen von der Wissensbasis und Duckduckgo ohne Kontext in der Wissensbasis interagieren kann.

Dieser Artikel wurde als Teil des Data Science -Blogathons veröffentlicht.

Inhaltsverzeichnis

  • Was sind Agenten und Lappen?
  • Was ist Phidata?
  • Verwendungsfälle von Agenten unter Verwendung von Phidata
  • Echtzeit-Anwendungsfall für Agentenlappen
  • Schritt-für-Schritt-Code-Implementierung: Agentenlag mit QDrant, OpenAI und Phidata
  • Vorteile des Agentenlappen
  • Abschluss
  • Häufig gestellte Fragen

Was sind Agenten und Lappen?

Agenten im Kontext von KI sind Komponenten, um menschlich-ähnliches Denken und Planungsfähigkeiten nachzuahmen. Agentenkomponenten bestehen aus:

Aufbau eines Agentenlappen mit Phidata

  • Aufgabenabzug in überschaubare Unteraufgaben.
  • Intelligente Entscheidungen darüber, welche Tools die erforderlichen Maßnahmen ergreifen und die erforderlichen Maßnahmen ergreifen sollen.
  • Argumentation über den besten Ansatz zur Lösung eines Problems.

RAG (Retrieval-Augmented-Generation) kombiniert Wissensabruf mit LLM-Funktionen. Wenn wir Agenten in RAG -Systeme integrieren, erstellen wir einen leistungsstarken Workflow, der kann:

Aufbau eines Agentenlappen mit Phidata

  • Analysieren Sie Benutzeranfragen intelligent.
  • Speichern Sie das Benutzerdokument in einer Wissensbasis oder einer Vektor -Datenbank.
  • Wählen Sie geeignete Wissensquellen oder einen Kontext für die angegebene Benutzerabfrage.
  • Planen Sie den Prozess des Abrufs und der Reaktionsgenerierung.
  • Behalten Sie den Kontext über Speicherkomponenten bei.

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.

Was ist Phidata?

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.

Verwendungsfälle von Agenten unter Verwendung von Phidata

Erforschen Sie die transformative Leistung von agentenbasierten Systemen in realen Anwendungen und nutzen Sie Phidata, um die Entscheidungsfindung und die Aufgabenautomatisierung zu verbessern.

Finanzanalysevertreter

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.

Web -Search -Agent

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.

Multimodale Agenten

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.

Echtzeit-Anwendungsfall für Agentenlappen

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.

Aufbau eines Agentenlappen mit Phidata

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:

  • Ein Argumentationsmodell (wie GPT-4, Gemini 2.0 oder Claude), das ihm hilft, zu denken und zu planen.
  • Speicher (SQLAGentStorage), mit dem er sich an frühere Gespräche erinnert
  • Tools (wie DuckDuckgo -Suche), mit denen Informationen finden können

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.

Schritt-für-Schritt-Code-Implementierung: Agentenlag mit QDrant, OpenAI und Phidata

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.

Schritt 1: Abhängigkeiten einrichten

Um den Agentic Rag -Workflow zu erstellen, müssen wir einige Bibliotheken installieren, die enthalten:

  • Phidata: Definieren Sie die Ausführung des Agentenobjekts und der Workflow.
  • Google generative KI - Argumentationsmodell IE, Gemini 2.0 Flash
  • QDRANT - Vektordatenbank, in der die Wissensbasis gespeichert und später verwendet wird, um relevante Informationen abzurufen
  • DuckDuckgo-Suchmaschine zum Extrahieren von Echtzeitinformationen.
 PIP Installation Phidata Google-Generativai Duckduckgo-Search QDrant-Client

Schritt 2: Erstkonfiguration und API -Tasten für Setup

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>

Schritt 3: Setup -Vektor -Datenbank - QDrant

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:

  • Cluster erstellen: https://cloud.qdrant.io/
  • Geben Sie Ihrem Cluster einen Namen und kopieren Sie den API -Schlüssel, sobald der Cluster erstellt wurde.
  • Unter dem Befehl curl können Sie die Endpunkt -URL kopieren.
 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>

Schritt 4: Erstellen der Wissensbasis

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

Schritt 5: Definieren Sie Ihren Agenten

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,
)

STEP6: Versuchen Sie mehrere Abfragen

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.

Abfrage -1: Aus der Wissensbasis

 Agent.print_response (
  "Was sind die Indexierungstechniken im Dokument?", 
  stream = true
)

Aufbau eines Agentenlappen mit Phidata

Abfrage-2 außerhalb der Wissensbasis

 Agent.print_response (
  "Wer ist Virat Kohli?", 
  stream = true
)

Aufbau eines Agentenlappen mit Phidata

Vorteile des Agentenlappen

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.

  • Verbesserte Argumentationsfunktionen für eine bessere Reaktionsgenerierung.
  • Intelligente Toolauswahl basierend auf Abfragekontexten wie Wissensbasis und Duckduckgo oder anderen Tools, aus denen wir den Kontext abrufen können, der dem Agenten zur Verfügung gestellt werden kann.
  • Gedächtnisintegration für verbesserte Kontextbekanntheit, die sich erinnern und die Konversationsnachrichten von Geschichten extrahieren kann.
  • Besser Planung und Aufgabenabteilung ist der Hauptteil des agenten-Workflows darin, die Aufgabe zu erhalten und sie in Unteraufgaben zu unterteilen und dann bessere Entscheidungen und Aktionspläne zu treffen.
  • Flexible Integration in verschiedene Datenquellen wie PDF, Website, CSV, DOCS und vieles mehr.

Abschluss

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.

Key Takeaways

  • Entdecken Sie, wie agierischer Lappen mit Phidata die KI verbessert, indem Sie das Gedächtnis, eine Wissensbasis und eine dynamische Abfrage integrieren.
  • Lernen Sie, einen Agentenlappen mit Phidata zu implementieren, um die Erzeugung des Informationsabrufs und die adaptive Reaktion zu erzeugen.
  • Die Phidata -Datenbibliothek bietet einen optimierten Implementierungsprozess mit nur 30 Zeilen Core Code zusammen mit multimodalem wie Gemini 2.0 Flash.
  • Gedächtniskomponenten sind entscheidend für die Aufrechterhaltung des Kontextes und die Verbesserung der Reaktionsrelevanz.
  • Die Integration mehrerer Tools (Knowledge Base, Web Search) ermöglicht es flexible Datenbanken für das Abrufen von Informationsabläufen und -Erern wie QDRANT, die erweiterte Indizierungsfunktionen für eine effiziente Suche bereitstellen.

Häufig gestellte Fragen

Q1. Können Phidata multimodale Aufgaben erledigen und welche Tools integriert es zu diesem Zweck?

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn