Files
smartmate/backend/agent
Losita d3cec2a5b9 Version: 0.7.0.dev.260319
 feat(agent): 新增智能排程 Agent 全链路 + ReAct 精排引擎

  🏗️ 智能排程 Graph 编排(阶段 1 基础链路)
  - 新增 scheduleplan 包:state / tool / prompt / nodes / runner / graph 六件套
  - 实现 plan → preview → materialize → apply → reflect → finalize 完整图编排
  - 通过函数注入解耦 agent 层与 service 层,避免循环依赖
  - 路由层新增 schedule_plan 动作,复用现有 SSE + 持久化链路

  🧠 ReAct 精排引擎(阶段 1.5 语义化微调)
  - 粗排后构建"混合日程"(既有课程 + 建议任务),统一为 HybridScheduleEntry
  - LLM 开启深度思考,通过 Swap / Move / TimeAvailable / GetAvailableSlots 四个 Tool 在内存中优化任务时间
  - reasoning_content 实时流式推送前端,用户可见 AI 思考过程
  - 精排结果仅预览不落库,向后兼容(未注入依赖时走原有 materialize 路径)

  📝 文档
  - 新增 ReAct 精排引擎决策记录

  ⚠️ 已知问题:深度思考模式耗时较长,超时策略待优化
2026-03-19 23:18:56 +08:00
..
2026-03-17 18:23:07 +08:00
2026-03-16 22:30:45 +08:00
2026-03-19 23:18:56 +08:00
2026-03-19 23:18:56 +08:00
2026-03-16 22:30:45 +08:00
2026-03-14 19:42:26 +08:00

backend/agent 目录说明

该目录已按“路由 / 聊天 / 随口记”三层拆分,便于阅读、调试与扩展:

  1. route/
  • route.go:只负责模型控制码分流(quick_note / chat)。
  • 提供控制码解析、nonce 校验、路由兜底,不参与写库与回复拼装。
  1. chat/
  • stream.go普通聊天流式输出封装SSE/OpenAI 兼容 chunk 转换)。
  • prompt.go:聊天主系统提示词。
  1. quicknote/
  • graph.go:只负责图编排连线与分支,不承载节点内部实现。
  • nodes.go:节点实现(意图识别、优先级评估、持久化、分支选择)。
  • tool.go工具定义、参数校验、deadline 解析、写库工具打包。
  • state.go:随口记状态容器与重试状态记录。
  • prompt.go:随口记提示词(控制码路由、聚合规划、优先级评估、回复润色)。
  1. README.md(当前文件)
  • 记录目录职责边界,帮助后续继续按同样范式扩展 query/update 等技能链路。

说明:服务层仍通过 RunQuickNoteGraph 调用随口记图;若判定为非随口记意图,会自动回落到普通流式聊天链路。