Xây dựng đồ thị cho chatbot

Thiết kế Hệ thống Agentic với LangChain

Dilini K. Sumanapala, PhD

Founder & AI Engineer, Genverv, Ltd.

Chatbot với LangGraph

Đầu chatbot

 

  • Tác tử tùy chỉnh với LangGraph

     
    • Quản lý quy trình làm việc
      • Trạng thái đồ thị
      • Trạng thái tác tử
    • Xây dựng chatbot
      • Nút
      • Cạnh
Thiết kế Hệ thống Agentic với LangChain

Đồ thị và trạng thái tác tử

Biểu tượng LangGraph

   

Trạng thái đồ thị

  • Tổ chức các tác vụ khác nhau
    • Dùng công cụ
    • Gọi LLM
  • Thứ tự tác vụ = quy trình

Trạng thái tác tử

  • Theo dõi tiến độ của tác tử
  • Ghi nhận tác vụ đã hoàn thành
Thiết kế Hệ thống Agentic với LangChain

Xây dựng tác tử với LangGraph

Mọi người đang đọc, ngồi trên những quyển sách lớn.

Kính lúp biểu trưng cho thông tin.

Thiết kế Hệ thống Agentic với LangChain

Nút và cạnh

Sơ đồ chatbot.

   

Nút

  • Hàm hoặc hành động
    • Phản hồi
    • Gọi công cụ

Cạnh

  • Quy tắc nối các nút
Thiết kế Hệ thống Agentic với LangChain

Nút và cạnh

Sơ đồ chatbot với cạnh đầu tiên được tô sáng.

   

Nút

  • Tác vụ hoặc hành động
    • Phản hồi
    • Gọi công cụ

Cạnh

  • Quy tắc nối các nút
Thiết kế Hệ thống Agentic với LangChain

Nút và cạnh

Sơ đồ chatbot với cạnh thứ hai được tô sáng.

   

Nút

  • Tác vụ hoặc hành động
    • Phản hồi
    • Gọi công cụ

Cạnh

  • Quy tắc nối các nút
Thiết kế Hệ thống Agentic với LangChain

Nút và cạnh

Sơ đồ chatbot đầy đủ được tô sáng.

   

Nút

  • Tác vụ hoặc hành động
    • Phản hồi
    • Gọi công cụ

Cạnh

  • Quy tắc nối các nút

Nút dựng sẵn

Nút STARTEND từ LangGraph

Thiết kế Hệ thống Agentic với LangChain

Xây dựng trạng thái đồ thị và tác tử

# Modules for structuring text
from typing import Annotated
from typing_extensions import TypedDict


# LangGraph modules for defining graphs from langgraph.graph import StateGraph, START, END from langgraph.graph.message import add_messages
# Module for setting up OpenAI from langchain_openai import ChatOpenAI
Thiết kế Hệ thống Agentic với LangChain

Xây dựng trạng thái đồ thị và tác tử

# Define the llm
llm = ChatOpenAI(model="gpt-4o-mini", api_key="OPENAI_API_KEY")


# Define the State class State(TypedDict):
# Define messages with metadata messages: Annotated[list, add_messages]
# Initialize StateGraph graph_builder = StateGraph(State)
Thiết kế Hệ thống Agentic với LangChain

Thêm nút và cạnh

# Define chatbot function to respond
# with the model
def chatbot(state: State):
    return {"messages": 
    [llm.invoke(state["messages"])]}


# Add chatbot node to the graph graph_builder.add_node("chatbot", chatbot)

Nút chatbot.

Thiết kế Hệ thống Agentic với LangChain

Thêm nút và cạnh

# Define the start and end of the 
# conversation flow
graph_builder.add_edge(START, "chatbot")
graph_builder.add_edge("chatbot", END)


# Compile the graph to prepare for # execution graph = graph_builder.compile()

Sơ đồ chatbot.

Thiết kế Hệ thống Agentic với LangChain

Cùng luyện tập nào!

Thiết kế Hệ thống Agentic với LangChain

Preparing Video For Download...