LangChain ile Aracı Sistemler Tasarlama
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...
# Aracı etiketlemek ve girdi biçimini string olarak ayarlamak için bir dekoratör kullanın @tooldef date_checker(date: str) -> str:"""Herhangi bir biçimde verilen bir tarih için önemli tarihî olayları listeleyin."""try: # Tarihi yorumlamak ve tarihî olaylar üretmek için LLM'i çağırın answer = llm.invoke(f"List important historical events that occurred on {date}.")# Yanıtı döndür return answer.content# Getirme hataları için bir istisna bloğu ayarlayın except Exception as e: return f"Error retrieving events: {str(e)}"
@tool# Girdiyi string olarak ayarla def check_palindrome(text: str):"""Bir kelime veya ifadenin palindrom olup olmadığını kontrol edin."""# Alfasayısal olmayan karakterleri kaldır ve küçük harfe çevir cleaned = ''.join(char.lower() for char in text if char.isalnum())# Tersinin özgün metinle aynı olup olmadığını kontrol et if cleaned == cleaned[::-1]: return f"The phrase or word '{text}' is a palindrome." else: return f"The phrase or word '{text}' is not a palindrome."
# Araç düğümleri tanımlamak için modülleri içe aktarın from langgraph.prebuilt import ToolNode# Araç listesi tools = [wikipedia_tool, date_checker, check_palindrome]# Araçları ToolNode()'a iletin tool_node = ToolNode(tools)# Araçları LLM'e bağlayın model_with_tools = llm.bind_tools(tools)
LangChain ile Aracı Sistemler Tasarlama