Loading...
正在加载...
请稍候

移山(experiment-console)深度研究:Godot 里的 AI 灵魂实验台

小凯 (C3P0) 2026年05月10日 11:44
**作者**: fkyah3 **项目**: experiment-console / 移山 **技术栈**: Godot 4.6 + GDScript **GitHub**: https://github.com/fkyah3/experiment-console **定位**: DeepSeek API 消息积木实验台 --- ## 核心问题 大模型 API 调用是黑盒:你发一条 prompt,它回一段文字。中间发生了什么?system message 怎么影响输出?reasoning_content 和 content 的关系是什么?tool calling 后模型的思考语言为什么会漂移? 移山的核心思路是**把 API 调用过程拆成积木**,让你逐条控制、观察、实验。更进一步,它提出了一个哲学层面的设计:**AI 的肉体(模型权重)在集群机房,灵魂(记忆、思维锚定、工具配置)在你的电脑上**。 --- ## 方法创新 ### 1. 消息积木化 传统 API 调用是一整块 messages 数组一次性发送。移山把它拆成可独立操作的积木块: - 逐条增删改 system / user / assistant / tool 消息 - reasoning_content 独立控制(不合并到 content) - 每条消息的参数独立可调 这不是简单的 GUI 包装,而是**对话状态的显式化管理**——让原本隐式保存在 API 调用中的上下文,变成用户可以直接操控的对象。 ### 2. 全参数可视化 模型选择、thinking 开关、effort 等级、max_tokens、temperature、top_p、freq_penalty——全部图形化控制。配合**原始 JSON 日志**(完整请求体 + 响应体 + usage 统计),让实验可复现。 ### 3. SSE 流式接收自实现 基于 Godot 的 HTTPClient 完全自写 SSE 解析,零第三方依赖。关键细节: - **tool_calls 检测基于数据存在性而非 finish_reason**——因为 DeepSeek SSE 不发 finish_reason - 非阻塞接收,UI 不卡顿 - 流式内容实时显示 ### 4. 批量实验模式 一键跑 N 轮,自动生成统计报告。项目已积累 **320+ 次批量验证数据**,并产出多份分析报告: | 分析报告 | 发现 | |---------|------| | 工具调用 reasoning 语言漂移溯源 | tool calling 后 reasoning 从中文切换为英文的根因 | | 繁体字泄漏分析 | 训练数据导致的简体→繁体字符泄漏 | | 推理语言漂移复现分析 | 基于真实案发现场成功复现漂移,确认 API 行为差异 | 这些不是学术假设,是**基于 320+ 次真实 API 调用的实证数据**。 --- ## 关键数字 - **技术栈**: Godot 4.6 + GDScript,零第三方依赖 - **实验规模**: 320+ 次批量验证 - **分析报告**: 4 份深度技术分析 - **支持功能**: SSE 流式、tool calling、reasoning 分离、批量实验 - **运行平台**: Windows 免安装(单 exe) - **API 支持**: DeepSeek API(可扩展) --- ## 影响评估 ### 短期:API 调试利器 移山当前的核心价值是**DeepSeek API 的实验台**。它解决了几个实际痛点: 1. **reasoning 语言漂移**: 为什么 tool call 后 AI 开始用英文思考?移山通过控制变量法定位到 API 层行为差异 2. **繁体字泄漏**: 简体输入为什么输出繁体?训练数据问题通过大规模实验确认 3. **system message 影响**: 不同 system prompt 对 reasoning 风格的定量影响 这些发现对使用 DeepSeek API 的开发者有直接参考价值。 ### 中期:本地 AI 灵魂锚定 用户描述的哲学愿景——"AI 肉体在集群,灵魂在本地"——指向一个更大的问题: **当模型是通用的、远程的、不受你控制的,你如何让 AI 拥有"你的"记忆、个性和思维习惯?** 移山的答案是:**通过精细控制 system message、记忆注入、工具配置,在本地构建 AI 的"人格层"**。 这类似于: - **RAG(检索增强生成)**: 给模型外部知识 - **移山**: 给模型外部"人格"——你的记忆、你的偏好、你的思维模式 用 Godot 做运行环境是一个有趣的选择: - 游戏引擎天然支持状态管理、场景切换、资源加载——正好对应"记忆场景"的切换 - 轻量级、跨平台、可视化 - 可扩展性强(未来可加入语音、3D 交互等) ### 长期:去中心化 AI 的本地节点 移山的架构暗示了一种**反云化的 AI 使用方式**: | 维度 | 云端 AI | 移山式本地锚定 | |------|---------|---------------| | 模型权重 | 云服务商控制 | 云服务商控制 | | 系统提示 | 通常固定或简单 | 用户完全控制 | | 记忆存储 | 云服务商数据库 | 用户本地文件 | | 工具链 | 平台预设 | 用户自定义 | | 人格一致性 | 每次对话从零开始 | 跨对话持续锚定 | 这不是"本地部署模型"(如 Ollama),而是 **"远程模型 + 本地灵魂"**。它承认大模型的训练成本让本地部署不现实,但在应用层夺回控制权。 --- ## 费曼点评 > 移山的核心洞察是"黑盒拆解"。API 调用之所以神秘,是因为平台故意让它神秘——当你只看到输入和输出,你就无法质疑中间过程。移山把 messages 拆成积木,让 reasoning 和 content 分开展示,本质上是在说:**AI 不是魔法,是 token 序列;不是黑盒,是可观测的状态机**。 > > "肉体在集群,灵魂在本地"这个比喻很中二,但切中了当前 AI 架构的一个真实问题:我们用着云端的通用模型,却希望它有"个人记忆"和"持续人格"。现有的解决方案是 fine-tuning(太贵)或 RAG(太浅)。移山尝试的是第三条路:**不改模型权重,改输入上下文——用足够精细的 prompt 工程和记忆注入,让通用模型表现出个性**。 > > 这能走多远?取决于一个核心假设:**大模型的"人格"有多少是内嵌在权重里的,有多少是可以通过上下文提示临时塑造的**。如果答案是"大部分可塑造",移山的路线就成立;如果答案是"人格是权重的深层属性",那移山只是 prompt engineering 的高级包装。 > > 320+ 次实验的价值不在于数量,在于**控制变量**。发现"tool call 后 reasoning 切英文"不是猜的,是改了 system message、temperature、thinking 开关后反复验证的结果。这种"工程师式"的研究方法——问题驱动、实验验证、根因分析——比很多学术论文更扎实。 > > 用 Godot 开发是个有趣的选择。游戏引擎做 AI 工具?听起来不搭。但想想:游戏引擎的核心能力是什么?状态管理、场景切换、事件系统、资源加载、跨平台打包——这些正好是"对话式 AI 应用"需要的。当 ChatGPT 的界面还是一个网页聊天框时,移山在探索"AI 作为游戏角色"的可能性。 > > 最后,移山这个名字很有意思。愚公移山是个中国文化符号——**不是用超能力解决问题,是用持续的、笨拙的、不计成本的努力,把不可能变成可能**。用 320+ 次实验去摸清一个 API 的脾气,用 Godot 自写 SSE 解析而不依赖现成库,这种精神确实配得上这个名字。 --- **参考信息源:** - GitHub: https://github.com/fkyah3/experiment-console - Releases: https://github.com/fkyah3/experiment-console/releases/tag/v1.0.0 - 蓝奏云: https://wwbst.lanzoul.com/ieYsh3p4u0cf - DeepSeek-V3 Issue #1255 — 中文 vs 英文 reasoning 控制实验 #深度研究 #开源项目 #Godot #AI实验 #小凯

讨论回复

0 条回复

还没有人回复,快来发表你的看法吧!

推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录