AI的框架

This commit is contained in:
renee
2026-01-30 19:31:38 -08:00
parent 4b5b6fb976
commit adab4877ad
5 changed files with 213 additions and 0 deletions

33
app/ai/graph.py Normal file
View File

@@ -0,0 +1,33 @@
from langgraph.graph import StateGraph, END
from nodes import *
from state import State
workflow = StateGraph(State)
# 添加节点
workflow.add_node("retrieve", retrieve_node)
workflow.add_node("summarize", summarize_node)
workflow.add_node("chatbot", call_model_node)
# 设置入口
workflow.set_entry_point("retrieve")
# 条件逻辑:检查消息数量
def should_summarize(state: State):
if len(state["messages"]) > 10:
return "summarize"
return "chatbot"
workflow.add_conditional_edges(
"retrieve",
should_summarize,
{
"summarize": "summarize",
"chatbot": "chatbot"
}
)
workflow.add_edge("summarize", "chatbot")
workflow.add_edge("chatbot", END)
# 编译时加入 Checkpointer (你可以使用你的 Postgres 实现来持久化 State)
app = workflow.compile() #checkpointer=postgres_checkpointer