Birden çok aracı tanımlama

LangChain ile Aracı Sistemler Tasarlama

Dilini K. Sumanapala, PhD

Founder & AI Engineer, Genverv, Ltd.

Birden çok aracı entegre etme

Birden çok aracı olan bir bot

   

  • Birden çok özel araç ekleyin

  • Sorguya göre araç seçimini otomatikleştirin

LangChain ile Aracı Sistemler Tasarlama

Bir eğitim sohbet botunu geliştirme

Büyük kitapların üzerinde oturup okuyan insanlar.

 

  • Tarihî olayları arayın

  • Palindromları kontrol edin:

     
    • level = level

    • top spot = tops pot

LangChain ile Aracı Sistemler Tasarlama

Araçları oluşturmanın birden çok yolu

 

  • LLM'i çağırın

    Doğal dil girdileriyle tarihleri arayın, ör. "5th of November"
      Agent: The 5th of November is famous for the Gunpowder treason and 
      plot...
    
  • Python kodu

    Palindromları doğrudan string karşılaştırmasıyla bulun, ör. string == string[::-1]
      Agent: Yes, "madam" is a palindrome...
    
LangChain ile Aracı Sistemler Tasarlama

Tarihî olaylar aracı

# Aracı etiketlemek ve girdi biçimini string olarak ayarlamak için bir dekoratör kullanın
@tool

def 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)}"
LangChain ile Aracı Sistemler Tasarlama

Palindrom aracı

@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."
LangChain ile Aracı Sistemler Tasarlama

Birden çok aracı bağlama

# 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

Hadi pratik yapalım!

LangChain ile Aracı Sistemler Tasarlama

Preparing Video For Download...