Agentic Systems ontwerpen met LangChain
Dilini K. Sumanapala, PhD
Founder & AI Engineer, Genverv, Ltd.


Agent: The 5th of November is famous for the Gunpowder treason and
plot...
string == string[::-1] Agent: Yes, "madam" is a palindrome...
# Gebruik een decorator om de tool te labelen en het inputformaat op string te zetten @tooldef date_checker(date: str) -> str:"""Geef een lijst met belangrijke historische gebeurtenissen voor een datum in elk formaat."""try: # Roep de LLM aan om de datum te interpreteren en gebeurtenissen te genereren answer = llm.invoke(f"List important historical events that occurred on {date}.")# Geef het antwoord terug return answer.content# Stel een exceptieblok in voor ophaalfouten except Exception as e: return f"Error retrieving events: {str(e)}"
@tool# Stel inputformaat in op string def check_palindrome(text: str):"""Controleer of een woord of zin een palindroom is."""# Verwijder niet-alfanumerieke tekens en zet om naar lowercase cleaned = ''.join(char.lower() for char in text if char.isalnum())# Check of de omgekeerde tekst gelijk is aan het origineel if cleaned == cleaned[::-1]: return f"De zin of het woord '{text}' is een palindroom." else: return f"De zin of het woord '{text}' is geen palindroom."
# Modules importeren voor ToolNode-definitie from langgraph.prebuilt import ToolNode# Lijst met tools tools = [wikipedia_tool, date_checker, check_palindrome]# Geef de tools door aan ToolNode() tool_node = ToolNode(tools)# Koppel tools aan de LLM model_with_tools = llm.bind_tools(tools)
Agentic Systems ontwerpen met LangChain