Sohbet botları için grafik oluşturma

LangChain ile Aracı Sistemler Tasarlama

Dilini K. Sumanapala, PhD

Founder & AI Engineer, Genverv, Ltd.

LangGraph ile sohbet botları

Sohbet botu başı

 

  • LangGraph ile özel ajanlar

     
    • İş akışı yönetimi
      • Grafik durumları
      • Ajan durumları
    • Sohbet botu oluşturma
      • Düğümler
      • Kenarlar
LangChain ile Aracı Sistemler Tasarlama

Grafik ve ajan durumları

LangGraph simgesi

   

Grafik Durumu

  • Farklı görevleri düzenler
    • Araç kullanımı
    • LLM çağrıları
  • Görev sırası = iş akışı

Ajan Durumu

  • Ajanın ilerlemesini izler
  • Görev tamamlanmalarını kaydeder
LangChain ile Aracı Sistemler Tasarlama

LangGraph ile bir ajan oluşturma

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

Bilgiyi temsil eden büyüteç.

LangChain ile Aracı Sistemler Tasarlama

Düğümler ve kenarlar

Sohbet botu diyagramı.

   

Düğümler

  • İşlevler veya eylemler
    • Yanıt
    • Araç çağrısı

Kenarlar

  • Düğümleri bağlayan kurallar
LangChain ile Aracı Sistemler Tasarlama

Düğümler ve kenarlar

İlk kenarı vurgulanmış sohbet botu diyagramı.

   

Düğümler

  • Görevler veya eylemler
    • Yanıt
    • Araç çağrısı

Kenarlar

  • Düğümleri bağlayan kurallar
LangChain ile Aracı Sistemler Tasarlama

Düğümler ve kenarlar

İkinci kenarı vurgulanmış sohbet botu diyagramı.

   

Düğümler

  • Görevler veya eylemler
    • Yanıt
    • Araç çağrısı

Kenarlar

  • Düğümleri bağlayan kurallar
LangChain ile Aracı Sistemler Tasarlama

Düğümler ve kenarlar

Tam sohbet botu diyagramı vurgulanmış.

   

Düğümler

  • Görevler veya eylemler
    • Yanıt
    • Araç çağrısı

Kenarlar

  • Düğümleri bağlayan kurallar

Hazır Düğümler

LangGraph'taki START ve END düğümleri

LangChain ile Aracı Sistemler Tasarlama

Grafik ve ajan durumlarını oluşturma

# Metni yapılandırma modülleri
from typing import Annotated
from typing_extensions import TypedDict


# Grafikleri tanımlamak için LangGraph modülleri from langgraph.graph import StateGraph, START, END from langgraph.graph.message import add_messages
# OpenAI kurulumu için modül from langchain_openai import ChatOpenAI
LangChain ile Aracı Sistemler Tasarlama

Grafik ve ajan durumlarını oluşturma

# llm'i tanımla
llm = ChatOpenAI(model="gpt-4o-mini", api_key="OPENAI_API_KEY")


# State'i tanımla class State(TypedDict):
# Metaverili mesajları tanımla messages: Annotated[list, add_messages]
# StateGraph'i başlat graph_builder = StateGraph(State)
LangChain ile Aracı Sistemler Tasarlama

Düğüm ve kenar ekleme

# Modelle yanıt vermek için sohbet botu işlevini tanımla
# with the model
def chatbot(state: State):
    return {"messages": 
    [llm.invoke(state["messages"])]}


# Sohbet botu düğümünü grafiğe ekle graph_builder.add_node("chatbot", chatbot)

Sohbet botu düğümü.

LangChain ile Aracı Sistemler Tasarlama

Düğüm ve kenar ekleme

# Görüşme akışının başlangıcını ve sonunu tanımla
graph_builder.add_edge(START, "chatbot")
graph_builder.add_edge("chatbot", END)
# Çalıştırmaya hazırlamak için grafiği derle
graph = graph_builder.compile()

Sohbet botu diyagramı.

LangChain ile Aracı Sistemler Tasarlama

Hadi pratik yapalım!

LangChain ile Aracı Sistemler Tasarlama

Preparing Video For Download...