agent.chat ========== .. py:module:: agent.chat .. autoapi-nested-parse:: 对话流:SSE 聊天入口,支持 Mock 和 DeepSeek 两种后端。 Attributes ---------- .. autoapisummary:: agent.chat._PROJECT_ROOT agent.chat.MOCK_MODE Functions --------- .. autoapisummary:: agent.chat._readme_core agent.chat.build_chat_messages agent.chat.mock_stream_chat agent.chat.stream_chat agent.chat.chat_stream Module Contents --------------- .. py:data:: _PROJECT_ROOT :value: b'.' .. py:function:: _readme_core() -> str 读取 README.md 标题 + 核心功能 + 技术栈,作为项目介绍兜底。 .. py:function:: build_chat_messages(message: str, plan_result: dict | None = None) -> list[dict] 构建对话消息列表,自动注入 RAG 文档上下文。 Args: message: 用户输入的消息。 plan_result: 可选的规划结果,注入 system prompt 作为上下文。 Returns: OpenAI-compatible messages 列表。 .. py:function:: mock_stream_chat(messages: list[dict]) :async: 调试用:MOCK_MODE=True 时模拟 SSE 流式回复,无需 LLM API Key。 Args: messages: OpenAI-compatible messages 列表。 Yields: str: 模拟回复的逐字符 token。 .. py:function:: stream_chat(messages: list[dict]) :async: 真实 DeepSeek SSE 流式聊天。 Args: messages: OpenAI-compatible messages 列表。 Yields: str: DeepSeek 流式响应的逐 token 内容。 .. py:data:: MOCK_MODE :value: False .. py:function:: chat_stream(messages: list[dict]) :async: 统一入口:MOCK_MODE=True 时模拟,否则调 DeepSeek。 Args: messages: OpenAI-compatible messages 列表。 Yields: str: 流式响应的逐 token 内容。