开头我先说一个判断:这大概是我见过最“浪费” token 的项目,但也是最有意思的一类 AI 应用。
70 亿 token,不是用来训练模型,不是用来做问答,也不是用来跑什么数据分析。它被拿来做了一个“AI 德国军官”,核心任务只有一个:监督我学习。
这个标题本身就很有画面感。一个严格、刻板、不好糊弄的虚拟监督者,盯着你背单词、做题、写论文、复习考试,然后用纪律、评分、惩罚机制把你按在学习桌前。很多人在评论区问的第一句话都是:这 70 亿 token 到底是怎么花掉的?为什么要花这么多?
这篇我打算把这个项目的里里外外拆开讲。不只看它做了什么,更要看它为什么值得做,以及如果你想复刻一个类似的“AI 监督员”,真正要解决的难点在哪里。
## 1. 先搞清楚:70 亿 token 到底花在了哪里 很多人看到“70 亿 token”这个概念,第一反应是把 token 当成钱。这没错,在大模型 API 的计费模型里,token 确实等于成本。但更准确地说,token 是模型的“思考单位”。 你可以把 token 理解成模型阅读和生成文字时的最小颗粒。一个中文字符大约占 1 到 2 个 token,一页 A4 纸的中文文本差不多是 1000 到 2000 个 token。70 亿 token,如果全部摊在文本上,是一个普通人一辈子都读不完的文本量。 那这个量级在一个“AI 监督学习”的项目里是怎么消耗掉的?按我做类似项目的经验来推,通常不是一次性烧掉的,而是集中在三条线上。 ### 1.1 烧在“人设稳定”上的 token,往往被严重低估 如果你只是用 API 调一次模型,说一句“你是一个严格的老师,监督我学习”,那消耗的 token 很少。但真实场景里,AI 不能每轮对话都失忆。 一次像样的 AI 监督会话,通常要包含: - 系统人设:你是德国军官、你的语气、你的纪律要求、你的奖惩机制。 - 历史记忆:今天学了什么、昨天学了什么、哪些知识点一直错。 - 当前任务上下文:本次学习目标、学习材料、题目内容。 - 输出约束:你只能按评分表输出、你必须给出改进建议、你的惩罚语气要到什么强度。 这些内容每轮都要拼接进上下文。也就是说,不是每一轮只算一句话的 token,而是要把整个“记忆包”带着跑。 比如你每天学习 2 小时,每 30 秒产生一次交互,一次交互带 3000 token 上下文,那一天就是几十万 token。如果这个项目连续跑了几个月,甚至跑了更长时间,70 亿 token 并不夸张。 ### 1.2 烧在“失败重试”上的 token,是隐藏成本 另一个非常容易被低估的地方是重试。 真实使用中,AI 不可能每轮都精准理解你的意图。经常出现的情况是: - 模型回复跑偏,人设崩了,需要重新给定上下文再生成。 - 输出 JSON 解析失败,需要重新调用。 - 学生反馈“太假了”,于是重新生成更有压迫感的回复。 - 模型拒绝扮演某些监督语气,需要调整提示词再试。 每一次重试,都是双倍成本。你看到的是几百句对话,实际上后台可能是几千次 API 调用。 ### 1.3 烧在“多版本尝试”上的 token,是迭代成本 我判断这个项目大概率不是一次写成最终效果的。为了找到合适的“军官语气”“监督强度”“评分逻辑”,创作者通常会同时跑多组对比测试: - 同一句话,用不同人设提示词各生成一遍。 - 同一套学习计划,让 AI 给出几个版本,人工挑最优。 - 不同的模型参数,比如 temperature 调高调低,看看哪种更稳定。 - 不同上下文长度,测试记忆保留效果。 这些对比测试烧 token 速度极快,因为每次对比都是几份完整输出。70 亿里如果有一半是这种“磨效果”烧掉的,我完全相信。 所以这个标题里的 70 亿 token,不是一个炫富数字,而是整个项目从想法到最终效果的累计成本。它证明了做这种项目,真正的投入大头不是开发时间,而是持续试错和运行时成本。 ## 2. 为什么这个项目真正难的不是“让 AI 说话”,而是“让 AI 记得住” 如果你觉得这个项目只是套壳调用大模型,那就把难点想简单了。 一个普通的 AI 聊天机器人,只需要完成“你问一句,它答一句”。但一个 AI 监督者,必须做到连贯、一致、有记忆。它需要像一个真的教官一样,记得你昨天的表现,知道你今天有没有偷懒,能指出你反复犯的错。 这意味着它不能是“失忆”的。 ### 2.1 上下文管理是这类项目的第一道坎 在常见的 API 调用方式里,模型本身不具备长期记忆。每次调用都是独立的。要让 AI “记得”之前的内容,必须把历史对话和状态数据塞进下一次请求。 怎么塞,是一个核心设计问题。 小项目常用的方式是把全部历史对话连续拼接,塞进 context。这种方式简单,但 token 消耗高,而且当对话历史越来越长,最终会超过模型上下文窗口。 稍微优化一点的做法是只保留最近 N 轮对话,再加一条“长期摘要”。比如每 20 轮,让模型生成一份摘要:今天学了什么、掌握了什么、薄弱点在哪里。下一次对话时,把摘要 + 最近几轮记录一起送进去。 再进阶一点,就是把学习状态结构化。不只是对话文本,而是建立字段: ```json { "日期": "2025-01-06", "学习科目": "英语六级词汇", "目标数量": 50, "已完成": 32, "正确率": 68, "薄弱词": ["abandon", "ambiguous", "allocate"], "军衔": "下士", "累计违纪次数": 3 }每次交互时,把这份状态 JSON 填进上下文。AI 就能基于状态而不是基于模糊记忆做出监督反馈。
从 70 亿 token 的消耗量来看,这个项目多半是把“历史对话拼接”和“结构化状态”混合使用了。对话太长的部分依赖摘要,关键指标依赖结构化状态。否则成本会更快爆掉。
2.2 人设连续性是第二道坎
让 AI 扮演德国军官,一次两次容易。难的是让它每一次回复都像同一个军官。
很多复刻过类似项目的开发者应该遇到过这种情况:第一轮 AI 很严厉,第二轮开始温柔,第三轮直接变成鼓励型导师。人设崩了,整个体验就废了。
要保持人设稳定,不是靠提示词里多写几个“严厉”就够。实操里面有几件事能做:
- 固化系统提示词,每次请求都带上完整的角色设定,而不是只在第一轮带。
- 给模型规定语气模板,比如“每次开头必须称呼学员”“每次结束必须给出扣分或加分项”。
- 设置稳定输出格式,让 AI 的回复先按 JSON 生成,再转成展示文本,降低随机性。
- 对敏感词做过滤或改写,避免模型因安全审查突然切换成“官方口径”。
这些细节决定了用户能不能进入“被监督”的状态。一旦 AI 偶尔变成普通聊天助手,沉浸感就断了。
2.3 记忆不只是“存储”,还要能“调用”
做过聊天机器人的人都知道,最难受的不是没有记忆,而是有记忆但不知道什么时候该提取哪一段。
比如一个学生昨天背了 50 个单词,错的 12 个。今天 AI 开口第一句应该是:“昨天的 12 个错词,今天先过一遍。”这就是记忆调度。
如果 AI 只知道笼统地说“你昨天学习不够认真”,那就等于没用。如果它能把昨天具体的错词列表调出来,塞进今天的上下文,这个监督者才显得“真的在盯你”。
所以,项目里的数据存储很关键。一般可以选:
- 轻量方案:直接存 JSON 文件,适合单机个人项目。
- 标准方案:用 SQLite,适合需要查询历史记录的场景。
- 进阶方案:用向量数据库做语义检索,适合跨天、跨科目找旧内容。
这个项目我猜测大概率用了 SQLite 或 JSON 一类轻量存储。70 亿 token 不代表数据存储复杂,它只代表模型调用量大。
3. 从“好玩”到“真能用”:一套 AI 监督系统的工程骨架
这里我想拆一个通用框架。如果你也想做一个类似“AI 监督我学习”的项目,不需要一开始就做到 70 亿 token 的规模。你可以先跑通最小闭环,再逐步扩展。
我建议把整个系统拆成 5 个模块:输入、状态、调度、生成、反馈。
3.1 输入模块:把学习行为变成机器可读信号
AI 监督者必须知道“你做了什么”。常见的输入方式有三种:
- 手动输入:学生自己填写“我今天学了 30 个单词”。
- 文件导入:把学习记录、导出表格、背单词 App 的统计结果导入。
- 截屏识别:把学习页面截图发给 AI,让它 OCR 识别进度。
对于新手项目,从手动输入开始最稳。它不需要写复杂的识别逻辑,又可以保证数据质量。
进阶一点,可以让 AI 自己根据聊天内容抽取信息。比如用户说“今天背了 50 个词,错了一半”,AI 自动更新状态字段。
3.2 状态模块:这是决定系统像不像“真人”的关键
前面说过,状态就是 AI 的“记忆画布”。我建议在数据库里维护一张学习状态表,至少包含这些字段:
| 字段 | 示例 | 用途 |
|---|---|---|
| 学习科目 | 考研英语 | 区分不同任务 |
| 当前阶段 | 强化阶段第 3 天 | 让 AI 知道进度 |
| 今日目标 | 50 个新词 | 生成监督语气的依据 |
| 今日完成 | 32 个 | 判断是否达标 |
| 连续达标天数 | 5 天 | 决定奖惩力度 |
| 最近错误清单 | 10 个易错词 | 下次优先复习 |
| 违纪记录 | 3 次 | 让 AI 更严厉 |
状态表的作用,是让 AI 不需要“记住”每句话,而是每次根据结构化数据重新生成合理反应。
3.3 调度模块:决定什么时机触发 AI
调度解决的是成本问题。不是每次用户说话都要调用大模型。有些动作可以走规则,比如:
- 用户提交“今日学习 32 个单词”,可以直接更新状态,不调用大模型。
- 只有生成“监督点评”时,才调用大模型。
- 每天学习结束时,自动生成一份学习总结。
- 连续几天不达标,触发一次“训话”。
这样能把大模型调用次数压到最低,同时保留 AI 的存在感。
3.4 生成模块:提示词设计的核心技巧
提示词不建议写成一整段话,而是拆成“角色设定 + 上下文状态 + 输出要求”三层。
角色设定: 你是一名德国军官出身的纪律教官。你的任务是监督学员完成学习任务。你要求严格、语气直接、不鼓励虚假放松,但你也尊重每一点进步。你对学员的历史表现有清晰的记录。 当前状态: 科目:英语六级词汇 今日目标:50 个新词 今日实际:32 个 昨日正确率:68% 最近错误词:ambiguous, elite, exacerbate 输出要求: 1. 先用一句话点评今日表现。 2. 指出 1 个最严重的问题。 3. 给出明天的具体行动指令。 4. 根据今日完成度进行军衔加减分。这样写的好处是:人设稳定、状态清晰、输出约束明确。token 消耗也相对可控。
3.5 反馈模块:让用户看到“被监督”的完整闭环
反馈不只是对话文本,更建议做成可视化面板。显示今日任务、完成度、军衔等级、连续达标天数、惩罚记录。
这一层看着简单,但对留存很有帮助。用户需要看到 AI 是“认真地”在盯着自己,而不是随便聊聊天。
如果只做对话框,很容易用两天就腻。加上军衔晋升系统、连续打卡记录、错词回顾清单,用户才会有“被一个虚拟上级管理”的感觉。
注意:不要在第一个版本里把所有功能都做进去。先跑通“今天学了多少 → 更新状态 → AI 点评 → 更新军衔”这个最小闭环,再考虑截图识别、语音交互、多学科管理。
4. 踩坑经验:这类项目最容易翻车的 5 个地方
4.1 盲目标榜 token 量,但不解释成本结构
70 亿 token 当标题确实吸引人,但如果内容只会展示“我花了多少”,没有解释为什么花、花在哪、有没有办法更省,那读者看完只会觉得是炒作。
这也是为什么我建议作者写这种标题时,要准备一张成本结构图或一份 token 消耗表。能让读者一眼看明白“哪部分消耗最大”,比单纯喊 70 亿更有说服力。
4.2 上下文越长,效果反而越差
很多初学 ChatGPT API 的人,习惯把所有历史消息都堆进上下文。结果就是 token 消耗暴涨,而且模型越到后面越容易忽略早期指令。
这里建议做历史压缩。每 10 到 20 轮对话,让一个便宜的模型生成摘要。之后的请求只带摘要,而不是完整历史。
4.3 让人设过于极端,容易撞上安全边界
“德国军官”这个设定本身是为了节目效果。但如果把“严厉”写成“辱骂”“贬低”“人身攻击”,很容易被内容安全策略拦下。
实操上可以把“严厉”转译成“纪律性强、要求高、不轻易表扬、带有军事化管理语气”,而不是直接让 AI 骂人。这样既能保留角色特色,又能长期稳定运行。
4.4 没有重试和降级机制,一个报错就让系统崩溃
70 亿 token 的背后,肯定是无数次 API 调用。只要中间有一次 API 超时或返回异常,整个流程就可能卡住。
工程上要加三层保护:
- 对单次调用设置超时时间,超时后自动重试一次。
- 如果连续失败,降级为固定文本模板回复,不让用户看到“服务不可用”。
- 关键步骤写日志,保留请求参数和返回结果,便于排查。
4.5 忽视 token 成本上限,项目做到一半不敢用了
个人项目最怕的就是模型越玩越大,成本越烧越高,最后弃坑。
我建议从第一天就设定预算:
- 单次学习会话预算上限:比如 5000 token。
- 每日全局预算上限:比如 50 万 token。
- 达到预算后自动降低模型档次或切换成精简模式。
毕竟 AI 监督器的价值,在于持续陪伴,而不是一次跑完就停。
另外,如果遇到 API 登录失败、token 交换失败、地区限制这类问题,大概率不是模型能力问题,而是账号、网络或服务商限制导致。路径不同,排查顺序也不同。先确认账号环境和服务可用性,再检查代码里的鉴权参数,最后看是否是地区策略拒绝。
5. 最适合做 AI 监督者的场景,反而不是“强制学习”
聊完技术坑,我想说一个更偏向产品的判断。
很多人觉得 AI 监督者适合自制力差的学生。但在实际体验里,它更适合四类人。
5.1 需要“外部节律感”的人
很多人不是不会学,而是缺少一个“像样的人来告诉自己下一步做什么”。AI 监督者最大的价值,不是提供知识,而是提供一个稳定的节律:每天早上告诉你今天目标,晚上复盘完成度,第二天继续。这种节奏感对长期坚持非常重要。
5.2 喜欢游戏化反馈的人
军衔、评分、加减分、违纪记录,这些本质上都是游戏化反馈。它把枯燥的学习变成“保住军衔”的挑战。如果你对这类机制有天然兴趣,AI 监督者会比普通打卡软件更容易坚持。
5.3 需要轻度羞耻感监督的人
不是所有人都吃“鼓励型陪伴”这一套。一部分人更容易被“你今天表现不合格”刺激到。这不是说越严厉越好,而是不同人适合不同反馈风格。
5.4 喜欢自己动手做工具的开发者
这类项目的最大受益者,可能不是最终用它的学生,而是从头造轮子的开发者。通过做 AI 监督者,你能完整经历一遍上下文管理、状态存储、成本控制、提示词调优和异常处理,比看十篇教程都有效。
5.5 不适合的人
反过来,如果你希望 AI 真正给你讲题、解释概念、帮你总结知识点,那监督者定位反而不合适。监督者重在管理行为,而不是替代老师。学习内容本身还是要靠教材、课程和资料来完成。
所以,这个项目最聪明的定位,是把 AI 放在“教官”而不是“讲师”的位置上。它不是来教你知识的,是来逼你坐在书桌前的。
6. 一个更省的复刻路线:从 10 万 token 开始跑
如果你看完这个项目,想自己也做一个“AI 监督员”,我不建议你照抄 70 亿 token 的烧钱路线。下面是更合理的迭代路径。
6.1 第一阶段:命令行聊天版,控制在 10 万 token 以内
只做一件事:调用大模型接口,加一个固定的人设提示词,让用户在终端或网页里和“教官”对话。这个阶段不需要状态记忆,不需要数据库,只需要跑通“人设语气”。
验证目标:AI 的严厉语气是否稳定、用户有没有继续对话的意愿。
6.2 第二阶段:加入状态文件,控制在 100 万 token 以内
开始维护一份 JSON 状态文件。用户学习完,手动填入“科目、目标、完成量、正确率”,然后 AI 根据状态生成点评。这个阶段会明显感受到,结构化状态比纯聊天记忆更可靠。
验证目标:AI 是否真的能根据历史状态给出针对性反馈,而不是泛泛而谈。
6.3 第三阶段:加入调度和摘要,开始批量使用
这时再把历史压缩、日志、重试加进去。把“手动输入”扩展为“文件导入”或“截图识别”。可以尝试批量化生成每日总结和每周报告。
验证目标:系统能否连续使用一周,而成本和时间消耗都还在可控范围内。
6.4 第四阶段:可视化面板和游戏化系统
最后再做前端页面,把军衔、打卡、错词、违纪记录展示出来。这个阶段关注的不再是单一对话,而是完整的“被监督体验”。
7. 这类项目背后的长期价值
最后我想把视角拉开一点。
70 亿 token 的 AI 德国军官,表面上是一个整活项目。但它的底层逻辑,其实是当前 AI 应用最有潜力的方向之一:把大模型从一个“回答问题的人”,变成一个“参与你生活工作流程的协作者”。
过去我们使用软件,是人去适应软件。现在使用 AI 助手,仍然是人主动发起请求。但“AI 监督者”这类应用把主动权部分移交给了模型。它会在你没学习的时候提醒你,在你完成目标后评价你,在你连续摆烂后训斥你。模型不再被动,而是在流程里主动承担“监督”职责。
这个变化,才是这类项目真正值得关注的地方。
它不是让你更快地完成一件事,而是让你更有可能坚持一件事。它解决的不是效率问题,而是持续性问题。
如果你想复刻一个类似项目,我的建议是:不要纠结一开始就做到多完整,先写 20 行代码拉起一个“会骂人的对话机器人”,再一步步给它加上记忆、状态、评分、军衔。把 70 亿 token 当成一个结果,而不是起点。
先跑通,再优化,最后再做成一款别人愿意每天打开的产品。这条路,比直接烧几十亿 token 更值得走。