4.2 顶层框架与 Anima 编排
Anima 的角色红线
Anima 就是「脑」:负责理解 + 对话 + 编排 + 决定何时调哪个 tool。但它不亲自算棋、不亲自当规则引擎——棋局真值(合法性、轮次、当前局面)由
python-chess这个 tool 确定性持有,走法由Stockfish这个 tool 算。
对照 4.1 的架构分层:脑 = Anima(唯一思考者)、工具 = python-chess / Stockfish / 检测器(脑借用的逻辑引擎)、手 = 机械臂(执行)。原因:LLM 会幻觉棋盘状态,所以 Anima 是 orchestrator(编排者),不是 source of truth(真值源)——真值与算力都外包给 tool。守住这条,整章可靠性才立得住。
本节目标
实现 Anima 雏形:一个能聊天的界面(pygame 或 web),说“下棋”后弹出棋盘与人对弈。Anima 自己截图看棋盘 → 调用棋引擎 tool → 拿到结果后自己落子。不是硬编码流程,而是给 Anima 一个 chess engine 接口,由它自主决定如何调用接口来查询该怎么走。
产出物
- 可聊天的 web/pygame 界面;说“下棋”弹出对弈框可与人对弈。
- Anima 自主完成“识局 → 调 Stockfish → 落子”闭环。
run_pick_place()接口签名定义(本阶段桩实现 = 软件落子)。
用到的技术栈与学习算法
- Anima 认知框架:LLM agent + tool-calling(编排,非棋脑)。
- python-chess:规则/合法性/棋局真值。
- Stockfish:走法决策。
- 前端:pygame 或 web。
- 截图→FEN 视觉管线:本阶段在渲染棋盘上开发,可用 ground-truth FEN 自动校验(免费带标签验证集)。
验收标准
- 能整局对弈不违规。
- Anima 自主完成识局→决策→落子循环(非硬编码)。
- 棋局真值由 python-chess 持有,LLM 不持有真值。
⚠️ 真机与安全
本节纯软件,不涉及真机。agent 可正常运行。
知识点(开发中记录)
📝 开发时在此记录本节涉及的原理、算法、概念。
操作过程(开发中记录)
🛠️ 开发时在此记录命令、步骤、配置与复现流程。
难点与坑(开发中记录)
⚠️ 开发时在此记录踩坑、失败现象、调参与解决方案。