Mehrere Tools definieren

Agentische Systeme mit LangChain entwerfen

Dilini K. Sumanapala, PhD

Founder & AI Engineer, Genverv, Ltd.

Mehrere Tools integrieren

Ein Bot mit mehreren Tools

   

  • Mehrere benutzerdefinierte Tools hinzufügen

  • Tool-Auswahl pro Anfrage automatisieren

Agentische Systeme mit LangChain entwerfen

Einen Bildungs-Chatbot erweitern

Menschen lesen, sitzen auf großen Büchern.

 

  • Historische Ereignisse nachschlagen

  • Palindrome prüfen:

     
    • level = level

    • top spot = tops pot

Agentische Systeme mit LangChain entwerfen

Tools auf mehreren Wegen bauen

 

  • Das LLM aufrufen

    Historische Daten mit natürlicher Sprache suchen, z. B. „5. November“
      Agent: Der 5. November ist berühmt für die Pulververschwörung ...
    
  • Python-Code

    Palindrome direkt über Stringvergleich finden, z. B. string == string[::-1]
      Agent: Ja, „madam“ ist ein Palindrom ...
    
Agentische Systeme mit LangChain entwerfen

Tool für historische Ereignisse

# Mit Decorator das Tool kennzeichnen und Eingabeformat auf String setzen
@tool

def date_checker(date: str) -> str:
"""Wichtige historische Ereignisse für ein Datum in beliebigem Format liefern."""
try: # LLM aufrufen, um das Datum zu interpretieren und Ereignisse zu generieren answer = llm.invoke(f"List important historical events that occurred on {date}.")
# Antwort zurückgeben return answer.content
# Ausnahmeblock für Abruffehler except Exception as e: return f"Error retrieving events: {str(e)}"
Agentische Systeme mit LangChain entwerfen

Palindrom-Tool

@tool

# Eingabeformat auf String setzen def check_palindrome(text: str):
"""Prüft, ob ein Wort oder Satz ein Palindrom ist."""
# Nicht-alphanumerische Zeichen entfernen und in Kleinbuchstaben umwandeln cleaned = ''.join(char.lower() for char in text if char.isalnum())
# Prüfen, ob der umgekehrte Text dem Original entspricht if cleaned == cleaned[::-1]: return f"Die Wort- oder Satzfolge '{text}' ist ein Palindrom." else: return f"Die Wort- oder Satzfolge '{text}' ist kein Palindrom."
Agentische Systeme mit LangChain entwerfen

Mehrere Tools binden

# Module zum Definieren von Tool-Knoten importieren
from langgraph.prebuilt import ToolNode


# Liste der Tools tools = [wikipedia_tool, date_checker, check_palindrome]
# Tools an ToolNode() übergeben tool_node = ToolNode(tools)
# Tools an das LLM binden model_with_tools = llm.bind_tools(tools)
Agentische Systeme mit LangChain entwerfen

Lass uns üben!

Agentische Systeme mit LangChain entwerfen

Preparing Video For Download...