from dataclasses import dataclass
from langchain_core.messages import AnyMessage
from langchain.agents import create_agent
from langgraph.runtime import get_runtime
@dataclass
class Context:
user_name: str
def my_prompt(state: State) -> list[AnyMessage]:
runtime = get_runtime(Context)
system_msg = (
"你是一个乐于助人的助手。"
f"请称呼用户为 {runtime.context.user_name}。"
)
return [{"role": "system", "content": system_msg}] + state["messages"]
agent = create_agent(
model="openai:gpt-5-nano",
tools=[...],
prompt=my_prompt,
context_schema=Context
)
agent.invoke(
{"messages": [{"role": "user", "content": "我叫什么名字?"}]},
context=Context(user_name="John Smith")
)