
return "tool"
else:
return "end"
workflow = StateGraph(AgentState)
workflow.add_node("Agent", agent_node)
workflow.add_node("Tool", tool_node)
workflow.add_conditional_edges(
"Agent",
should_continue,
{
"tool": "Tool",
"end": END,
},
)
workflow.add_edge("Tool", "Agent")
workflow.set_entry_point("Agent")
graph = workflow.compile()
query = input("query: ")
state = graph.invoke({"messages": [HumanMessage(content=query)]})
print(state["messages"][-1].content)
モジュールのインポート
最初に必要なモジュールをインポートします。
import operator
from typing import TypedDict, Annotated, Sequence
from langchain_core.messages import BaseMessage, ToolMessage, HumanMessage
from langchain_openai import ChatOpenAI ...