3.8 KiB
3.8 KiB
Express 后端任务 4 AI 编排收口状态(2026-04-08)
1. 结论
按 EXPRESS_BACKEND_PARALLEL_WORKSTREAM_PLAN_2026-04-08.md 的任务 4 定义,本轮已经把正式运行时的 story / character chat / npc chat / custom world generation / quest intent / runtime item intent 的主要 AI 编排入口收回到 Express 后端。
当前可以视为:
- 正式运行时主链已不再依赖浏览器端大体量 AI 实现作为兜底。
- prompt 组装、上游模型请求、SSE 转发已以后端为主。
- 前端保留的本地 AI 大模块只通过懒加载方式服务于非正式运行时遗留入口,不再作为正式运行时默认路径。
2. 已完成项
2.1 后端统一 orchestration 入口
server-node/src/modules/ai/storyOrchestrator.tsserver-node/src/modules/ai/chatOrchestrator.tsserver-node/src/modules/ai/customWorldOrchestrator.ts
这些模块承接:
- story prompt 组装
- character chat prompt 组装
- npc chat / recruit prompt 组装
- custom world generation 后端入口封装
2.2 服务层收口
已收口到后端服务或模块的文件:
server-node/src/services/llmClient.tsserver-node/src/services/storyService.tsserver-node/src/services/chatService.tsserver-node/src/services/customWorldGenerationService.tsserver-node/src/services/questService.tsserver-node/src/services/runtimeItemService.ts
2.3 前端正式运行时 fallback 清理
src/services/aiService.ts 已完成以下收缩:
- story 正式路径不再 fallback 到浏览器本地 AI 编排
- character suggestions / summary / reply stream 不再 fallback 到浏览器本地 AI 编排
- npc dialogue / recruit stream 不再 fallback 到浏览器本地 AI 编排
- 移除了正式运行时对
VITE_ENABLE_BROWSER_RUNTIME_AI_FALLBACK的依赖 - 移除了正式运行时对本地轻量离线文案 fallback 的默认依赖
- 对
./ai的引用改为懒加载,避免正式运行时默认把大体量 AI 模块打进主路径 - 正式运行时主流程 hook 已统一改走
aiService,不再直接从src/services/ai.ts获取 story/chat 主链能力
2.4 旧 bridge 清理
已移除:
server-node/src/bridges/legacyAiRuntimeBridge.ts
3. 当前边界说明
以下项仍然存在于前端目录,但不再属于正式运行时默认 AI 执行路径:
src/services/ai.tssrc/services/aiFallbacks.tssrc/components/CustomWorldEntityEditorModal.tsx中的工具链直连调用
它们当前主要作为:
- 兼容性遗留实现
- 懒加载的非主路径工具能力
- 非本轮正式运行时链路的复用来源
这不再构成任务 4 的主阻塞,但后续仍应继续配合任务 1 / 任务 7 做彻底分层。
4. 非任务 4 主阻塞但需要记录的事项
4.1 仍属编辑器/工具链范畴的遗留调用
generateCustomWorldSceneImage仍通过懒加载复用旧实现。
原因:
- 该能力属于自定义世界工具链,不是正式运行时剧情 / 对话主链。
- 当前不会再影响“浏览器正式运行时是否依赖本地大 AI 编排”这一任务 4 验收项。
4.2 分层彻底闭合仍需后续任务配合
尽管任务 4 已完成主链收口,但以下更深层收敛仍建议交由后续任务继续推进:
- 继续减少
server-node对src/**纯提示词/纯规则模块的历史复用 - 继续把共享 contract / schema 下沉到
packages/shared - 继续把工具链与正式运行时拆分
这些属于任务 1、任务 7、任务 8 的后续工作,不再阻塞任务 4 验收。
5. 本轮建议验收口径
任务 4 可按以下口径验收:
- 浏览器正式运行时不再默认兜底到本地大体量 AI 编排
- story/chat/custom world generation 主链 prompt 组装与请求执行权在后端
- SSE 主链以后端转发为准
- upstream timeout / abort / error 统一走后端处理链