AI Agents

Einen Informationsabruf-Chatbot mit KI-Agenten erstellen

A tutorial image illustrating the creation of an Information Retrieval Chatbot using AI Agents.

Erstellen Sie einen Informationsabruf-Chatbot mit KI-Agenten

Einführung

In diesem Tutorial führen wir Sie durch den Prozess der Erstellung eines anspruchsvollen Chatbots für den Informationsabruf mithilfe von KI-Agenten. Entdecken Sie die Schritte, um die Macht der KI zu nutzen und einen Chatbot zu erstellen, der effizient Daten aus verschiedenen Quellen abrufen kann.

Einrichten der Umgebung

Unser Plan ist es, einen Chatbot mit KI-Agenten (LangChain) zu erstellen, mit einer einfachen Benutzeroberfläche unter Verwendung von Chainlit. Wir möchten, dass unser Chatbot auf eine Anfrage in zwei Phasen reagiert: Planung und Abruf, wobei der Agent Zugriff auf Wikipedia und Websuche hat.

Vorbereitung & Abhängigkeiten

Beginnen wir mit der Erstellung eines neuen Projekts. Beginnen Sie mit der Erstellung eines neuen Verzeichnisses:

mkdir chatbot_project
cd chatbot_project

Als Nächstes erstellen Sie eine virtuelle Umgebung und installieren die erforderlichen Abhängigkeiten:

python -m venv venv
source venv/bin/activate  # Für Linux/Mac
venv\Scripts\activate  # Für Windows
pip install chainlit langchain

Jetzt können wir unsere app.py Datei erstellen (dieser Name wird von Chainlit benötigt):

touch app.py

Der letzte Schritt besteht darin, unsere Abhängigkeiten in app.py zu importieren:

import os
from langchain.chat_models import ChatOpenAI
from langchain.agents import create_openai_functions_agent
from langchain.tools import DuckDuckGoSearchResults, WikipediaAPIWrapper

Haftungsausschluss: Es wird empfohlen, Ihre Umgebungsvariablen in einer .env Datei oder direkt im Code zu definieren.

Coding

Jetzt ist es an der Zeit, unser Sprachmodell (LLM) und die Tools zu initialisieren. In diesem Tutorial verwende ich GPT-4, aber fühlen Sie sich frei, ein anderes Modell zu verwenden, wenn Sie möchten. Wir werden DuckDuckGoSearchRun und WikipediaAPIWrapper als unsere Tools verwenden.

Vorbereitung von Prompt-Vorlagen

Der nächste Schritt besteht darin, die PromptTemplates vorzubereiten. Wir werden zwei erstellen: eine für den Planungsprozess und eine zur Generierung der endgültigen Antwort.

planning_prompt = "Plane die Antwort auf die Anfrage: {query}"
response_prompt = "Generiere die endgültige Antwort basierend auf: {plan}"

Initiieren des Agenten und der Planungskette

Jetzt ist es an der Zeit, den Agenten und die Planungskette zu initiieren. Wir werden auch Speicher einbauen, damit der Agent Informationen über vorherige Nachrichten behalten kann.

memory = ConversationBufferMemory()
chain = create_openai_functions_agent(
    llm=ChatOpenAI(model_name='gpt-4'),
    tools=[DuckDuckGoSearchResults(), WikipediaAPIWrapper()],
    verbose=True,
    memory=memory
)

UI-Teil

Als Nächstes werden wir die Benutzeroberfläche mit Chainlit erstellen. Ich werde eine Fabrikfunktion verwenden, um unseren Agenten an Chainlit zu übergeben. Bevor ich jedoch diese Fabrikfunktion aufrufe, führt Chainlit eine Funktion aus, die die Eingabepipeline für das Modell vorbereitet. Ich werde dies überschreiben, um den Fluss leicht zu ändern: Ich möchte zuerst die Planung ausführen und dann die Antwort generieren.

@chainlit.on_message
async def main(message: str):
    plan = chain.run(planning_prompt.format(query=message))
    response = chain.run(response_prompt.format(plan=plan))
    await chainlit.send_message(response)

Ergebnisse!

Jetzt können wir unsere Anwendung testen. Starten Sie die Anwendung, begrüßen Sie sie und stellen Sie dann eine Frage:

chainlit run app.py

Lassen Sie uns sehen, welche Antwort wir erhalten!

Bravo! Lassen Sie uns tiefer eintauchen

Wunderbar! Wie Sie gesehen haben, umging das Modell zunächst die Planung, bis es dazu aufgefordert wurde. Dann organisierte es effektiv Aufgaben und formulierte eine Antwort, genau wie beabsichtigt!

Gehen Sie voran und bauen Sie Ihre einzigartigen KI-Agenten-Anwendungen und verpassen Sie nicht unseren bevorstehenden AI Agents Hackathon, der am 9. Juni beginnt. Erweitern Sie Ihr Wissen mit unseren KI-Tutorials und gestalten Sie die Zukunft mit der Macht der KI!

Weiterlesen

A comparison of LLaMA 3.1 and Mistral 2 for AI model performance evaluation.
Cohere Rerank Model Integration with ElevenLabs in a Streamlit App

Hinterlasse einen Kommentar

Alle Kommentare werden vor der Veröffentlichung geprüft.

Diese Website ist durch hCaptcha geschützt und es gelten die allgemeinen Geschäftsbedingungen und Datenschutzbestimmungen von hCaptcha.