LangChain AI-Agenten mit Such-, Wissens- und Automatisierungstools bauen und ausführen
Detaillierte Anleitung zum Erstellen eines LangChain AI-Agenten, der ein großes Sprachmodell (LLM) mit verschiedenen Tools wie SerpAPI (für Google Search), Wikipedia und Zapier NLA (für Web-App-Automatisierung) kombiniert, um komplexe Aufgaben zu lösen.
Originalvideo ansehen: Zeit-Millionär durch richtiges Delegieren und Mitarbeiterfüh...Benötigte Bibliotheken importieren.
Importieren Sie alle erforderlichen Klassen für das LLM, die verschiedenen Tools und die Agenten-Initialisierung aus der LangChain-Bibliothek.
from langchain.llms import OpenAI
from langchain.agents import initialize_agent, AgentType, Tool
from langchain.utilities import SerpAPIWrapper, WikipediaAPIWrapper
from langchain.tools import WikipediaQueryRun
from langchain.agents.agent_toolkits import ZapierToolkit
from langchain.utilities import ZapierNLAWrapperLLM (Large Language Model) initialisieren.
Erstellen Sie eine Instanz des OpenAI-Modells, das als 'Gehirn' des Agenten dient. `temperature=0` wird oft für Aufgaben gewählt, die präzise und deterministische Antworten erfordern.
llm = OpenAI(temperature=0)Such- und Wissens-Tools definieren.
Initialisieren Sie Tools für die Websuche (SerpAPI) und den Zugriff auf enzyklopädisches Wissen (Wikipedia). Diese Tools erweitern die Informationsbeschaffungsfähigkeiten des Agenten erheblich.
tools = []
# SerpAPI (Google Search) Tool
search = SerpAPIWrapper()
tools.append(Tool(
name="Google Search",
func=search.run,
description="useful for when you need to answer questions about current events or find information."
))
# Wikipedia Tool
wikipedia_wrapper = WikipediaAPIWrapper()
wikipedia = WikipediaQueryRun(api_wrapper=wikipedia_wrapper)
tools.append(Tool(
name="Wikipedia",
func=wikipedia.run,
description="useful for when you need to answer questions about facts or historical events."
))Zapier NLA Tools für Web-App-Automatisierung integrieren.
Fügen Sie die Zapier NLA-Tools hinzu, um dem Agenten die Interaktion mit Tausenden von Webanwendungen über natürliche Sprache zu ermöglichen. Dies ist ein leistungsstarkes Feature für die Automatisierung von Workflows.
# Zapier NLA Tools
zapier = ZapierNLAWrapper()
toolkit = ZapierToolkit.from_zapier_nla_wrapper(zapier)
tools.extend(toolkit.get_tools())Den LangChain-Agenten initialisieren.
Erstellen Sie den Agenten, indem Sie ihm die Liste der Tools und das LLM übergeben. `AgentType.ZERO_SHOT_REACT_DESCRIPTION` ist ein flexibler Agententyp, der den REACT-Ansatz (Reasoning and Acting) verwendet. `verbose=True` ist nützlich, um den internen Denkprozess des Agenten zu verfolgen.
agent = initialize_agent(tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose=True)Den Agenten mit einer Aufgabe ausführen.
Geben Sie dem Agenten einen Prompt in natürlicher Sprache. Der Agent wird dann autonom die notwendigen Tools auswählen und die Schritte ausführen, um die Aufgabe zu erfüllen, sei es eine Wissensabfrage oder eine komplexe Web-App-Automatisierung.
# Beispiel 1: Wissensabfrage
agent.run("Who is the current president of the United States?")
# Beispiel 2: Web-App-Automatisierung (E-Mail senden)
# agent.run("Email my boss about the project update. The project is on track and will be completed on time.")
# Beispiel 3: Web-App-Automatisierung (Kalenderereignis erstellen)
# agent.run("Create a Google Calendar event for a team meeting tomorrow at 10 AM for 1 hour, titled 'Project Sync'.")