编程导航人工智能话题讨论

人工智能

271 参与
分享

快来分享你的内容吧~

点击登录,快来和大家讨论吧~
表情
图片
话题
打卡
综合
交流
文章
问答

MCTS + CNN 自对弈强化学习实战总结

# MCTS + CNN 自对弈强化学习实战总结 > 本文是对一个五子棋自对弈强化学习项目(GomokuCnn)的完整复盘。 > 项目在一台 RTX 3060 Laptop 上,用 AlphaZero 式"自对弈 → 训练 → 评估" > 循环从零训出强 AI:最终模型对战传统 NNUE 引擎 > [rapfi](https://github.com/dhbloo/rapfi),先手执黑基本保持 100% 胜率。 > 训练方案参考了 [zhoukangyang233/Gomoku](https://github.com/zhoukangyang233/Gomoku) > (nn_012 管线),在此之上做了大量机制研究与工程优化。 > > 项目已开源:<https://github.com/YorickFin/GomokuCnn> 这个项目最有价值的部分不是"训出了一个能下棋的 AI",而是过程中沉淀的 几条**反直觉结论**——它们大多来自失败的 run,每一条都有实测数据背书: 1. 标签质量不来自 sims 数,来自标签生成机制;棋力不来自单轮精度,来自总轮次; 2. 双盲期不是要"解决"的问题,而是要"穿越"的阶段; 3. 物化 D4 对称增强是强 AI 的信息论硬约束,Online D4 + 经验回放无法替代; 4. 防杀能力不生活在搜索里,它生活在训练标签里; 5. 跨轮持久的低学习率是棋力退化的隐形杀手。 下面按管线逐一展开。 ## 一、管线总览 整体是标准 AlphaZero 架构的轻量版: ``` 自对弈(MCTS + 当前模型生成对局数据) ↓ 标签生成(全节点收集 + prior/Q 分层重分配) ↓ 物化 D4 八倍对称增强 ↓ 训练(每轮重建 Adam + ReduceLROnPlateau 轮内调度) ↓ arena 竞技评估(对 champion 胜率 ≥52% 晋升) ↺ 回到自对弈 ``` 关键配置(低 sims 三支柱,缺一不可): | 支柱 | 配置 | 作用 | | --- | --- | --- | | 低算力搜索 | 30 sims/步 | 单轮快 → 总轮次多 | | 标签机制 | 全节点收集 + 分层重分配 | 低 visits 数据可用 | | 小网络 | 32 通道 / 5 残差块 | 容量匹配噪声标签 | 三支柱是绑定的。只搬其中两根会得到最差组合:首次启动时曾用 128ch/6blk 大网络配 30 sims,单轮 8 分钟(大网络吃不动 28 万全收样本), 且大容量在噪声标签上只会过拟合——128ch 的训练段计算量是 32ch 的 19 倍。 换 32ch 后全程平均约 22 秒/轮(自对弈 ~6s + 训练 ~15s)。 ## 二、低 sims 的经济学:总轮次 > 单轮标签精度 选择 30 sims 是一场明示的赌注。自对弈训练的总学习信号可以分解为: ``` 总学习信号量 ≈ 总轮次 × 每轮数据量 × 每样本信息密度 ``` 高 sims 管线的每样本信息密度高,但每轮慢;低 sims 管线的前期标签 基本是噪声(30 次模拟摊在 20 个子节点上,每个 1~3 次访问,毫无分辨力), 但换来的是 7 倍以上的轮次吞吐。 一组真实的对照实验: - **run_8**:800 sims,268 轮——arena 胜率停在 59% 天花板,且其 base 本身停滞后,新 run 只能摸到 base 的水平; - **nn_012(参考管线)**:30 sims,约 20000 轮——训出强 AI,对弈仅需 200 sims 就能稳定防杀。 轮次差 7.5 倍,sims 差 27 倍,结果完全倒挂。**单轮标签精度的短板 可以靠机制补(见下文重分配),总轮次的短板没有任何东西能补。** 代价也要有预期:低 sims 的双盲期更长(30 sims 树深约 3 层,搜不出 战术序列,战术能力只能等网络从数据里"背会"棋形)。这是设计内风险, 不是 bug。 ## 三、双盲期:定义、诊断与穿越 ### 什么是双盲期 自对弈冷启动阶段,对局双方(同一模型的自我复制)都弱到数据分布中 **不含任何有意义的对抗行为**——双方都不堵、不攻,谁先随手连五谁赢。 模型从这样的数据里学不到进步方向,形成自我强化的低水平均衡: ``` 模型弱 → 搜索树里没有战术信号 → 训练数据里没有"防守收益"的正例 → 模型学不会防守 → 模型依然弱 ``` ### 诊断指标(不要靠肉眼感觉) run_1 实测的双盲期指纹: | 特征 | 实测值 | 说明 | | --- | --- | --- | | 对局极短 | ~3.5 s/100 局 | 折合每局仅 ~10 手搜索 | | 胜率暴涨假象 | arena 对随机 base 99:1 | 赢随机对手不需要会下棋 | | value/policy 分离 | val value 0.088→0.029,policy 反而恶化 | 终局信号先教会 value 头;policy 无信号可学 | 三个关键判据: 1. **对局长度**(最灵敏):防守涌现 = 互堵 = 对局拉锯变长。自对弈 耗时**台阶式上升且不回落**才是涌现(平台期单次冲高不算数); 2. **arena 对 champion 的持续区分度**:50~60% 震荡且晋升不断 = 代际 进步;长期 45~50% 停滞 = 警惕; 3. **val value loss 在降**:说明逃逸引擎在转。注意 val policy loss 不能当判据——重分配标签是移动靶(value 变准 → 标签本身变锐), run_1 全程 policy loss 没有掉头向下,模型照样逃逸了。 ### 穿越手段 按"重要性 × 容易被忽视"排序: - **随机开局**(opening_max_moves=20,保留空盘开局概率):纯空盘自 对弈的开局标签退化成"先验 top-k 摊平",且所有对局开局段高度相似。 随机预落子把对局起点推进中盘,并用网络估值筛选最均势局面。踩坑 提醒:每个候选必须独立采样——参考实现曾把 shuffle 放在循环外, 1000 个候选实际只有 ~11 种不同局面; - **温度**:每局随机 0.1~0.8,让整个数据集覆盖从贪心到乱下的行为谱 (固定两阶段温度会导致中后期轨迹趋同,中盘残局偏弱); - **根节点 Dirichlet 噪声**(α=0.1,混合比 0.25):只加在根节点, 防止搜索被先验锁死; - **层次重分配标签**:这是低 sims 可行的支点——30 sims 的原始访问 分布是噪声,但每个子节点下方的树内 Q 是连续信号,把访问概率 按"Q 对比 + prior 层级"重新分配给树认为更好的分支,配合全节点 收集(visits 门槛设 0,可信度进样本权重 √(visits/sims)), 低 visits 数据不用丢弃。双盲期里它救不了命(Q 也是噪声),但 **value 头一旦变准,policy 标签立刻变准,不用等数据分布先改变** ——这把逃逸正反馈链的长度砍了一半; - **value 头是逃逸的正反馈引擎**:终局胜负 z 是唯一永远真实的监督 信号。逃逸链条:终局 z → value 变准 → 树内 Q 变准 → 重分配标签 变准 → policy 学会堵活三 → 对局拉锯 → 数据出现真战术 → 正循环。 ### run_1 完整逃逸时间线(1200 轮,约 12 万局,8.4 小时) | 阶段 | 轮次 | 自对弈耗时/轮 | arena 表现 | 状态 | | --- | --- | --- | --- | --- | | 双盲期 | r0~99 | ~3.6 s | 频繁晋升(假进步) | 随手连五 | | 长平台 | r100~799 | 3.6→9.6→5.5 s 冲高回落 | 晋升频繁但幅度小 | 行为在变 | | 深平台 | r800~1049 | ~3.4 s | 胜率 50% 无区分 | 全程最像"失败" | | 逃逸启动 | r1050~1149 | 3.5→5.0 s | 场均 82.5%,连续大胜 | 突破 | | 巩固 | r1150~1379 | 稳定 7~8 s | 54~63% 震荡晋升 | 中等 AI 强度 | 最深刻的教训:**深平台段(胜率 50% 无区分 + 耗时回落到双盲水平)是 全程最像"该止损"的阶段,但它恰恰是逃逸前夜**。防守是模式识别问题, 网络需要"见过足够多活三/冲四被惩罚"的对局——run_1 逃逸时累计约 12 万局,与参考实现的 20 万局同一数量级。数据量门槛真实存在,管线 优化只是压低它,没有取消它。 ## 四、物化 D4:强 AI 的信息论硬约束 逃出双盲期之后,下一个瓶颈是**自对弈闭环的对称性破缺**: ``` 模型有微小方位偏置(如左上角着法略多) → 自对弈生成的局面里,左上方战术出现频次更高 → 训练后偏置被巩固甚至放大 → 下次自对弈继续生成偏置数据 → 闭环正反馈:偏置永久固化,盲点永远存在 ``` 关键在于这个偏置发生在**数据生成端**。训练端的 Online D4(取样时 随机翻一个方位)只翻已有的偏置数据,改变不了模型下次下棋的偏置。 ### 硬约束 vs 软约束 - **物化 D4**:每个原始局面物化 8 份方位副本,8 个方位在**同一次 forward/backward** 里一起反传——梯度直接竞争,模型没有任何机会 选择性忽略某个方位; - **Online D4 + replay_rounds=7**:数字上等效(每样本训练 24 次, 方位覆盖 ~96%,Coupon Collector 问题),但 8 个方位分散在不同 epoch、不同轮次,每次训练步模型权重都不同——梯度永远不直接 竞争,偏置有充分的生存空间。且 replay 旧数据的重分配标签是 历史 value 头生成的,已经过时。 ### 分阶段收益 | 阶段 | 核心瓶颈 | 物化 D4 收益 | 性价比 | | --- | --- | --- | --- | | 冷启动期 | 标签全是噪声 | 8 份噪声平均,信噪比 +√8 | 差(每轮样本 ×8) | | 逃出冷启动后 | 闭环对称性破缺 | 打破偏置正反馈,消除盲点 | **极高** | 所以正确的姿势是:**没学会防守之前 Online D4(省钱熬双盲期), 学会防守之后必须物化 D4(强 AI 的关键)**。这个约束与 sims 数 无关——高 sims 管线标签干净后,同样会被闭环偏置卡在强 AI 门槛前。 ## 五、value 标签前缀重分配:防杀能力住在标签里 这是全项目最硬的一条结论,证据来自一次搜索预算完全倒挂的对抗测试: - 参考管线:约 2 万轮训练,对弈 **200 sims**——稳定防杀; - 新管线:6000 轮训练,对弈 **3600 sims**——反复失守。 18 倍搜索预算差距。修复前的新管线对强算杀对手呈现出两个不对称: ``` 对手的杀点落子之前:树里完全搜不到 10~20 步杀(3600 sims 如同不存在) 对手的杀点落子之后:立刻判断对面胜率 99%(一次前向就完成) ``` "下之后"只是模式识别(威胁已成型,CNN 一眼可见);"下之前"需要的 是前瞻推理,MCTS 能算深杀的唯一前提是 **value 头在杀路早期节点上 给出强烈负值信号,引导搜索分配模拟**。而嗅杀能力是训练标签教出来的。 ### 问题出在 value 标签的"半套重分配" 原管线只重分配了 policy 标签,value 标签仍用访问量加权树 Q: ``` 子节点 A:prior=0.7(正常回应),Q=+0.2,访问 7 次 子节点 B:prior=0.2(潜伏杀点),Q=+0.99,访问 3 次 访问量加权 Q:(7×0.2 + 3×0.99)/10 = 0.437 → 杀点信号被访问占比稀释,再被平庸回应平均掉 前缀 max 重分配:value ≈ 0.551,杀点权重 0.44,远超其 0.3 访问占比 → max 结构保证极端值不被平均掉 ``` 更尖锐的情况:杀点只被访问 1 次时(30 sims 常态),旧标签里它的 权重是 1/30 ≈ 3%,信号基本消失;前缀 max 里只要它 prior 靠前, 包含它的层级价值就**全额**等于它的极端价值。 修复方法:value 标签与 policy 标签从**同一个分层循环**产出——按 prior 降序逐层差分切分概率预算,每层的前缀 max 价值以同源权重累入 value 标签。数学上有 telescoping 恒等式保证权重和恰为已访问 prior 之和,标签是子节点取反 Q 的凸组合,恒在 [-1,1],与 tanh 输出域对齐。 为什么堆数据补不上这块?自对弈闭环会系统性饥饿这类样本:双方都 看不见长杀 → 树内 Q 没信号 → 对局在杀路成型前就结束了 →"被正确 标注的潜伏威胁"样本极其稀疏 → 模型更看不见。与 D4 闭环偏置同构: **数据生成端缺失的东西,训练端技巧补不齐**。前缀 max 有效恰恰是 因为它不需要额外数据——它把树里已经存在但被埋没的信息以正确权重 暴露出来。 教训:**3600 sims 防不住的,36000 也防不住**——搜索预算由 policy 先验驱动分配,杀点先验低的前提下,堆预算是无效堆砌。 ## 六、学习率:一次退化的教训 run_2 曾采用"余弦下降 + 谷底停留 + arena 驱动跳回"的跨轮 LR 状态机, 结果是:前 324 轮 9 次晋升后,LR 长期压在谷底 lr_min=1e-5 长达 460 轮,期间 arena 对 champion 胜率 45/49/39/50/51%(含明显连败), 棋力巅峰停在前 300 轮。 根因:**跨轮持久优化器 + 谷底低 LR = Adam 动量长期累积 + LR 过低, 双重退化**。 最终方案(nn_012)极其朴素: ```python # 每一轮训练(每次调用)都重建优化器与调度器 optimizer = optim.Adam(model.parameters(), lr=1e-4) # 每轮回 1e-4 scheduler = ReduceLROnPlateau(optimizer, mode='min', patience=2, factor=0.5) # 每个 epoch 用当轮验证损失 val_total = 2*val_value + val_policy step 一次 ``` 优化器每轮重建带来三个性质:LR 每轮回到 1e-4、Adam 动量不跨轮累积、 scheduler 每轮重置。与旧方案的本质区别:旧方案在**固定评估集**上做 跨轮调度(锚定 base,结构上跟踪不了进步);新方案在**当轮新鲜自对弈 验证集**上做轮内调度(3 个 epoch 内动态下调)。 另外一个相关教训:固定评估集 loss 与模型进步是结构性脱钩的——模型 变强后会偏离 base 的着法偏好,考卷 loss 反而上升。它可以留着看趋势, 但永远不能驱动 LR 调度和早停。 ## 七、工程优化速览 消费级显卡上跑通这套管线,工程优化占了一半功劳: - **C++ MCTS 核心**(pybind11):树操作加速 33.9 倍,端到端 2.18 倍; - **批量叶子推理**(infer_batch_size=16):30 sims 树浅,批 64 会 覆盖整棵树导致 Q 反馈进不了访问分布; - **bf16 autocast 训练 + channels_last**:batch 2048 下 3.64 倍; - **fp16 + channels_last 推理**:forward 2.49 倍; - **4 worker 并行自对弈**:~20 分钟/100 局训练轮(优化前配置下)。 ## 八、最终成果与已知短板 最终模型(models/run_6/950.pth)对战 NNUE 引擎 rapfi 的实测: - **先手执黑**:基本 100% 胜率; - **后手执白与平衡开局**:表现不佳。 短板的原因很清晰:自对弈管线的数据分布由模型自己决定,后手防守 局面与人为构造的平衡开局不在自然分布内。补强需要另做这两项的 专项训练——这本质上是又一处"数据生成端缺失"问题。 另一个值得记录的观察:修复 value 标签后,自对弈能稳定下到残局, run_5 的 6300 局里出现了 2 局和棋——终局覆盖和防守能力的改善 会直接反映在对局长尾上。 ## 九、可迁移的结论 如果把整个项目压缩成几句话: 1. **标签机制 > sims 数,总轮次 > 单轮精度。** 低 sims 的标签噪声 靠重分配机制补,高轮次的学习信号没有任何替代品; 2. **双盲期靠穿越,不靠解决。** 盯住对局长度、arena 区分度、 val value 三个指标;最像失败的深平台往往是逃逸前夜; 3. **自对弈闭环里,数据生成端缺的东西训练端补不齐。** 方位偏置 要靠物化 D4 硬约束,潜伏威胁要靠 value 标签前缀 max,后手与 平衡开局要靠专项数据——三条同构; 4. **防杀能力住在标签里,不住在搜索里。** 搜索预算由先验驱动, 先验看不见的,预算堆多少都是无效堆砌; 5. **跨轮持久的低 LR 是退化的隐形杀手。** 每轮重建优化器 + 轮内调度,朴素但有效。 ## 参考与深入阅读 - 项目仓库:<https://github.com/YorickFin/GomokuCnn> - 参考管线:[zhoukangyang233/Gomoku](https://github.com/zhoukangyang233/Gomoku)(nn_012) - 对抗测试对手:[dhbloo/rapfi](https://github.com/dhbloo/rapfi)(NNUE) 本文每个主题在项目仓库 docs 目录下都有一篇完整的机制分析, 含全部实测数据、推导过程与代码落位: - [低 sims 下棋类游戏强化学习如何逃出双盲期](https://github.com/YorickFin/GomokuCnn/blob/main/docs/低%20sims%20下棋类游戏强化学习如何逃出双盲期.md) - [自对弈强化学习成为强 AI 的硬约束——物化 D4 对称增强的不可替代性](https://github.com/YorickFin/GomokuCnn/blob/main/docs/自对弈强化学习成为强%20AI%20的硬约束——物化%20D4%20对称增强的不可替代性.md) - [自对弈强化学习的潜伏威胁盲区——value 标签前缀重分配](https://github.com/YorickFin/GomokuCnn/blob/main/docs/自对弈强化学习的潜伏威胁盲区——value%20标签前缀重分配.md)

REA | 爆火GitHub 17万星标,MCP服务端,AI Agent自动逆向二进制程序

## 前言 近期GitHub开源项目REA(Reverse Engineer Anything)短时间斩获17万星标,登顶GitHub Trending。它作为MCP服务端,把Ghidra、IDA、Hopper等逆向工具封装成AI Agent可调用接口,让Cursor、Claude Code等AI智能体自动完成二进制逆向分析。工具能力强大,但存在明确法律边界,仅可用于授权范围内的安全研究。 ![GitHub开源项目REA获星标211.jpeg](https://pic.code-nav.cn/post_picture/1944355748262088705/UWL0gpF0xvLWp6HD.webp) ## GitHub爆火REA:17万星标的AI逆向工具,大模型自动分析二进制 最近GitHub一个逆向工程开源项目REA(Reverse Engineer Anything,逆向一切)快速出圈,短时间收获17万星标,成为安全与AI Agent圈讨论热点。很多人误以为它是一款全新反编译引擎,实际上REA更像一座**桥梁**,打通大模型与传统逆向工具。 项目仓库:`morluto/rea`,MIT协议,2026年4月创建,10月迎来爆发式增长。核心定位是**MCP服务端**,将Ghidra、Hopper、IDA等经典逆向工具封装成标准化工具能力,直接对接Cursor、Claude Code这类AI编码Agent。使用者无需手动在逆向软件中点来点去,可让AI自主规划并执行逆向任务。 ### ✨ 核心能力 REA无需源码,支持17类文件逆向:原生二进制、APK、JS/Electron程序、HAR抓包文件等。 整套自动化逆向流程: 1. 自动调用底层逆向引擎,执行静态反编译,提取伪代码、函数、字符串与调用关系; 2. 支持动态行为观测、内存读取、IPC和网络协议追踪; 3. 由大模型整合信息,输出带证据的分析结论,甚至生成参考复刻代码,并主动标注分析短板。 分工逻辑很清晰:**AI负责思考、规划、解读伪代码;Ghidra/IDA负责底层二进制拆解**,两者配合完成逆向。 ### 🛠️ 快速上手安装 **前置依赖** Node.js 22.19+/24.11+/26+;底层逆向引擎三选一(免费推荐Ghidra;Hopper、IDA为商业软件,需自备授权);APK分析额外安装JDK+JADX。 > REA不会自动下载Ghidra/IDA,需要本地提前安装并配置环境变量。 体验推荐用npx直接运行,无需全局安装: ```bash # 引导安装,自动注册至Cursor / Claude Code npx rea-agents setup # 环境自检 npx -y @morluto/rea doctor # 启动MCP服务,供AI Agent连接 npx -y @morluto/rea mcp ``` 全局长期使用: ```bash npm install --global rea-agents rea setup rea doctor rea mcp ``` CLI直接分析文件(不调用AI): ```bash rea decompile /path/to/your_binary 0x100003f20 rea analyze /path/to/target.apk ``` 安装完成重启AI Agent,MCP自动注册,即可直接对话调用REA。 ### ⚖️ 重点:合法使用边界 依据《计算机软件保护条例》第十七条:软件合法复制品所有人,**为学习研究软件设计思想原理,可实施逆向**。但场景有严格限制。 ✅ 合法使用场景 - 自己拥有完整版权的程序,用于漏洞自查、逻辑审计; - 获得著作权人书面授权,开展安全审计、兼容性开发; - 恶意样本威胁情报、安全研究(禁止传播恶意程序); - 软件互操作、开发兼容插件; - CTF竞赛、教学靶机学习; - 开源二进制审计,校验编译产物和源码一致性。 ❌ 严禁使用场景 - 逆向商业软件破解激活、DRM,制作注册机、盗版; - 未经许可提取算法逻辑直接商用; - 逆向竞品游戏、App用于不正当竞争; - 利用逆向成果实施入侵、爬虫、服务器攻击; - 逆向带有NDA保密协议的软件; - 公开发布逆向得到的密钥、核心算法。 ### ⚠️ 风险与局限 1. **AI幻觉**:REA只提取伪代码,AI的分析结论会存在幻觉,**所有结果必须人工复核**。加壳、高强度混淆程序,分析效果会大幅下降。 2. **数据安全**:二进制、反编译内容会进入大模型上下文,**涉密内部文件禁止接入云端大模型**,只能搭配本地大模型使用。 3. **商业工具版权**:Hopper、IDA是付费软件,REA不提供授权,使用盗版逆向工具本身违规。 ### 📌 小结 REA最大价值是**降低逆向工程的操作门槛**,把大量重复手动逆向操作交给AI Agent自动调度。对安全研究员、逆向学习者而言是高效辅助工具。 但工具本身没有善恶,门槛降低同时也带来版权滥用风险。使用REA务必守住法律底线,仅在授权场景内使用,同时不能完全信任AI输出,人工复核必不可少。 > 项目地址:[https://github.com/morluto/rea](https://github.com/morluto/rea)

AI 桌面换装视频火了,1 分钟教你复刻!傻子可懂

大家好,我是程序员鱼皮。 最近 AI 桌面换装视频突然爆火,Twitter 上随便一条就是百万播放。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/xGiiMQXeahdTfmsC.jpg) 视频里一个虚拟美女坐在电脑桌面上,你让她换什么衣服她就换什么衣服,还能对话。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/aFjmJ7MsUl3TANOv.jpg) 果然,歰歰是第一生产力啊! 为了锻炼自己的 AI 视频制作技术,而不是出于兴趣,我也搞了一条试试。 ![我的成品](https://pic.code-nav.cn/post_picture/1601072287388278786/ayqgVz31UiplVIIO.jpg) 怎么样,是不是精准复刻了原版的风格? 三套造型切换,有对白声音、有特效字幕,全程模拟电脑桌面录屏的风格,30 秒一镜到底。 ![三套造型对比](https://pic.code-nav.cn/post_picture/1601072287388278786/njgNdwYLbJgmIcGP.jpg) 这是怎么做到的呢? 其实非常简单! 给我 1 分钟的时间,我来教你如何复刻,保证一学就会。 ## 1、准备工作 首先,我用到的是知名傻狗 `程序员鱼皮` 开源的「AI 桌面换装视频」生成技能。 > 开源指路:https://github.com/liyupi/ai-desktop-outfit-video ![](https://pic.code-nav.cn/post_picture/1601072287388278786/50hRmrhTYlFHBKz7.jpg) 这个技能的玩法很简单。你跟 AI 说一句话描述需求,AI 就会帮你自动生成一段完整的 AI 视频生成提示词。然后复制到任意 AI 视频工具里就能出片,不用自己写又臭又长的提示词。 ## 2、让 AI 帮你写提示词 演示一下,随便打开一个 AI 工具(比如 Cursor),使用技能,然后跟 AI 说: ```markdown 我想创作 30 秒的视频 ``` AI 就会像产品经理一样主动询问你的需求: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/gtXk3LOUGSVeZkRc.jpg) AI 会先问你主角是谁。默认是中国古典鹅蛋脸美人,你如果有自己喜欢的角色,可以直接描述,也可以上传一张参考图。 比如我先用 ChatGPT 生成了一张参考图,并提供给 AI: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/uR1uZSBGJ6KFIzvI.jpg) 然后 AI 会问你视频的场景。默认是深蓝灰色调的房间,我跟 AI 说把场景改成安静的小酒吧。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/G15wugMPJFTTi6fo.jpg) 接着 AI 会问三套换装造型是什么。我就随便说了水手服、洛丽塔、白领制服,跟个人爱好完全无关: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/8cvRhE95Pl6kjmNj.jpg) 然后 AI 还会问你视频里的台词。如果你不喜欢默认的台词,可以让 AI 帮你修改为适配你需求的文案。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/OtxSHxZ22hFKCKxn.jpg) 最后 AI 会问你尺度档位,软、中、硬三档可选。 我知道你们想选什么,唉…… ![](https://pic.code-nav.cn/post_picture/1601072287388278786/K6sI23kLDuT4JuUP.jpg) 六个问题问完,AI 就直接输出了一段完整的提示词。在这个技能的开源项目中有完整版的参考提示词。 ## 3、复制提示词,生成视频 接下来只需要把这段提示词复制出来,丢到任意一个 AI 视频生成工具里就行了。即梦、豆包、MiniMax 等等都可以,只要支持 Seedance 模型或者同级别的视频模型就行。 生成之前,有几个注意事项: 1. 比例选 16:9,因为是模拟电脑桌面 2. 时长选 30 秒(Seedance 2.5 支持 30 秒) 3. 使用默认的全能参考模式就好,不要开任何运镜预设 建议先用 720p 来试,1080p 的积分消耗真的太贵了!等效果满意了再上高清。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/A7t53JaScQn7CVV3.jpg) 然后等 AI 生成完,一段桌面换装大作就出来了。 ![换装效果](https://pic.code-nav.cn/post_picture/1601072287388278786/pGCZfCTDbWj6XQgE.jpg) ![](https://pic.code-nav.cn/post_picture/1601072287388278786/NaECbwMVjkrnLrXB.jpg) ## 4、直接调 API 生成 除了手动复制提示词之外,这个技能还支持直接调用 Seedance 2.5 的 API 来生成视频。 > 当然,你换成其他 AI 视频生成模型的 API 也是 OK 的。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/70VjWyyULRE7dyRm.jpg) 只需要去火山引擎官网获取一个 API Key,提供给 AI 就行了。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/6e8P9jEo7crtuoSx.jpg) AI 会直接帮你调用 API 生成视频并下载到本地,全程不用你自己打开任何 AI 视频生成工具。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/bjkyvjegUVmUgrQB.jpg) 生成的效果也是非常理想的。但是由于生成的视频过于劲爆,这里就不给大家完整播放了。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/YUaGHdmpddgrxKNG.jpg) 怎么样,是不是很简单? 有了这个技能,你可以自定义女主 / 男主,自定义场景、台词、造型。一个爆款视频就这样被轻轻松松复刻出来了! ## 5、核心原理 那问题来了,这个技能是怎么做出来的呢? 其实也很简单。 我直接找到爆火的原版视频,丢给 AI,让它帮我逐帧分析视频的画面和声音,并生成简单直接的提示词。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/k3NLfCxOLy6dGZwq.jpg) 注意,这段提示词中,我用到了 `/grill-me` 技能,AI 如果没充分理解需求,就会主动找我人工确认。 看看,这是 AI 逐帧分析的画面: ![逐帧分析](https://pic.code-nav.cn/post_picture/1601072287388278786/C1mDvgQMKwRI56jW.jpg) AI 帮我拆出来了整条视频最核心的「机关」。比如镜头全程一动不动,人物站起来的时候镜头不跟,只拍到腰部以下,看起来就像真的是电脑桌面壁纸。还有每次换装前都要留一秒钟的空沙发镜头,避免衣服在身上直接变形。 ![机位机关四格](https://pic.code-nav.cn/post_picture/1601072287388278786/2o0KPv4x7IQPXEJK.jpg) AI 拆解明白之后,帮我生成了一段简洁的提示词模板: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/534s5SJtVzJb0A6J.jpg) 然后我直接把提示词拿到即梦里测试。结果非常顺利,一把就出了满意的效果。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/u3bvVeyeLPMjQ9ax.jpg) 测试没问题之后,我就让 AI 把整个工作流封装成了一个可复用的 Skill 技能。AI 从提问流程、提示词模板到 API 调用脚本,全部自动生成好了。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/owfSl3FawitdYmAf.jpg) 最后我直接让 AI 帮我把这个技能开源到 GitHub 上,并且自动生成了一个有图有文、甚至有 GIF 动图演示的项目 README 文件。真的爽! ![](https://pic.code-nav.cn/post_picture/1601072287388278786/V3nIKXZtaKSFVMsK.jpg) 这也是得益于现在的 AI 模型 Agent 能力和视觉理解能力越来越强了。整个过程从拆片、写提示词、测试、封装技能到开源发布,全程几乎都是 AI 在干活,我只需要做决策和验收。 ## 最后哔哔 看到这儿你应该能 get 到本期精髓了。下次你在网上看到某个爆款视频,完全可以用同样的方法让 AI 帮你逐帧拆解、生成提示词、封装成可复用的技能。不光是换装,AI 互动壁纸、桌面宠物、动态直播间背景,都是一个思路。 这篇文章我也会收录到我的开源教程 [《AI 编程零基础入门教程》](https://ai.codefather.cn/vibe) 中。上千张图、几十万字,从 0 开始带你学会 AI 编程,做出自己的产品、跑通变现全流程,感兴趣的同学可以看看。 > 开源指路:[https://github.com/liyupi/ai-guide](https://github.com/liyupi/ai-guide) ![鱼皮的 AI 编程教程](https://pic.code-nav.cn/post_picture/1601072287388278786/GBkhbrR5Arr69U8W.jpg) 我是鱼皮,持续分享 AI 编程干货。觉得有用的话记得点赞收藏和关注~

AI Coding 已经改变开发方式了,程序员到底还该学什么?

# 关于 AI 应用和现在程序员就业的一些看法 前段时间有朋友问我: **“现在 AI 这么火,要不要从 Java 转 AI 应用?”** 我当时第一反应是,这两个东西其实就不应该放在一起比较。 有点像几年前问: **“我要不要从 Java 转电商?”** AI 应用是一个方向,Java 是后端的一门语言,本身就不是一个维度的东西。 借这个问题,说一下我目前对 AI 应用、技术栈和程序员就业的一些看法。 都是这两年工作下来的一些个人感受,略带主观。 --- ### 1. 单一技术栈已经不太够用了 国内 Java 的存量盘依旧很大,这个短时间内不会有什么变化。 但我觉得现在只会 Java,或者把自己完全定义成一个 Java 工程师,已经不太够了。 目前后端我比较建议接触的还是: **Java、Go、Python。** Java 主要还是国内大量存量项目、企业级应用和现有团队技术栈。以后很多传统业务做 AI 赋能,也不可能把原来的东西全部推倒重来。 Go 在高并发、云原生这些场景本身就有优势。现在很多 AI 应用又恰好涉及大量并发、流式输出和长连接,用 Go 也比较合适。 Python 就不用说了。 AI 应用继续往下走,不管是 PyTorch、训练、推理还是 AI Infra,基本都绕不开。 当然我不是说三门语言都要学到一样深。 **至少有一门是自己的主语言,真正熟练,其他的能用、能看、能改就行。** 现在有 AI 以后,第二门、第三门语言的学习成本其实已经低很多了。 前端也是一样。 以前如果有人问我国内学 Vue 还是 React,我可能会更建议 Vue。 现在我会更建议 **React + TypeScript**。 主要还是国外生态更大,而且现在 AI Coding 对 React/TS 的支持也更好。 当然结合国内就业,Vue 最好还是得会。 所以我现在对技术栈的看法比较简单: **主技术栈一定要有,但没必要再给自己贴死某一门语言的标签。** --- ### 2. 一定要高强度使用 AI 这个是我目前最确定的一点。 AI Coding 已经不是“以后会不会普及”的问题了。 已经发生了。 我们目前甚至有一个真实的企业项目,基本就是纯 Vibe Coding 驱动开发。 而且不是 Demo。 项目本身是一个比较复杂的 AI 应用平台,涉及多租户、异步任务、分布式并发控制、实时通信、向量检索、全文检索、消息网关、服务监控和 CI/CD 等。 AI 这块也不只是调一下大模型 API,还涉及 RAG、多模态、ASR、视觉检索,以及 PyTorch、CUDA 相关的推理服务。 并且整个架构从一开始就是按照服务拆分、异步化和后续横向扩展去设计的。 说这些不是想证明这个项目有多复杂。 主要是想说,**这是一个有真实工程复杂度、需要长期维护的企业项目,而且大量代码确实是 AI 完成的。** 到目前为止,也没有出现所谓“Vibe Coding 到最后完全没法维护”的情况。 所以我现在觉得: **Vibe Coding 本身不是问题,问题是使用 AI 的人有没有工程能力。** 前两天我负责对接一个渠道商做兼容性的 RAD 开发。 方案、编码、测试基本全部由 AI 完成。 大概半天。 这个事情如果按照以前的开发方式,我估计至少两三周。 所以对于 AI,我没什么“要不要用”的建议。 **一定要用,而且要高强度地用。** 方案、编码、测试、Debug、Review、CI/CD,能用就用。 这已经是生产力问题了。 再说句题外话。 我现在觉得 AI 已经不只是开发工具了。 生活里很多需要搜索信息、学习、分析、做决策的事情,我都会先问一下 AI。 不一定听它的,但至少多一个信息源,多一个思考角度。 开发就更不用说了。 现在越来越多公司已经把 AI Coding 当成正常的研发工具,AI 带来的提效也是实打实的。 所以如果你长期处在一些接触不到 AI 的开发环境里,比如部分外包、纯内网、对日或者 ToG 项目,我觉得需要注意一个问题: **你损失的不只是 AI 帮你写代码的那点效率,而是在慢慢错过一套新的研发方式。** 短期当然没什么。 但如果三年、五年一直处在这种环境里,而外面的工程师已经习惯用 AI 做方案、编码、测试、Review、Debug,甚至完成整个研发流程,那两边积累下来的工作方式和效率差距会越来越大。 所以如果工作环境确实用不了 AI,我反而更建议自己在工作之外保持使用。 **可以不用 AI 写公司的代码,但不要让自己长期脱离 AI。** 这也是为什么我一直强调高强度使用 AI。 不是因为现在 AI 火。 而是我觉得,**会不会把 AI 真正融入自己的工作流,很可能会逐渐变成工程师的基础能力。** --- ### 3. AI 越强,基本功反而越重要 这一点我最近感受也比较深。 24 年甚至更早的时候,我们是真的会为了一个环境折腾半天。 碰到一些难调的 Bug,就自己看日志、翻源码、抓包、排调用链,一点一点 Debug。 现在很多问题直接扔给 AI,可能几分钟就解决了。 所以有时候我反而觉得,26 年才开始学编程的人可能更难。 不是因为工具差,恰恰是因为**工具太好了。** 很多以前必须自己经历的过程,现在可以直接跳过去。但那些过程其实会慢慢形成一些工程直觉。 所以如果你是新人,问我要不要打好基础,我的答案是: **非常有必要。** 数据结构、操作系统这些基础该学还是得学。 同时至少选一门自己的主开发语言,真正学到熟练。不是会写几个接口、会调几个框架就叫熟练,而是真的拿它做过项目、调过问题,对它的运行机制和生态有足够的理解。 因为 AI 可以写代码,也可以 Debug。 **但 AI 给你的东西到底对不对,最后还是需要你判断。** 事务、并发、幂等、异常、性能、可观测性,包括系统出了问题应该从哪里开始查,这些东西不会因为 AI 出现就消失。 反而是 AI 把编码本身变得越来越便宜以后,**这些东西才是真正能拉开工程师深度的地方。** 以前没有 AI 的时候,大家卷框架、卷 API、卷谁记得多,我觉得没什么问题,因为当时这些东西确实直接影响开发效率。 但现在很多框架层面的东西,AI 比我们记得更全,写得也更快。 所以我现在反而更建议新人把时间往基础上放一点。 当然,这个建议也不只是给新人。 **包括我自己,现在也在重新花更多精力,更专业、更体系化地去学这些基础。** 以前很多东西可能是工作里遇到了再学,或者知道怎么用就够了。但现在有了 AI,我反而觉得可以把以前花在记框架、记 API 上的时间拿回来,真正去理解一些更底层、更长期的东西。 有几本书我一直比较推荐: 1. Clean Code 2. The Clean Coder 3. Understanding the Linux Kernel 4. Head First Design Patterns 5. Designing Data-Intensive Applications 当然,书只是一个载体。 我真正想表达的是: **AI 时代不是不需要基本功了,而是以前很多“会用框架”的价值正在被 AI 吃掉,基础和工程判断的价值反而更高了。** AI 可以替你少走很多弯路,但有些路你最好真的走过。 所以我现在越来越觉得,AI 真正放大的不是编码能力。 **是判断能力。** --- ### 4. AI 应用可以转,但现在已经不是做几个 Demo 就好找工作的阶段了 我自己其实算比较早转 AI 应用的。 **25 年 10 月,我就从传统开发转到 AI 赛道了。** 所以如果提前半年或者一年有人问我: “会 RAG、做几个 Agent 项目,能不能转 AI 应用?” 我会觉得问题不大。 但现在我的看法已经变了。 不是 AI 应用不值得做,恰恰是因为**这个方向太火了,进来的人太多了。** 现在很多简历翻来覆去都是: RAG 知识库、AI 客服、PDF 问答、LangChain、Embedding、Milvus、Rerank…… 这些东西当然要会,我自己也在做。 但问题是,**会这些东西的人已经太多了。** 更现实一点说,现在如果只是拿几个这种项目去找 AI 应用的工作,我觉得已经没有以前那么容易了。 而且关于项目这件事,我可以说得直接一点: **现在国内网上能看到的大量所谓 AI 应用项目,我觉得本质上还是玩具项目。** 换一个模型、接一个知识库、套一个 Agent 框架,最后做个聊天页面。 能跑。 但离真正的企业项目还很远。 所以如果现在还准备转 AI 应用,我更建议去看: **真实业务、真实客户、真实场景。** 我前公司是做 AI + 教育的。 国内这一块真正落地的东西,无非也是 AI 答疑、AI 批改、OCR/VLM、个性化学习这些。 AI 答疑底层一样可能是 RAG。 区别只是它最后真的要面对学生、老师和学校,真的要解决问题。 所以不是不要学 RAG,也不是不要学 Agent。 **这些东西该学还是得学,只是别再把“会 RAG、会调 Agent”本身当成竞争力了。** --- ### 5. 除了业务深度,还需要一点技术纵深 上面说的是业务。 但只解决“项目别做成 Demo”这一个问题,我觉得还不够。 现在 AI Application / Agent 这个方向已经很热了,而且这个趋势越来越明显。 当大量工程师都开始做 Agent、RAG、工作流、MCP 以后,应用层的技术差异一定会越来越小。 所以除了去做真实业务以外,我现在还有另外一个建议: **适当往下走,给自己增加一点技术纵深。** 这也是我自己接下来准备深入 AI Infra 的原因。 我目前比较看好: **后端 / 分布式 + AI Application / Agent + AI Infra。** 不是放弃应用层。 恰恰相反,我觉得上层的业务经验很重要,只是在这个基础上继续往模型推理和基础设施走一点。 当然,AI Infra 也别最后学成下一个 RAG。 不是会 Docker、K8s、vLLM,再部署一下 CUDA 环境,就叫 AI Infra。 继续往下还有 Inference Serving、Batching、Scheduling、KV Cache、GPU Memory、PyTorch、CUDA、NCCL、GPU Cluster,以及监控、扩缩容、容错、成本这些东西。 这一块我自己也还在继续学,所以不展开,也不装懂。 我现在的想法其实很简单: **应用层越来越拥挤,就不要只在应用层继续横向堆东西。** 业务上往真实场景走,技术上往深处走。 至少目前,我自己准备这么走。 --- 最后其实就两个建议。 **1. 高强度使用 AI,别和生产力过不去。** 不要只拿 AI 补两行代码。 方案、编码、测试、Debug、Review、CI/CD,能用就用。 **2. 如果准备转 AI,别再堆玩具 Demo。** 去看真实业务,解决真实问题,再给自己找一个方向往深了走。 至于 Java、Go、Python、React、Vue,该用什么就用什么。 **主技术栈要有,工程基本功别丢,AI 狠狠用。** 差不多就这些。 听不听随意。

刚刚 Opus 5.5 和 GPT-6 Sol 同时发布,首发实测来啦!结果让我很意外

刚刚,Anthropic 发布了 Claude Opus 5.5,号称在大多数任务上都能打平自家最强的 Fable 5.1,运行成本却比上一代 Opus 5 还低 40%! ![](https://pic.code-nav.cn/post_picture/1601072287388278786/52hV2kDEf6jBhe1c.jpg) TNND,上周 A ÷ 不是还在呼吁 AI 前沿发展要 **放缓节奏** 么? 明明距离上次 Claude Opus 5 的发布才过了 2 个月,官方还真有脸说「这是呼吁放缓之后发布的第一个模型」?? 意思是如果不放缓,Claude Opus 55 都出来了??? ![](https://pic.code-nav.cn/post_picture/1601072287388278786/AiWNQVODM959wOmc.jpg) 然后不到 2 小时,OpenAI 也发布了 GPT-6 Sol,号称继承了 GPT-6 Astra 的大部分优势,API 价格却比 GPT-5.6 直接砍了一半! 每百万 token 输入 2 刀、输出 10 刀,正好是 Opus 5.5 的一半。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/haztf9OCDsJPhSd4.jpg) 历史似曾相识,两大顶级 AI 公司再次上演中门对狙…… ![](https://pic.code-nav.cn/post_picture/1601072287388278786/nDwxsbSW1CRksL32.jpg) 这次我已经不想花时间科普跑分了,直接放一张我《AI 大模型世界网站》的对比图,大家自己看着玩就好: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/7IUJdO2iQzHBhRnf.jpg) 简单来说,Opus 5.5 的智能程度直接冲到了第一名,GPT-6 Sol 只比上一代 GPT-5.6 Sol 多了 1 分。 要看大模型的效果,别看跑分,看鱼皮实测就得了~ ![](https://pic.code-nav.cn/post_picture/1601072287388278786/ESabfgswyqJkI8mw.jpg) 这次我准备了 5 个案例,Claude Opus 5.5 在 Cursor 里跑,GPT-6 Sol 在 Codex 里跑,推理强度都开到 high,两边使用相同的提示词,全程我不会人工干预。 1. 用 SVG 画熊猫骑车送外卖 2. 300 字科普大模型 3. 3D 重庆城市生成器 4. 操作电脑画 Q 版鲸鱼娘 5. 复刻 Cursor ## 1、SVG 画熊猫骑车 AI 圈有个经典测试叫「鹈鹕骑自行车」,是开发者 Simon Willison 发明的。他让 AI 直接写 SVG 代码画一只骑自行车的鹈鹕,不许看效果,车架怎么连、脚怎么踩踏板,全靠 AI 在脑子里算坐标。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/GsDnWRoFwmFMjgPR.jpg) 不过这道题实在太出名了,Simon 这次贴出来的推理过程里,Opus 5.5 开口第一句就是「这是一个经典的测试请求」,AI 一眼就认出来了…… 所以我换了个题目,让 AI 画一只骑着自行车送外卖的大熊猫,同样只许写代码,不许打开看效果。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/355p37FtF1lrFC22.jpg) 两个模型都在 3 分钟内交卷了,左边是 Opus 5.5,右边是 GPT-6 Sol: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/c8YKR12TgW6xDOLJ.jpg) Opus 5.5 这张的完成度明显更高。牙盘、链条、脚踏板都画出来了,熊猫的脚踩在踏板上,手握着车把,车把上还挂了一杯奶茶。 它还自己加了车灯、「叮咚~外卖到啦!」的对话气泡和城市背景。而且这张 SVG 是会动的,轮子在转,链条也在走! ![](https://pic.code-nav.cn/post_picture/1601072287388278786/pkOwwjh3kpUum1m8.jpg) 再看看右边,这什么玩意?!我真的绷不住了…… ![](https://pic.code-nav.cn/post_picture/1601072287388278786/QkLqj83o0ZnpS7Gm.jpg) 这一轮 Opus 5.5 完胜。 ## 2、300 字科普文案 这次 Anthropic 官方特别强调 **Opus 5.5 写东西更像人话**,我还是有点期待的。 那接下来,让两个 AI 比一比写作能力和文字功底。 我让两个模型用 300 字左右,给一个完全不懂技术的朋友讲清楚什么是大语言模型,要求说人话、不要书面腔,也不许加标题和列表。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/vr1Pxea2mMzDQcpQ.jpg) 两篇我先隐去模型名,你可以猜猜哪篇是 Opus 5.5 写的? **A 篇** > 你可以把大语言模型想成一个读过海量文字、很会接话的助手。它看过书、网页和各种对话,从中学会了人们通常怎么提问、怎么回答,哪些话放在一起比较合理。你发给它一句话,它就根据你前面说的内容,一点点组织出回复。所以它能帮你解释问题、改写邮件、想点子,甚至陪你练习外语。 > > 不过,它不是脑子里装着一本随时翻开的百科全书,也不像人一样亲身经历过这些事。它说得顺,不代表一定说得对;有时会把不确定的事讲得很肯定,甚至编出听起来像真的细节。遇到看病、花钱、签合同这类重要的事,最好再找可靠的人或资料核实。简单说,它像一个反应很快的文字搭档:能帮你起步、理清思路,但最后拍板的还是你。 **B 篇** > 你平时用的 ChatGPT、豆包这些能陪你聊天的 AI,背后靠的就是大语言模型,英文简称 LLM。 > > 你可以把它想象成一个特别爱读书的学生。它把网上能找到的文章、书和聊天记录几乎都读了一遍,读得多了,就慢慢摸清了人说话的规律,知道一句话说到这儿,后面最可能接什么。 > > 所以你问它问题的时候,它其实是在一个字一个字地往下接,每一步都挑最顺、最合理的那个字。听起来挺简单对吧?但因为它读过的东西实在太多了,接出来的话不光通顺,还经常真有道理,能帮你写文案、做翻译、出主意,甚至还能写代码。 > > 不过它也有个毛病,就是容易不懂装懂。它追求的是把话说得像那么回事,并不保证每句都对,所以碰到它不知道的事情,它也可能一本正经地瞎编。你用它的时候,重要的信息最好自己再核实一下。 答案是 B 篇出自 Opus 5.5,A 篇出自 GPT-6 Sol,你猜对了吗? ![](https://pic.code-nav.cn/post_picture/1601072287388278786/5fknAycDYNesrTdk.jpg) 我个人更喜欢 Opus 5.5 这篇。它先从你天天在用的 ChatGPT、豆包说起,再拿「特别爱读书的学生」打比方,然后一句「一个字一个字地往下接」就把大模型的原理讲明白了。中间还穿插了一句「听起来挺简单对吧?」,读起来真的像朋友在跟你聊天。 GPT-6 Sol 这篇也不差,最后提醒大家看病、花钱、签合同这类事要再核实,这个例子举得很接地气。但是两段话都写得太长了,而且它只说大模型会「一点点组织出回复」,怎么组织的却没讲清楚。 有意思的是,这道题 Opus 5.5 只用了 15 秒就写完了,GPT-6 Sol 反倒花了 52 秒。这也是整场测试里 Opus 5.5 唯一快过 GPT-6 Sol 的一次。 ## 3、3D 城市生成器 前面两道都是小题,接下来上点强度,让 AI 真刀真枪地写一个 3D 项目。 这个案例是之前我测 GPT-6 Astra 时用过的 3D 程序化城市生成器。这次我只留了重庆一座城市,要求层叠立交、轻轨穿楼、依山而建的高差感这 3 样必须做出来。至于编辑器怎么布局、要有哪些参数,我一个字都没写,全部让 AI 自己去参考官方的设计。 另外我还要求 AI 做完之后自己打开网页验证效果,不满意就自己接着改,直到满意再交付。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/jDZBd5qkaqH38sMw.jpg) ### Claude Opus 5.5 Opus 5.5 在这道题上磨了将近一个半小时,中间自己截图检查、来回修了 7 轮左右才交卷,严重影响了我这篇文章的发布时间! 但是当我打开主页时,我直接「卧槽」了! ![](https://pic.code-nav.cn/post_picture/1601072287388278786/MYwatISDkmqPtFNa.jpg) 夜里的渝中半岛被两条江环抱着,每栋楼的窗户都一格一格亮着灯,跨江大桥上还挂着灯带。 这个细腻度,这个质感,我感觉一切的等待都是值得的! ![](https://pic.code-nav.cn/post_picture/1601072287388278786/EXHzv1hHlQLonYhX.jpg) 鼠标拖一拖就能旋转、平移、缩放,按数字键 1 到 6 还能切换视角。比如切换到俯视图,半岛的轮廓、江面和盘成一团的立交都看得一清二楚: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/K7zlOJzU47qLQjnF.jpg) 最让我惊喜的是细节。明明有几百栋大楼,放大之后你竟然能看到「李子坝站」的中文站牌,还有一列轻轨正从楼中间穿过去! ![](https://pic.code-nav.cn/post_picture/1601072287388278786/i0uVivKEJEsWcbp8.jpg) 再把镜头推到立交桥上,一圈套一圈的匝道在空中叠了好几层,每条匝道上都有车辆在流动,感觉把重庆的层叠立交还原的栩栩如生(至少我是感受到这个立交的复杂度了…… ![](https://pic.code-nav.cn/post_picture/1601072287388278786/3zGG1kXx4DtZHkWL.jpg) Opus 5.5 甚至还专门做了一个「黄桷湾立交」的场景预设,备注写的是「5 层 15 匝道,导航也迷路」,AI 这个梗玩得是真懂重庆啊! 整体来说,山、水、桥都刻画得非常细腻。右侧面板还能灵活调整地貌、山体高度、台地化程度和江面宽度。 我顺手切换到「赛博 8D」预设,立交直接拉满到 6 层 27 条匝道,霓虹灯一开,赛博山城的味道就出来了: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/POV766rrUdTkU4K7.jpg) 这个效果我直接给到夯! ### GPT-6 Sol 再来看看 GPT-6 Sol。它只用了 12 分钟就交卷了,速度是 Opus 5.5 的 7 倍。 但是,做出来的东西就很一般了…… 整个画面是一片灰绿色的低饱和配色,楼就是一个个方盒子,我相信大家一眼就能感受到和 Opus 5.5 的差距。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/14a6yyhpMXkTbjXt.jpg) 整体的建模比较简陋,而且问题还不少。 这…… 这是悬空城啊? ![](https://pic.code-nav.cn/post_picture/1601072287388278786/ZyK0AZt6rLeWFAkH.jpg) 咱就再看看刚才那个经典的李子坝轻轨穿楼,穿模问题就更明显了。车厢一头扎进了楼里,墙上却没有给轻轨留出通道…… ![](https://pic.code-nav.cn/post_picture/1601072287388278786/Yvnc0X1JvgMkaZjp.jpg) 它也支持俯视图,该有的功能也都有。但无论是 UI 效果,还是右侧菜单的丰富程度,Opus 5.5 都是降维打击。 GPT-6 Sol 的面板上只有 3 个预设和 6 个参数,Opus 5.5 光场景预设就有 6 个,参数更是有 7 组 30 多个。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/Ecbr0SjXJc6dh2uf.jpg) ## 4、操作电脑画图 城市生成器考的是写代码,接下来换个方向,考考 AI 操作电脑的能力。 前面熊猫骑车测试中,我是让 AI 闭着眼画画,这一轮让它们睁开眼睛画,而且得像人一样握着鼠标一笔一笔画。 一开始我想让 AI 操作专业的 PS 软件画图,但软件越复杂、变数就越多。于是我先让 AI 开发了一个简易画板网页,只有画笔、橡皮擦、油漆桶、直线、矩形、椭圆和吸管这几个基础工具,连文字工具都没有,气泡里的字也得一笔一笔手写。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/RgIp7LUUYLuT1NPr.jpg) 然后我给了一张 Q 版 DeepSeek 鲸鱼娘的参考图,让两个模型照着画出来: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/p7NifIVYJXlbNP7k.jpg) 提示词里我给 AI 定了一条规矩,就是只能用鼠标和键盘操作,不许写代码往画布上画。画板上的按钮怎么用、先画哪儿后画哪儿,我一句都没教,全部让 AI 自己摸索。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/m042t4bNGXetQk0m.jpg) Opus 5.5 是在 Cursor 自带的浏览器里画的,前后花了 1 小时 17 分钟,画出来是这样的: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/9WDcHIHMn6IW9ktw.jpg) 好家伙,怎么画成卷发了?? 头发是一坨一坨的圆球球拼起来的,连「好模型」三个字都是用圆点一个个点出来的…… 翻了一下 AI 的执行过程我才明白,应该是因为 Cursor 内置浏览器的拖拽功能只能拖动网页元素,没法按住鼠标从一个点划到另一个点。Opus 5.5 画不出连续的线条,只能把笔刷调到 65 像素,一下一下地点,再用油漆桶填色,前后点了 270 多下。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/WRjE4KlQh6VhIbr6.jpg) 不过即便是这样,它的构图和配色还原得挺像的,对话气泡、呆毛、白色蕾丝头饰、蓝色大眼睛、腮红和蝴蝶结都在。 GPT-6 Sol 用的是 Codex 的电脑操作能力,直接控制真实的 Chrome 浏览器来画,参考图也是靠 GPT 自身的多模态能力看的。它可以自由拖动鼠标画线,17 分钟就画完了。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/hWpIMV0sTd2FcZPH.jpg) 怎么硕呢? 眼睛、腮红、呆毛、蝴蝶结和白色头饰倒是都有,眼睛画得还挺有神。但「好模型」三个字就崩的太明显了,头发是一大块半透明的蓝色,上面还飘着几道莫名其妙的折线。 两张放在一起,你觉得哪张更像参考图? ![](https://pic.code-nav.cn/post_picture/1601072287388278786/HYFfacUeTrtzuUvC.jpg) 我个人投 Opus 5.5 一票,即使是被 AI 工具限制了,只能一个点一个点地戳,还原度反而更高。 ## 5、复刻 Cursor 工具 最后压轴的是我测过很多次的复刻 Cursor 这个 AI 编程工具,这是一个非常考验长程任务能力的全栈项目。 提示词跟之前测 Claude Fable 5.1、Kimi K3、GPT-6 Astra 时用的完全一样。我要求 AI 克隆 VS Code 的开源代码,在此基础上做一个 Web 版的 AI 编程工具,Editor Window 和 Agents Window 两种窗口能来回切换,内置 AI 接的是 DeepSeek V4.1 Flash。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/xcSQRGh3zIRw1hG3.jpg) ### Claude Opus 5.5 Opus 5.5 花了 53 分钟交卷。打开网站,默认就是 Agents Window 智能体面板。 不骗大家,我刚看到这个界面的时候,真的大喊了一声「卧槽」! ![](https://pic.code-nav.cn/post_picture/1601072287388278786/bPdJ9akcUEorrAMk.jpg) 左侧是按工作区分组的 Agent 列表,每个任务改了多少行代码都标得清清楚楚。中间是任务输入框,下面还有几个推荐任务,跟 Cursor 3 本尊的 Agents Window 神似。 光看到这里,你可能还没意识到问题的严重性,那如果我把文件查看器、终端、Agent 侧边栏都打开呢? ![](https://pic.code-nav.cn/post_picture/1601072287388278786/SZENcSXsuoVjVpwN.jpg) 上面这些功能全都能正常使用!比如在终端里敲一个 tree 命令,项目结构立刻就打印出来了。我在右侧的 Agent 侧边栏里问这个项目有几个源码文件,AI 自己调用工具把目录列了一遍,回答是 5 个,跟终端里的结果对得上。 之前我也用相同的提示词让其他模型复刻过 Cursor,比如 Claude Fable 5.1 是之前完成度最高的,能逐个文件接受或拒绝 AI 的改动,但界面跟 Cursor 3 差得还挺远: ![Claude Fable 5.1 的复刻 Cursor](https://pic.code-nav.cn/post_picture/1601072287388278786/uTuyXoyKsvkDuAeh.jpg) GPT-6 Astra 那次自己取了个产品名叫 orbit,设计感很强,但它走的是自己的产品思路,功能丰富度也差 Fable 5.1 一截: ![GPT-6 Astra 的复刻 Cursor](https://pic.code-nav.cn/post_picture/1601072287388278786/VGocP9tzzQtfH3ue.jpg) 切换到 Editor Window 编辑器模式,文件高亮、代码高亮、代码补全一应俱全,还能在右侧打开 AI 面板随时和 AI 对话。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/Y51vNIIuBSrLW4kb.jpg) 此外,还有完整的 Git 管理面板,改了哪些文件、提交记录都能直接看到: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/UAH9HC161TVeDjw5.jpg) 如果我直接把这个产品发布了,我敢打赌你绝对想不到这是 AI 一把梭的! 夯爆了! ### GPT-6 Sol GPT-6 Sol 只用了 27 分钟,差不多是 Opus 5.5 的一半时间。 进入主页,默认是 Editor Window 编辑器模式,也能实现代码高亮和自动补全,但从第一眼的界面上来看就已经输了。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/xxN95vlLDNwGyFKG.jpg) 再看看 Agents 面板,布局是合理的,但就是这个配色有点怪,给我一种 GPT 想让人看起来很牛逼、实际上很辣鸡的感觉。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/njaAVvrqlf1LuZL8.jpg) 任务可以正常执行,但整个执行界面也是浓浓的 AI 味儿,GPT 的风格一贯如此。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/LxmCB0zryXB8RLym.jpg) 功能丰富度也远远不如 Opus 5.5,不支持搜索,没有 Git 能力,没有终端,也没有那么多布局和面板,页面上很多按钮都是死的。 原因其实也很简单。GPT-6 Sol 虽然也克隆了 VS Code 的源码,但压根没用上,而是在旁边另起炉灶,用 Monaco 编辑器加 React 自己拼了一个工作台,源码一共才 600 多行。而 Opus 5.5 那边光是自己写的代码就有 3600 多行。 跟之前测过的国产模型比一比,这是 Kimi K3 当时用同一段提示词做的版本: ![Kimi K3 的复刻 Cursor](https://pic.code-nav.cn/post_picture/1601072287388278786/agKfMDKIQNFMMBOv.jpg) 说白了,我感觉 GPT-6 Sol 的水平跟目前的国产模型差不多。 不好意思,在看完 Opus 5.5 之后,只能给到拉完了…… ## 我的感受 5 个案例跑完,Claude Opus 5.5 除了速度,其他每一项都赢了。 虽然我老是骂 A 社,但不得不承认,人家的模型能力确实强。 嘴上建议大家放缓发展,自己却在那嘎嘎进步,别人都慢下来了,还怎么超过你? ![](https://pic.code-nav.cn/post_picture/1601072287388278786/S0yMKqsvHmzmDlrY.jpg) Claude Opus 5.5 的能力比上一个版本提升明显多了,我甚至觉得它比 Fable 5.1 还要强,复刻 Cursor 那道题就是最好的证明。 **除了 AI 编程能力之外,Claude Opus 5.5 的写作能力也真的非常让我惊喜。** 以前我一直觉得 AI 越强,越不会说人话,所以写作基本还是用 Opus 4.6 或者国产模型。但 Opus 5.5 写出来的东西很有人味,就像前面那篇 300 字科普一样。 实不相瞒,你现在看的这篇文章就是借助 Opus 5.5 完成的,我把大纲和实测结果交给 AI 去润色,然后简单看了看、加了点自己的梗和表达,就搞出来了。 **当然,强是有代价的。** 先说速度。这 5 个案例 Opus 5.5 前前后后跑了 3 个多小时,GPT-6 Sol 只用了 1 个小时左右,除了写作那道题,GPT-6 Sol 全程都比 Opus 5.5 快。 再说花费,这个差距就更夸张了。Opus 5.5 这 5 个案例加起来花了我 600 多块钱!(本期成本巨大) 虽然 Opus 5.5 每百万 token 输入 4 刀、输出 20 刀,单价只有 Fable 5.1 的四成,但对个人开发者来说还是很贵…… GPT-6 Sol 就友好多了。之前的 GPT-6 Astra 能力是强,但额度消耗太快了,Plus 账号跑一两个项目就能把 5 小时额度耗光。这次我用 GPT-6 Sol 跑完一整套测试,才刚好把 Plus 会员的额度用完,耗时还不到 Opus 5.5 的三分之一,这才是给大家日常用的模型。 它本来就定位在 Astra 下面一档,比不过 Astra 很正常,但也确实没什么亮点。就今天测的这几个任务来看,我感觉它跟国产模型差不多是同一档(仅个人体验,叠甲)。 看到这里你应该也有自己的选择了,追求效果、预算又充足,就上 Claude Opus 5.5。图的是性价比,可以使用 GPT-6 Sol,搭配 Codex 的体验还是不错的。 最后再送大家一段由 Claude Opus 5.5 自主生成的 3D 网页动画《牛来骑车》,这一段大作花了我几十块钱,能三连回回血么? ![](https://pic.code-nav.cn/post_picture/1601072287388278786/qpDfbwl5IekmDzdM.jpg) 我之前一直觉得,AI 的编程能力已经进化到不需要再进化的程度了。但每一次新的模型发布,都能刷新我对 AI 能力的认知上限,我喜欢这种感觉。 **就是希望再慢一点吧,起码中秋假期不要再 TM 发新模型了啊啊啊啊啊啊!!!** OK 就分享到这里,本文会收录到我免费开源的 [《AI 编程零基础入门教程》](https://ai.codefather.cn/vibe),上千张图、几十万字,带你从 0 开始快速学会 AI 编程,做出自己的产品、跑通变现全流程,一次拿捏。 > 开源指路:[https://github.com/liyupi/ai-guide](https://github.com/liyupi/ai-guide) ![鱼皮的 AI 编程教程](https://pic.code-nav.cn/post_picture/1601072287388278786/UMmQC6P80urF0t1t.jpg) 我是鱼皮,持续分享 AI 编程干货。觉得有用的话记得点赞收藏和关注。 这俩模型可以说是新时代模型的两个门派代表了,一边是能力超强但价格贵,一边是能力全面、性价比高,你会更支持哪家呢? 评论区聊聊吧~

全网刷屏的 Jev 模型正式开放!一手实战测评 + 保姆级教程

大家好,我是程序员鱼皮。 过去几年,不管是 ChatGPT、Claude 还是 DeepSeek,AI 大模型的目标一直都是「跟人聊天」和「帮人干活」。 但最近有个模型突然火了,它有点儿特别,**不说人话、不能跟人聊天**。 它叫 Jev,由前 OpenAI 研究员 Diogo Almeida 创办的 TypeSafe AI 发布,这哥们是 ChatGPT 的共同发明人之一! ![](https://pic.code-nav.cn/post_picture/1601072287388278786/wXCF25HtCYTuy9jq.jpg) 我刚看到的反应是:一个不说人话的 AI,能有什么用?又是噱头吧? ![](https://pic.code-nav.cn/post_picture/1601072287388278786/e5FR6nrbFJKoedTr.jpg) **了解之后发现,还真有点东西!** 这篇文章我就从零开始,带大家搞懂 Jev 到底是什么、怎么用、到底好不好用。没有任何技术基础的小白也能看懂,看完还能直接上手体验。 ## 一、Jev 入门介绍 ### Jev 是什么? 传统的大模型主要是跟人对话的,你问它一个问题,它回你一段话。 但这就带来一个问题,比如你想让它帮你判断一下「这封邮件紧急吗」,它不会直接告诉你「是」或者「否」,而是先给你写一大段分析,然后才给出结论。不仅速度慢、烧 Tokens,还需要你自己从回答里把答案抠出来。 Jev 就完全不一样了。你问它「这封邮件紧急吗」,它就直接告诉你「是,概率 95%」。 模型返回的是一段结构化的 JSON 数据,你的程序可以直接拿来用: ```json { "is_urgent": { "noul": 0.95 } } ``` 可以说,没有任何 AI 比它更直接、更不绕弯子。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/7e1o6sCkLtzJLmds.jpg) TypeSafe AI 管这种模型叫 **System One Model(系统一模型)**,灵感来自诺贝尔奖得主 Daniel Kahneman 的《思考,快与慢》。系统一是人类大脑里负责快速直觉判断的部分,比如你一眼就能看出「这个人在生气」;系统二是负责深度推理的,比如「算一下 17 × 24」。 传统 LLM 更像系统二,Jev 就是系统一。 根据 TypeSafe 官方自测的数据,两者的差距还挺夸张的: | | 传统 LLM(如 GPT-5.6) | Jev | |---|---|---| | 输出方式 | 生成文字,需要解析 | 直接返回结构化决策结果 | | 响应速度 | 3 - 329 秒 | 70 - 500 毫秒 | | 输入价格 | $0.20 - $10 / 百万 token | $0.042 / 百万 token | | 输出价格 | 约输入价的 5 倍 | 免费 | | 结构化输出错误率 | 0.58% - 45.5% | 0%(数学保证) | 响应速度最高快了将近 200 倍,输入价格便宜了几十倍到上百倍,输出还不要钱,而且结构化输出零错误。这也太香了吧! 那 Jev 到底是怎么用的?为什么能这么快?下面一个一个来讲。 ### Jev 能回答什么类型的问题? Jev 的调用方式非常简单,你给它两样东西,一个是 **state 状态**,就是你想让它分析的上下文信息;另一个是 **questions 问题**,就是你想让它回答的问题。然后它就直接返回结构化的答案。 Jev 支持回答 3 种类型的问题,TypeSafe 官方把它们叫做「AI 原语」。 #### 1、Noul 是或否 简单来说,就是让 AI 做判断题,问一个「是不是」的问题,返回 0 到 1 之间的概率值。 比如你收到一封客户邮件,想判断是否紧急,就把邮件内容作为 state 传给 Jev,再加上一个 Noul 类型的问题: ```json { "state": "我连续 3 天无法连接 Stripe 账户,正在丢失销售额,请尽快处理!", "questions": { "is_urgent": { "type": "noul", "instructions": "这条消息是否传达了紧急性或时效性" } } } ``` Jev 返回的结果长这样: ```json { "is_urgent": { "type": "noul", "noul": 0.95 } } ``` 0.95 意味着有 95% 的把握认为这条消息是紧急的。你在代码里直接 `if noul > 0.8` 就可以触发告警了。 #### 2、Choice 多选一 这个就像让 AI 做选择题,从你预设的选项里选一个,并告诉你每个选项的概率分布。 比如判断一个工单该分给哪个部门,你可以把部门选项列在 criteria 里让 Jev 来选: ```json { "questions": { "department": { "type": "choice", "instructions": "这个工单应该分配给哪个团队处理", "criteria": { "billing": "付款、发票、退款相关问题", "technical": "Bug、系统故障、集成问题", "sales": "定价、账户咨询" } } } } ``` 返回: ```json { "department": { "type": "choice", "choice": "billing", "confidence": 0.8, "probabilities": { "billing": 0.87, "sales": 0, "technical": 0.13 } } } ``` 不光告诉你选了 billing,还把每个选项的概率都算出来了。目前 Choice 最多支持 255 个选项。 #### 3、Score 评分 这个就像让 AI 做打分题,在你自定义的量表上打分,分数可以落在两个等级之间。 比如判断无法登录的客户有多沮丧,你可以定义从「冷静」到「愤怒」的几个等级,让 Jev 来打分: ```json { "questions": { "frustration": { "type": "score", "instructions": "客户看起来有多沮丧", "criteria": [ "冷静,只是在陈述事实", "不满但还算礼貌", "非常愤怒,言辞激烈" ] } } } ``` 返回: ```json { "frustration": { "type": "score", "score": 1.04, "confidence": 0.94, "probabilities": { "0": 0, "1": 0.96, "2": 0.04 } } } ``` Score 1.04 表示介于第 1 级(不满但礼貌)和第 2 级(非常愤怒)之间,偏向不满。这里我定义了 3 个等级,实际使用时你可以根据需要定义 2 到 10 个等级,等级越多,评分的粒度就越细。 ### Jev 有什么特别的? 看到这里,可能有接触过 AI 应用开发的朋友会想:我之前在提示词里引导 AI 输出 JSON,或者用大模型自带的结构化输出功能,也能让 AI 返回固定格式的结果啊…… Jev 跟它们有什么区别? ![](https://pic.code-nav.cn/post_picture/1601072287388278786/rAQaXYc9CF2LOXdi.jpg) 你别说,区别还真挺大的! 首先,传统 LLM 做结构化输出,底层还是一个 token 一个 token 地「写字」,写完再校验格式。就好比让一个作文高手去做选择题,他还是会先在脑子里打一遍草稿,然后再从里面挑答案,自然就慢。而且写着写着格式就可能出错。 Jev 的做法完全不一样,它用的是 **并行采样**,不像传统 LLM 那样逐字生成文本,而是直接在预定义好的选项上输出概率分布。也就是说,前面提到的 3 种问题可以在一次请求里同时问,问 1 个和问 10 个问题的响应时间几乎没差别。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/LHxiUE2vjHSdwTxU.jpg) 此外,Jev 的训练方式也跟传统模型不同。传统 LLM 用 RLHF 人类反馈强化学习,优化目标是让回答读起来通顺,让人类满意;推理模型用 RLVR 可验证奖励强化学习,优化目标是让那些有标准答案的问题做对,比如数学证明能不能验证通过、生成的代码能不能编译运行。 而 Jev 用的是 TypeSafe 自研的 **RLCD 校准决策强化学习**,优化目标是让模型「说到做到」,如果 AI 说有 90% 的把握,那在大量预测中这类判断确实有约 90% 是对的。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/gf6o89lRHwNcMX3u.jpg) 理解了这些原理,前面表格里那些夸张的数据就好解释了。 Jev 不用一个字一个字地写回答,直接并行输出所有概率分布,所以速度能快上百倍。 它也不需要生成任何输出文字,成本自然就低了。 而且输出结构在数学上就是确定的,所以结构化错误率是 0%。 更重要的是,因为 Jev 的概率是校准过的,你的程序可以直接拿这个概率来做自动化决策,比如概率高于 0.8 就让 AI 自动处理,低于 0.5 就转人工。 ### Jev 能用来干嘛? 虽然 Jev 不能聊天,但是它的适用场景还真不少,这也是它能火起来的原因之一。 TypeSafe 官方建议把 Jev 当成一个「智能的 if 语句」,所有需要做判断和决策的场景,都可以用 Jev。 我看了网上大家的玩法,总结了几个比较典型的场景。 1)工单和消息分类 比如客服系统收到用户消息,一次性判断该分给哪个部门、是否紧急、情绪如何。社区里有人拿 Jev 给 1018 篇论文做分类,分类部分只花了 0.08 刀。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/1lYxRBDungHoXTns.jpg) 2)AI Agent 的决策中间层 比如 Codex 等 Harness 里的 Agent 每一步都要做判断,可以让 Jev 先快速决定该调哪个工具、这个操作有没有风险,只有需要写代码的时候才让传统的 LLM 上。 有人用这个思路做了 [浏览器自动化 Agent](https://github.com/browser-use/jev-ultrafast),7.1 秒就在 Google Flights 上搜索完一次航班,成本只有 0.0039 刀。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/zt8q3CR1Br9O5Vyo.jpg) 3)内容审核和风控:比如一次性判断这条评论是否违规、属于哪种违规类型、风险等级多高,每条消息的判断成本不到 0.001 刀。 4)给 LLM 输出做质检 比如 LLM 生成了一段回答,用 Jev 快速检查有没有跑题、质量打几分,用便宜的 AI 检查贵的 AI。社区里有人做了一个[多阶段代码审查工具](https://github.com/devagrawal09/jev-review),用 Jev 先做风险评估再逐文件打分。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/CXE2cRQVlBykM8YI.jpg) 5)实时游戏决策 有人用 Jev 玩地铁跑酷游戏,操作速度超过人类;有人用 Jev 控制超级马里奥,甚至还有人打通了《星际争霸》第一关! ![](https://pic.code-nav.cn/post_picture/1601072287388278786/UdWED85lA2EaHRsE.jpg) 这类对响应速度要求极高的场景,以前用传统的 LLM 根本不可能做到。 之后,**需要生成文字的场景用传统 LLM,需要快速做判断的场景用 Jev**,两者互补,可以让任务完成速度又快又准。 ## 二、Jev 实战体验 了解了 Jev 是什么之后,接下来看看怎么实际用上它。 ### 怎么使用 Jev? Jev 现在已经正式开放注册了,直接用邮箱在 [TypeSafe 官网](https://typesafe.ai/) 注册登录就行。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/DTWh9kur7u3HL2np.jpg) 注册之后,最简单的使用方式就是直接在官方 Playground 里体验,也可以通过 API 和 SDK 接入到自己的项目里。另外也可以通过 Vercel、Cloudflare 这些第三方平台来调用 Jev。 #### 方式一、官方 Playground 最简单的使用方式就是打开 [官方的在线 Playground](https://console.typesafe.ai/playground),左边填写提供给 AI 的上下文和想让 AI 分析的问题,点击运行就能在右侧看到结果。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/BCnPnon8VxNA0DYx.jpg) #### 方式二、调用官方 API 和 SDK 登录之后,可以到 [TypeSafe 的控制台](https://console.typesafe.ai/keys) 中创建 API Key。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/3NL23dZ3L8Xivigr.jpg) TypeSafe 提供了 Python SDK 和 JavaScript SDK,方便开发者在自己的项目里直接调用 Jev,也可以通过 HTTP API 调用。[官方文档的 Quick Start 页面](https://docs.typesafe.ai/introduction/quickstart) 有完整的示例代码。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/rtuUc7hK7lKNzba0.jpg) 以 Python 为例,安装 SDK 之后几行代码就能跑: ```python # pip install typesafe-sdk from typesafe_sdk import Choice, Noul, Score, TypeSafeClient client = TypeSafeClient() # 自动读取环境变量 TYPESAFE_API_KEY response = client.system_one( state="客户说:我被重复扣款了,订单号 A-104,请退款。", questions={ "department": Choice( instructions="这个工单应该分配给哪个团队处理", criteria={ "billing": "付款、发票、退款相关", "technical": "Bug、系统故障、集成问题", "sales": "定价、账户咨询", }, ), "is_urgent": Noul( instructions="这条消息是否传达了紧急性或时效性", ), }, ) print(response.answers["department"].choice) # "billing" print(response.answers["is_urgent"].noul) # 0.95 ``` 当然,现在用 AI 编程,这些代码都不用自己写,后面会讲到怎么让 AI 工具直接帮你调用 Jev。 #### 方式三、通过第三方平台调用 除了 TypeSafe 官方的 API,Vercel AI Gateway 和 Cloudflare Workers AI 这些第三方平台也已经支持了 Jev,可以直接在这些平台上调用。 以 Vercel 为例,它的 AI SDK 专门新增了一个 `experimental_evaluate` 接口来对接 Jev 这类决策模型,详细教程可以查看 [Vercel 官方文档](https://vercel.com/kb/guide/typesafe-jev-and-ai-sdk)。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/gSs8CPAfEvQGrFnz.jpg) 我这里还用 AI 接入 Vercel AI Gateway 做了一个 **中文版的 Jev 调试广场**,可以直接在网页上体验 Jev 的三种回复方式。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/p2bftHfifWM1KdtG.jpg) 点击「运行」之后,就能直接看到 Jev 返回的决策结果和原始 JSON 数据。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/icS7DftIpWvuWXqm.jpg) ### 接入 AI 工具 上面几种方式都需要你自己写代码调用 Jev,那有没有更简单的方式呢? 其实日常大家还是用 GPT、Claude、DeepSeek 这些大模型,Jev 更适合作为一个扩展能力来搭配使用。 TypeSafe 官方提供了一个通用的 Skills 技能包,简单理解就是一份配置文件,告诉 AI 编程工具 Jev 是什么、怎么调用、参数怎么传,这样 AI 工具就知道怎么帮你调用 Jev 了。只要安装了 Skills 技能包,所有主流的 AI 编程工具都能用。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/TtRg3HrniVQArLv7.jpg) 安装方法非常简单,官方提供了一段 [现成的提示词](https://docs.typesafe.ai/introduction/quickstart),可以让 AI 帮你把技能安装到你用的 AI 工具里。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/Q1t8uKIvTR8KgxOq.jpg) 不过官方的提示词默认只在当前项目下安装。我把提示词翻译成中文并改为了全局安装的版本,这样所有项目都能用: ``` 全局安装 TypeSafe 技能。如果你是 Codex(Claude Code),请执行 `claude plugin marketplace add typesafe-ai/skills`,然后执行 `claude plugin install typesafe@typesafe-ai`。如果你是其他 Agent,请执行 `npx skills add typesafe-ai/skills --skill typesafe-ai -g` 并选择你的 Agent。只需使用一种安装方式即可。技能文件可以在这里查看:https://github.com/typesafe-ai/skills/blob/main/skills/typesafe-ai/SKILL.md ``` 比如我在 Codex 中执行这段提示词。它的原理就是根据你用的 AI 工具,执行对应的命令把技能文件从 GitHub 仓库拉取下来。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/HqJgzg87sOS2RE1q.jpg) 安装完成之后,还需要在环境变量里配置好 TypeSafe 的 API Key,AI 工具才能帮你调用 Jev。 直接让 AI 帮你配置就好: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/jUldyPwnAXQTDdRc.jpg) 配好之后,你就可以在 AI 编程工具里直接使用斜杠命令 `/typesafe-ai` 来触发技能,AI 会自动帮你调用 Jev 来完成判断和决策。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/r00iBMBmmGu6H1OB.jpg) 你也可以在对话中直接告诉 AI「用 Jev 来帮我做判断」,AI 同样会自动加载 TypeSafe 技能并调用 Jev 的接口: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/kr43Q3dQ0GJ7dHuf.jpg) ### Jev API 实战测评 学会了怎么使用 Jev 之后,咱们来通过实际的测试来看看 Jev 的表现到底怎么样。 我分别用 Jev 和 DeepSeek V4.1 Flash 来完成同一个任务,对比两者的速度、价格和准确度。 #### 1、用 Jev 实时玩数字华容道 数字华容道是一个经典的滑块拼图游戏,4 × 4 的棋盘上有 15 个数字方块和 1 个空位,目标是把所有数字按顺序排列好。 每一步 Jev 需要判断「空位应该往哪个方向移动」,这对决策能力的要求很高。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/3BtaWuAsPuAdQr9l.jpg) 开始测试,左边是 Jev,右边是 DeepSeek V4.1 Flash,两边同时开始,实时展示每一步的决策时间、累计消耗的 token 数和价格。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/PMTfb5Ojd8h7QVpI.jpg) 最终,Jev 在完成速度上遥遥领先 DeepSeek V4.1 Flash,而且输入 token 和累计价格也更低。 #### 2、用 Jev 批量分类 1000 封邮件 第二个测试更贴近实际业务场景。假设你公司的邮箱每天会收到大量邮件,需要快速判断每封邮件的优先级、紧急程度和该转给哪个部门处理,这个任务就可以交给 AI。 我模拟了 1000 封不同内容的邮件,让 Jev 和 DeepSeek V4.1 Flash 分别对每封邮件做优先级分类、紧急程度判断和部门路由,两边拿到的邮件列表完全一样。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/fqH313ahaC1VEhdD.jpg) 最终结果,Jev 用了 15.6 秒处理完 1000 封邮件,平均每秒处理 64 封,累计花费 0.0177 刀;而 DeepSeek V4.1 Flash 用了 48.9 秒,平均每秒 20 封,累计花费 0.0207 刀。Jev 在速度上快了接近 2 倍,价格也略低一些。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/Fnu0mfS459sagUs5.jpg) ### AI 工具 + Jev 实战测评 除了直接调用 API,我还试了一下把 Jev 接入 AI 工具之后的使用效果。 这次我用的是 Codex 工具 + GPT 模型,装好 TypeSafe 技能之后直接让 AI 干活。 #### 1、用 Jev 玩连连看 连连看大家都玩过吧? 这次我用 Jev 来玩连连看,可以测试它在实时决策场景下的反应速度和判断准确度,游戏逻辑用代码处理,每一步选哪对方块消除的决策交给 Jev。 在 Codex 中使用 `/typesafe-ai` 技能,然后跟它说: ```markdown /typesafe-ai 帮我用 Jev 模型玩连连看游戏 ``` Codex 加载了 TypeSafe 技能之后,会自动分析页面结构,识别出方块的位置和图案,然后调用 Jev 来做每一步「选哪对方块消除」的决策,最后操作页面完成消除。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/Hc9BT3pV9AKON2Yx.jpg) 虽然 AI 顺利通关了游戏,但是我觉得执行速度没有达到预期。快的时候可以 2 秒消除 1 个,但经常消除几个之后会卡一会儿,总共花了 5 分钟左右才完成了整局游戏的消除。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/eFTgHttc0Zi4H9SJ.jpg) 虽然 Jev 的决策速度确实很快,但问题出在「看」这个环节。Jev 只能处理文本和 JSON 数据,没办法直接「看到」网页上方块的位置和图案。这次测试我用的是本地的连连看网页版,Codex 可以直接解析到原始的 HTML 和 DOM 结构,所以还能跑起来。但如果你让它去玩那些用 Canvas 渲染的网页游戏,如果 DOM 里获取不到足够的信息,效果会更差。 其实社区里那些用 Jev 玩游戏的博主,思路基本都是一样的,就是先用代码把游戏画面转成结构化的数据(比如读取游戏内存),然后再把数据喂给 Jev 做判断,而不是让 Jev 直接看截图。 #### 2、用 Jev 给开源教程文章打标签 前面的连连看游戏主要考察的是 Jev 的实时决策速度,这次换个方向,考察一下 Jev 对文本内容的分类和打分能力。 我让 Codex 用 Jev 模型给自己 [《AI 编程教程》](https://github.com/liyupi/ai-guide) 中的每篇文章自动打标签,包括判断文章属于什么主题、适合什么水平的读者、难度打几分。 提示词如下: ```markdown /typesafe-ai 读取 ai-guide 仓库里的文章列表,用 Jev 给每篇文章打标签。 1. 主题分类(AI 基础/提示词工程/AI 编程实战/工具推荐/行业趋势) 2. 适合的读者水平(零基础/有编程基础/有 AI 经验) 3. 内容难度打分(入门/进阶/高级) 不改动原始文章,只是最后输出一份报告。 ``` ![](https://pic.code-nav.cn/post_picture/1601072287388278786/37fph7MIV8Rnzx1Y.jpg) Codex 会先盘点文章范围、数量和篇幅,再按上下文限制设计可靠的批处理,批量调用 Jev 模型来判断文章的标签。 最终只用了几分钟,就完成了 697 篇长文章的标签分类!这个速度真的非常快了。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/pSOWbv1iPaoCpVNT.jpg) 这类批量分类打标签的场景特别适合 Jev,因为每篇文章的判断逻辑是一样的,只是输入内容不同,可以批量并行处理。而且分类结果是结构化的,拿到之后可以直接用来生成目录、做筛选功能。 ## 三、Jev 使用感受 最后说说我使用 Jev 的感受。 如果把 Jev 作为决策模型直接接入到自己的应用里(比如客服分类、内容审核、数据打标签),体验是非常好的,速度快、价格低、结果准确。做了上面这么多任务,总共也才花了不到 2 块钱。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/Axzw4v0s5yVnCao7.jpg) 但如果是通过 AI 工具来间接使用 Jev,目前的体验还有不少提升空间,主要瓶颈在于 AI 工具对网页内容的感知能力还不够强,很多场景下没办法给 Jev 提供足够准确的输入数据。 而且 Jev 的能力有明确的边界,不能生成文字、不能做算术推理、日期比较也不靠谱。 如果你在做 AI 应用开发,想要把分类、路由、审核这类判断逻辑的成本和延迟降下来,Jev 是值得一试的。一定要确保你能给 Jev 提供足够准确的结构化输入数据,它判断得准不准,取决于你喂给它的信息质量。 我个人比较看好 Jev 在 AI Agent 决策层的应用。现在 Agent 每一步操作都要调一次大模型来判断,如果把这类快速判断交给 Jev,整体效率应该会有一个质的提升。 OK 就分享到这儿,本文会收录到我免费开源的 [《AI 编程零基础入门教程》](https://ai.codefather.cn/vibe),上千张图、几十万字,带你从 0 开始快速学会 AI 编程,做出自己的产品、跑通变现全流程,一次拿捏。 > 开源指路:https://github.com/liyupi/ai-guide ![鱼皮的 AI 编程教程](https://pic.code-nav.cn/post_picture/1601072287388278786/U0Wa1k0ZCXfiAOKm.jpg) 我是鱼皮,持续分享 AI 编程干货。觉得有用的话记得点赞收藏和关注~ 也欢迎在评论区聊聊:你有用过 Jev 模型么?你看好它的发展么?

我跟 AI 说自己「有多动症」,竟然能节省 Tokens?!

大家好,我是程序员鱼皮。 最近 GitHub 上有个项目涨势非常猛,短短一周涨了 1 万多个 Star,成功引起了我的注意。 项目的名字很有意思,叫 `i-have-adhd`,翻译过来就是「我有多动症」。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/CQHu4XZV8I8KZKXX.jpg) 这是一个给 AI 工具安装的 Skill 技能,作用是让 AI 不再长篇大论地废话,每次回答都直奔主题,先给出你该执行的下一步操作,多步骤任务用编号列清楚。 之所以叫 ADHD,是因为 ADHD 人群的工作记忆比较有限,面对大段文字很容易走神,这种「先说结论、直给行动」的输出方式对他们来说更友好。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/jrzZD8lbJTXNWsvA.jpg) 虽然名字叫 ADHD,但并不是只有 ADHD 人群才能用。任何希望 AI 回答更简洁高效的人,都可以试试。而且理论上因为输出变简洁了,每次对话消耗的 tokens 也会相应减少,长期用下来能省不少钱。 那这个技能到底效果怎么样?真的能省钱么?能省多少?会不会因为输出太精简,反而影响了任务的完成质量? 下面我分别用 Cursor 和 ZCode 做了实测,带大家看看到底能省多少。 ## 怎么安装? 安装方式非常简单,直接让 AI 帮你装。 随便打开一个支持加载技能的 AI 工具,把下面这段提示词复制粘贴到对话框中,发给 AI 就行: ``` Install the i-have-adhd skill/plugin from https://github.com/ayghri/i-have-adhd, refer to the repo's AGENTS.md for instructions. ``` 比如我在 Cursor 里执行这段提示词: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/BZL4i3NPeehRqfUc.jpg) AI 会自动去读取 GitHub 仓库的安装说明,然后帮你完成安装。 安装完成后,技能文件会存放在电脑的 `~/.agents/skills` 目录下,这个路径是主流 AI 工具都能扫描到的通用技能目录: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/x66WhcZsnLfRaE0H.jpg) 之后在对话时输入斜杠命令 `/i-have-adhd` 就可以激活这个技能了: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/fkjZyUAtAvu5i5kU.jpg) Skill 装好了,接下来就该验证效果了。 ## 实测对比 我设计了两类测试任务,一类是日常技术问答,看看回答知识类问题时能省多少;另一类是从零开发一个复杂的 3D 互动页面,看看写代码的场景下 Skill 的效果和质量会怎样。 ### 1、日常技术问答 我先用 Cursor + Claude Opus 5 这个顶级模型的组合来测试,问了一个 AI 领域大家都听说过的概念: ``` 请深入讲解 AI 领域的 Harness Engineering 是什么?包括它的核心概念、和传统 Prompt Engineering 的区别、实际应用场景,以及目前主流的最佳实践。 ``` 看看下面这张图的测试结果,左边没有开启 ADHD 技能,右边开启了。可以看到对话消耗的 tokens 从 48.7K 直接降到了 27.5K,**减少了将近一半**! ![](https://pic.code-nav.cn/post_picture/1601072287388278786/s5mEa5pOX5SO1Gc4.jpg) 再看看回答的内容风格。左边没开 ADHD 技能的时候,AI 先是搜了一圈资料,然后洋洋洒洒地分了好几个章节来展开讲,篇幅很长。 右边开了技能之后,AI 的回答明显更直接,上来就给出核心定义,然后用编号列出可执行的最佳实践,按落地成本从低到高排序,用户读完立刻就知道该干什么。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/zgzJiCHOcI3NhfW0.jpg) 有点像你跟 AI 说「别绕弯子,直接告诉我怎么做」,效果确实不错。 按 Claude Opus 5 的输出价格来算,单次对话大概能省几毛到一块钱,如果你每天跟 AI 聊几十上百轮,累积下来就是一笔可观的开支了。 这么看来,日常问答使用这个技能是可以省钱的。但 AI 编程的核心场景是写代码,如果是更复杂的开发任务,效果又会怎么样呢?质量会不会打折扣? ### 2、开发 3D 互动页面 这次我让 AI 从零开发一个《清明上河图》的 3D 互动展示页面: ``` 帮我开发一个完整的清明上河图 3D 互动展示页面。要求:页面加载后呈现一幅可以横向浏览的长卷画面,具有 3D 景深效果,让用户仿佛身临其境地走进画中世界。用户可以通过鼠标拖拽或滚轮左右浏览,鼠标悬停到画中的建筑或人物区域时,会出现高亮效果和简介弹窗。请直接给出完整的可运行代码。 ``` 先看 Cursor + Claude Opus 5 的对比。下图的左边没开技能,工作了 37 分钟,总共消耗了约 242.8K tokens;右边开了 ADHD 技能后,只用了不到 14 分钟,tokens 降到了 178.9K。 **时间快了将近两倍,tokens 省了 26%**。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/rPg681ExRClMAhSw.jpg) 不过光看数据还不够,得看实际效果。先看没开 ADHD 技能的版本,整体的古画意境还不错,有虹桥、有行人、有河面,悬停弹窗也做了出来: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/NiMtW8TDbCQOqvtv.webp) 再看开了 ADHD 技能的版本。整体布局和交互也都实现了,不过从细节上来看,我觉得还是没开技能的时候更好一些。 比如你仔细看,右侧有些人物直接站在了水面上,而且人物配色花花绿绿的,有点破坏整体的水墨意境(我瞎说的): ![](https://pic.code-nav.cn/post_picture/1601072287388278786/Y7dSqzP8qFbqXcJd.jpg) 不过说实话,两个版本的效果都只能算一般…… 毕竟这提示词是我瞎七八写的。 刚才用的是顶级模型,模型能力越强,越容易把简单的事情搞复杂。接下来换一个更轻量的工具 ZCode + GLM Flash 模型来看看效果。 下面是 ZCode 的对比图,左边无 ADHD 用了约 15.2 万 tokens、36 分钟,右边有 ADHD 用了约 14 万 tokens、34 分钟。GLM Flash 本身就比较精简,所以开不开技能的差距没那么大: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/l0Lenin07t8lWGgj.jpg) 再对比下成品效果,先看看没开技能的成品,桥面和河船都渲染出来了,整体还行,但背景比较单调: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/dpUi5up8aKanF8hb.jpg) 再看开了 ADHD 技能的效果,差别就比较明显了。桥面和行人倒是有了,但你注意看画面底部,怎么还出现了几个巨人?这一看就知道是渲染层级出了问题: ![](https://pic.code-nav.cn/post_picture/1601072287388278786/kFUIHl1bzf2h9R5u.jpg) 综合来看,ADHD 技能确实能有效减少 AI 的输出量、节省 tokens 和响应时间,在日常问答和简单任务上效果很明显。但在复杂的开发任务中,它有可能因为过度压缩输出而影响代码质量。所以我的建议是,日常问答和代码片段类的场景可以开启这个技能,遇到需要 AI 仔细思考的复杂项目时,就不要用它了。 ## 这个技能是怎么实现的? 看完测评效果,你可能会好奇这个技能到底做了什么? 其实原理非常简单! 整个技能的核心就是一份 [提示词文件 SKILL.md](https://github.com/ayghri/i-have-adhd/blob/main/skills/i-have-adhd/SKILL.md),里面定义了 10 条输出规则,AI 在回答时会遵循这些规则来调整自己的表达方式。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/GatSIf1iaHgn9Bqf.jpg) 这 10 条规则可以简单总结为: 1. 先说下一步行动,不铺垫背景,直接告诉用户该做什么。 2. 多步骤任务用编号,每一步只做一件事。 3. 以一个具体的下一步收尾,而不是「有问题随时问我」这种空话。 4. 抑制离题内容,有其他问题就单独提出,不要在当前回答里夹带。 5. 每轮对话重述当前状态,比如「第 3 步完成,共 5 步」,帮用户保持进度感知。 6. 给出具体的时间估计,用分钟来衡量,不说「一会儿」这种模糊表达。 7. 让完成的工作看得见,明确说出「登录功能已经可以用了」,不说「做了一些调整」。 8. 就事论事地报告错误,直接说原因和修复方法,不用「哎呀出问题了」的语气。 9. 每个列表最多展示 5 项,信息太多时先分组,优先展示最相关的。 10. 不写开场白、回顾和结束语,禁止套话。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/0f6HiSjVM7PDpp7x.jpg) ADHD 人群的核心困难在于工作记忆容量有限、启动行动的门槛高、对时间的感知比较模糊,这套规则刚好针对这些痛点逐一给出了应对方案。而对非 ADHD 用户来说,这些规则同样有效,毕竟没有人喜欢 AI 在回答里夹带一堆废话。 ## 最后哔哔 这个项目最让我有感触的一点,是作者把一个特定人群在阅读和执行上的真实困难,转化成了一份所有人都能受益的技术方案。好的产品往往就是这样,从关注少数人的真实需求出发,最终让更多人受益。 如果你也天天在用 AI 编程工具,不妨装上试试,也许你会发现 AI 的回答早就该这么简洁了。 OK 就分享到这里,这篇文章我也会收录到我的开源教程 [《AI 编程零基础入门教程》](https://ai.codefather.cn/vibe) 中。上千张图、几十万字,从 0 开始带你学会 AI 编程,做出自己的产品、跑通变现全流程,感兴趣的同学可以看看。 > 开源指路:[https://github.com/liyupi/ai-guide](https://github.com/liyupi/ai-guide) ![鱼皮的 AI 编程教程](https://pic.code-nav.cn/post_picture/1601072287388278786/9dwZUXvGcwu3xWS5.jpg) 我是鱼皮,持续分享 AI 编程干货。觉得有用的话记得点赞收藏和关注~

我做了个网站,随时掌控 500 个 AI 模型的动态!

大家好,我是程序员鱼皮。 - 什么?又有新模型发布了? - 现在最好的文本模型是哪个? - DeepSeek 有多模态模型了么? - 国外模型是不是真的把国内开源模型远远甩在了后面? AI 模型发展得太快了,你有没有这样一种感觉,仿佛天天瘫坐在原子弹上看椅子爆炸。 一段时间不关注 AI,就会开始迷茫,觉得自己好像和时代掉队了。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/3Fbl5cwVuaVacF2q.jpg) 那有没有一个工具,能让我随时随地,从上帝视角快速全面地了解地球上 **所有 AI 模型** 的现状和发展过程呢? **很抱歉,没有。** 不过没关系,作为一名 AI 编程博主,我掏出我的豆包(bushi ![](https://pic.code-nav.cn/post_picture/1601072287388278786/7ZVVhdEiERlTfbw1.jpg) 掏出顶级模型,运用我从自己 [《AI 编程教程》](https://ai.codefather.cn/vibe) 里学到的高超 AI 编程技巧,输入一段看起来很牛批、实际上非常无脑的提示词,然后等着 AI 疯狂输出三天三夜。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/3RVoU3KelURx8KgP.jpg) 我的「AI 大模型世界」网站就这么诞生了! 指路:https://bilibili.com/toy/ai-model-world 本文视频版:https://bilibili.com/video/BV1eCe36GELv ## 1、进门先看今日格局 进入这个世界,你能最直接不绕弯子地看到当下最聪明、最会编程、性价比最高、最新发布的 AI 模型分别是谁。 ![今日格局](https://pic.code-nav.cn/post_picture/1601072287388278786/I6wcfHqlOftY3Qrs.jpg) 每块牌子底下都写清楚了凭什么。比如最聪明那位 GPT-6 Astra,综合智力指数 166,是 206 个受测模型里的第一名;最划算的 DeepSeek V4 Flash 0731 智力全球第 31,价格却远低于同级。 顺便说一句,这些分数没有一个是我自己拍脑袋定的,全都来自 Epoch AI、LiveBench 这些第三方公开评测,网站只负责把它们抓回来、对齐、排好队。 ## 2、分类查看模型 往下滚动网页,能看到按类型划分的模型。 ![按类型看](https://pic.code-nav.cn/post_picture/1601072287388278786/V8shxQOSJZ44nuQr.jpg) 文本模型 226 个、视觉模型 239 个、全模态 44 个,图像生成、视频生成、语音模型也都单独成组。点进任何一类,就能看到这一类里目前排名最靠前的模型。 ## 3、国内外有哪些模型 再往下,世界被分成了国外和国内两个区域,国外有 27 家模型厂商。每个模型都是这个世界里的一个像素小人。名字下面那四根能力条分别是聪明、编程、记性和便宜,条越长越强,右边还标了它在全球的排名。 ![国外分区](https://pic.code-nav.cn/post_picture/1601072287388278786/m96uwzJJgT4fGJo2.jpg) 国内有 13 家模型厂商: ![国内分区](https://pic.code-nav.cn/post_picture/1601072287388278786/SJQowQq1GuaMDAVI.jpg) 小人的长相也全是数据算出来的。体型对应模型规模,参数量越大块头越壮;身上的装饰越华丽,说明它的调用价格越贵;家里的书架越高,它能读的上下文就越长;右边那台电脑代表编程能力,没有公开编程成绩的模型,电脑上直接盖着一块防尘布。 ## 4、模型搜索 先问问看,大家现在最喜欢的是哪个模型呢? 我个人非常喜欢鲸鱼(娘),所以想把它家的模型一次性看个够。不用翻页找,直接在顶部搜索框里敲几个字母就行。 ![搜索深度求索](https://pic.code-nav.cn/post_picture/1601072287388278786/FoKK1L8IT9DPIkEq.jpg) 搜索功能非常灵活,支持按照模型名、厂商名,还有模型能力搜索。比如你输入「多模态」,它会把所有多模态模型列出来;输入「deepseek」,第一条就是深度求索这家厂商,底下跟着它的 24 个模型。 点进厂商页,DeepSeek 的进化过程就按时间线铺开了。 ![DeepSeek 厂商页](https://pic.code-nav.cn/post_picture/1601072287388278786/HZe8NkF8on0lv3G2.jpg) 一路往下翻,能看到它每个月都发布了什么。翻到最底下,2025 年 1 月那一排里躺着当初全网爆火的 DeepSeek-R1。 ![R1 时期](https://pic.code-nav.cn/post_picture/1601072287388278786/slmotwElVVBItYaY.jpg) 到现在已经过去一年零八个月了。爷青回啊…… ## 5、查看单个模型的一生 点开最新的 DeepSeek V4.1 Flash,先看到的是它的身份卡。 ![模型详情页](https://pic.code-nav.cn/post_picture/1601072287388278786/M94s5EKijkYBfYA3.jpg) 这是一个视觉模型,中等价位、能读长文、会看图,而且开放权重。上面那条小时间线告诉你它是从 V4 Flash Vision Exp 这个视觉实验模型进化过来的,属于同一个系列的第二代。 右边的能力条里,记性那一项是满的,上下文窗口 100 万 tokens。网站还给了个换算,说这个长度一次能读完《哈利·波特》全七部,比干看一个数字有感觉多了。 继续往下,能看到 AI 的身世和战绩: ![身世与战绩](https://pic.code-nav.cn/post_picture/1601072287388278786/2J9df3vafTX2MXaV.jpg) 发布日期、知识截止、开源许可、输入输出价格都列在左边,右边是各项专业测试的评分。V4.1 Flash 刚发布不久,几个学术榜单还没收录它,所以这里老老实实写着「未参评」。 这一点我专门跟 AI 强调过,没有成绩就写没参评,绝对不许用估算值把空缺填上。一个模型没被测过,不代表它不行。 页面最底下,还能刷到各位 UP 主对这个模型的评测视频。 > 对了,下图第一个评测视频的博主是狗 🐶 ![B 站评测视频](https://pic.code-nav.cn/post_picture/1601072287388278786/qkughAxvoBwne8ze.jpg) 这些视频是用 B 站公开的搜索接口抓回来的,搜索词就是模型名加上「测评」两个字,抓到的结果按播放量排好序存进仓库,页面直接读,我完全不用手动挑选视频。 至于第一条为什么是我自己的视频,因为站长的视频会置顶,算是我给自己开的一个小后门,很合理吧? ## 6、几百个模型的发布史,一条时间线看完 看完 DeepSeek,别的模型又是怎么一步步发展过来的呢? 切换到「时间线」,全世界 556 个主流 AI 模型,按发布月份从新到旧都排好了! > 彩色名字表示这个模型有第三方综合评测成绩 ![时间线](https://pic.code-nav.cn/post_picture/1601072287388278786/NBD16DoaSjr9zait.jpg) 光是 2026 年 8 月这一个月,就有 33 个模型发布,密密麻麻铺满了大半屏,太卷了! 一路往下翻,最早的记录停在 2023 年 3 月。也就是说,从 AI 全面爆火到现在,满打满算才三年半,AI 的进步真的是太快了。 ## 7、模型排行榜 如果你好奇现在哪些模型能力最强,哪些模型性价比最高、适合日常办公,那就去看排行榜。 ![排行榜](https://pic.code-nav.cn/post_picture/1601072287388278786/XU8FMDIdp3xYHMWH.jpg) 这里一共有 81 个榜单,综合智力、性价比、上下文窗口、最便宜,还有 SWE-bench、Terminal-Bench 这些专门测编程能力的。 榜单上方可以按地区、开源闭源、模型类型来筛选,非常灵活~ ![开源赛道排名](https://pic.code-nav.cn/post_picture/1601072287388278786/p5Qzr0u21hOiK9Ik.jpg) 开源赛道的冠军是国内的 Kimi K3,综合智力 157.6,放到全球总榜上排第 11,已经很逼近国外顶级闭源模型的水平了。 更有意思的是前十名里有九个都来自国内厂商,月之暗面、深度求索、智谱轮着上,国产加油! ## 8、数据是怎么来的 做这个网站的时候,我给 AI 定的第一条规矩就是:**上线之后不能靠我人工维护**。 所以整套数据都是脚本自动同步的。利用 GitHub Actions 自动化,每 12 小时跑一次,从 Epoch AI 拿综合智力评测、从 models.dev 拿模型规格和价格、从 LiveBench 拿各项能力成绩,合并之后生成一份快照提交进仓库。 新模型发布之后,最快半天就会自己出现在 AI 大模型世界里,我不用动一根手指~ ![](https://pic.code-nav.cn/post_picture/1601072287388278786/2CRHggESpfQFliaZ.jpg) ## 最后哔哔 这个网站我已经完全开源了,代码和数据都在 GitHub 上,你想自己部署一份、或者改成你喜欢的样子都没问题。 > 开源指路:https://github.com/liyupi/ai-model-world ![](https://pic.code-nav.cn/post_picture/1601072287388278786/RiEcwlkmb0di9bWp.jpg) 同时它也部署到了 [B 站的 Toy 平台](https://bilibili.com/toy/ai-model-world),完全免费、免登录、免注册,打开就能用。 ![](https://pic.code-nav.cn/post_picture/1601072287388278786/GO2d2HoB82M8e17H.jpg) 说真的,这个项目技术上没什么难度,就是一堆数据抓取加一个静态页面。但在有 AI 之前,光是把几百个模型的参数和评测成绩整理成表格,就够我折腾一整个周末了。现在我只要把想法讲清楚,剩下的交给 AI,几天就能做出一个能自己跑起来的完整产品。 如果你也想试试用 AI 做点自己的小工具,我写了一套免费开源的 [《AI 编程零基础入门教程》](https://ai.codefather.cn/vibe),上千张图、几十万字,带你从 0 开始快速学会 AI 编程,做出自己的产品、跑通变现全流程,一次拿捏。 > 开源指路:https://github.com/liyupi/ai-guide ![鱼皮的 AI 编程教程](https://pic.code-nav.cn/post_picture/1601072287388278786/JHdv25y1FzEYoAP1.jpg) 我是鱼皮,持续分享 AI 编程干货。觉得有用的话记得点赞收藏和关注哦~

耄耋专属AI Loop全自动编码器技术笔记

> 写给想了解「多AI Agent 在大LOOP时代怎么真上线」的同学 ## 一句话 **Loop Engineering 时代,别只在聊天里写代码——用多 AI Agent,跑一条自己干活的交付 Loop。** 先给这套 Loop 代码编排器定一条简单主线: **需求 Issue → 多角色 AI 协作 → 脚本验证与独立审阅 → 合并 → 固定脚本部署 → 看板盯进度。** 人定目标和验收;AI 负责中间大部分实现与自检;模型不直接登录生产。 --- ## 为什么不只「开个 Cursor 窗口」 聊天式助手擅长帮你改文件,但上线仍要人拉分支、补测、发版、盯结果。Loop 把这些环节收成固定流水线: | | 聊天式 AI 编程 | Loop | |---|---|---| | 起点 | 粘贴上下文 | Issue / 看板目标 | | 过程 | 人来回追问 | 多角色自动推进 | | 质量 | 靠自觉 | 脚本验证 + 独立审阅 | | 上线 | 手工发版 | 确定性发布脚本 | | 可见性 | 对话记录 | 看板阶段与应用入口 | 一句话:**助手帮你写;Loop 帮你把需求送到可点开的版本。** --- ## 技术骨架:三层分工 ```text 触发层 Forgejo Issue(ai-ready) / 看板「新建项目」 编排层 Worker + loopctl + Hermes 五角色 Profile 落地层 verify.sh → PR 合并 → SSH/Compose 发布 → sslip 域名跳转 ``` - **触发层**:习惯还是 Git Issue;新产品也可在看板填「仓库名 + 目标」一键建仓。 - **编排层**:分析 → 架构 → 编码 → 测试 → 审阅;审阅打回最多返工 3 轮;单阶段约 30 分钟超时。 - **落地层**:过门后由脚本部署,看板只监控和跳转,不托管业务前端。 密钥只在服务器 `secrets/`,不进仓库。 --- ## 多 Agent:故意「拆开」,不让一个模型既当运动员又当裁判 | 角色 | 做什么 | 典型产出 | |---|---|---| | 分析 | 收成可验收目标 | `spec.md` | | 架构 | 拆任务、定边界 | `plan.md` | | 编码 | 改业务代码与测试 | 仓库 diff | | 测试 | 独立补测、跑验证 | 测试报告 | | 审阅 | 只评不改,给通过/打回 | `review.json` | 执行侧用 Hermes 多 Profile,工具集刻意收窄(文件 / 终端 / 必要时代码执行),并设轮次上限,避免一轮对话无限烧 Token。 模型也可分层:编码侧重代码模型,测试用更快模型,审阅用更稳的模型——**质量门与写代码的人不是同一个「脑」**。 ## 配置落在哪 ### 编排层(仓库) `config/loop.json` 只规定: - 五角色各自用哪个 Profile 名 - 工具集(分析 / 架构 / 审阅:`file,terminal`;编码 / 测试再加 `code_execution`) - 单阶段轮次上限、YOLO、返工次数、超时 其中 `hermes.models` 可以按角色覆盖模型名;**留空则用 Profile 默认值**。 ### 执行层(服务器 Hermes) 真正的模型 ID、`base_url`、API Key 写在各 Profile 的 `config.yaml`(例如 `/root/.hermes/profiles/loop-coder/config.yaml`)。 线上现行大致是: | 角色 | 模型 | |---|---| | 分析 / 架构 / 编码 | `ark-code-latest`(火山方舟选GLM5.2) | | 测试 | `deepseek-v4-flash` | | 审阅 | `deepseek-v4-pro` | ![image.png](https://pic.code-nav.cn/post_picture/1949837726039801857/qyhrlcPGr0p4yuOR.webp) ### 小技巧 如果想真正的分饰多角,完全可以多买几个便宜的Agent Plan分别挂不同对应角色能力的**LLM**,但这里由于成本控制的原因,最少两个**LLM**对应不同能力就可以完成基本工作了。 ### 人格层(SOUL) 仓库 `roles/*.md` 同步进各 Profile 的 `SOUL.md`,约束「只做什么、不做什么」: - **模型**负责能力 - **SOUL**负责边界 ### 调用链 ```text Issue Worker → loopctl → 对应 Profile 的 Hermes(--oneshot,瘦工具集)→ 该 Profile 配置的模型 ``` --- ## 有边界的自治(比「全自动」更重要) **会自动做:** 读仓、改码、跑校验、开/合 PR、按脚本部署。 **不会自动做:** 没目标乱开需求、跳过质量门上生产、把密钥写进 Git。 **人能介入:** 看板看卡点、一键重跑;紧急可停 Worker。 发布永远走 `release.sh` / SSH 一类确定性路径,而不是让 Agent 临时拼命令登生产。 --- ## 看板:把黑盒变成进度条 看板回答三件事: 1. 现在跑到哪(分析 / 架构 / 编码 / 测试 / 审阅 / 发布) 2. 有没有被打回、卡在哪 3. 应用在哪打开(当前交付 + 历史项目各自地址) 多项目时:**一仓一应用、独立端口、独立 `*.sslip.io` 域名**。改哪个程序,Issue 就开在哪个仓库。 ![屏幕截图 2026-07-17 101839.png](https://pic.code-nav.cn/post_picture/1949837726039801857/vzxWZOa0ms6Yb4jN.webp) ![image.png](https://pic.code-nav.cn/post_picture/1949837726039801857/1ocJMbOLzlYeaFoH.webp) --- ## 一次真实路径长什么样 1. 看板新建,或在目标仓开 Issue 并打 `ai-ready` 2. Worker 领取 → 工作区拉出 `ai/issue-N` 分支 3. 五角色流水线跑完,产物落在 `.loop/current/` 4. 质量门通过 → PR 合并 5. `deploy_once` 部署 Staging/Production,写好跳转域名 6. 打开 `{项目名}.xxx.sslip.io` 验收 试点里我们用这条链路交付过多智能体对话应用、内容创作平台等——从「一句话目标」到「浏览器能点开」,中间大部分由流水线完成。 ![屏幕截图 2026-07-17 135748.png](https://pic.code-nav.cn/post_picture/1949837726039801857/QeDPNBsgcC0eGPRp.webp) --- ## 适合什么,不适合什么 **适合:** 中小功能、脚手架增量、内部试点、需求边界写得清的迭代。 **暂不适合:** 无人值守改核心账务、无评审的大重构、强合规唯一发布通道。 产出质量仍然取决于:需求是否写清、模板是否匹配、模型额度与提示词。 ## 目前Loop编排器自动完成的项目展示 ![屏幕截图 2026-07-17 173309.png](https://pic.code-nav.cn/post_picture/1949837726039801857/iIJFRoDbuEHBwOyS.webp) ![image.png](https://pic.code-nav.cn/post_picture/1949837726039801857/ecCh8tkQL47ZOger.webp) ![image.png](https://pic.code-nav.cn/post_picture/1949837726039801857/9rE2dyaB0kfRO0iU.webp) --- ## 结语 Loop 的技术选择可以概括成三句: 1. **角色分离**,降低「自写自审」幻觉; 2. **脚本守门**,模型负责想和改,脚本负责过不过、能不能上; 3. **看板可见**,自动跑也不变成黑盒。 它不是取代工程师,而是把重复的「领任务 → 改代码 → 验证 → 发版」收成一条可观测流水线,让人把时间花在目标与验收上。

别再跟 AI 死磕 prompt 了,我写了个 Loop 让它自己改到满意为止

> 我昨天凌晨两点还在跟 Deepseek 较劲。就为了一篇奶龙按摩椅的小红书广告文案,我改了八版 prompt,从 "写个爆款文案" 到 "标题必须带数字,正文不超过 300 字,结尾要有行动号召,要像小红书博主那样说话",结果它要么标题不带数字,要么写了 400 多字,要么结尾就是 "快来购买吧" 这种干巴巴的话。 **帅哥美女们帮我的掘金点点赞呗😘👍 完整文章地址👉:https://juejin.cn/post/7653409231857287231** > 我盯着屏幕,手指悬在回车上面,突然觉得特别荒谬。我这是在干嘛?不就是生成、检查、不满意、调整 prompt、再生成吗?这不就是个循环吗?我一个写代码的,为什么要自己当这个循环的人肉执行器? 就在这个时候,我刷到了那条 OpenClaw 开源项目创始人彼得·斯坦伯格发布的 780 万浏览的推文。 ![image.png](https://pic.code-nav.cn/post_picture/1806249471285702658/K3l5KcGLtwcwJZ9O.webp) ## 原来我一直在做最笨的事 说实话,看到这句话的时候我愣了一下。我一直以为用好 AI 的关键是写好 prompt,是把话说清楚,是用各种技巧让 AI 理解我的需求。结果人家开源大佬说,别写 prompt 了,写 Loop。 我翻了翻评论区,发现 Claude Code 的作者也在下面附和,说他现在也不写 prompt 了,只写 Loop。 我突然反应过来,我每天和 AI 的交互,本质上就是一个手动的循环。我给 AI 一个指令,它输出结果,我检查结果是否符合要求,如果不符合,我就修改指令,再让它输出一次。这个过程,除了 "检查" 这一步需要人的判断,其他都是机械重复的。 那为什么不把这个检查也交给 AI 呢? ## Loop 到底是什么?说穿了就是三件事 我之前对 Loop 的理解,就是 for 循环、while 循环,就是重复执行一段代码。直到我看到这张图,才突然把这个概念想透了。 ![image.png](https://pic.code-nav.cn/post_picture/1806249471285702658/LA6vn80yz0gPztuT.webp) ### 任何一个有用的 Loop,都必须回答这三个问题: #### 1. 从哪里开始? #### 2. 重复做什么? #### 3. 什么时候停止? 就这么简单。你炒菜的时候,从洗锅开始,重复 "炒一下、尝一口、加点盐" 的动作,直到味道合适了就停。你写报告的时候,从第一页开始,重复 "写一段、读一遍、改一改" 的动作,直到领导满意了就停。 缺了第三个问题,就是死循环。程序会一直跑下去,直到内存溢出或者你的 API 额度烧光。 我之前的手动循环,停止条件就是 "我满意了" 或者 "我累了"。现在我要做的,就是把这个停止条件变成代码能理解的规则。 ## 原来大模型自己就是这么学会的 更有意思的是,我们现在用的所有大模型,本身就是用 Loop 训练出来的。 ![image.png](https://pic.code-nav.cn/post_picture/1806249471285702658/ChqfRNEdvuEgI3ik.webp) 你看,AI 训练的逻辑,也是一个完美的 Loop: * 给模型看一批数据 * 计算它的预测和正确答案差了多少 * 根据这个差值调整模型的参数 * 再拿一批新的数据,重复上面的步骤 万亿次这样的循环之后,AI 就学会了对话、写作、写代码。 那我们用 AI 的时候,为什么不用同样的逻辑呢?让 AI 自己生成,自己检查,自己调整,直到满足我们的要求。 ## 我写了个能跑的最小 Demo 说干就干,我花了半小时搭了个最简单的项目结构。 ![image.png](https://pic.code-nav.cn/post_picture/1806249471285702658/TNzTfdvNusRLX5XU.webp) 因为 Deepseek 的 API 兼容 OpenAI 的格式,所以我直接用了 openai 这个包,省得自己写请求了。 ```javascript import { OpenAI } from 'openai'; import dotenv from 'dotenv'; dotenv.config(); const client = new OpenAI({ apiKey: process.env.DEEPSEEK_API_KEY, baseURL: process.env.DEEPSEEK_API_BASE_URL, }); // 注意这三个参数,坑了我半小时 const limit = { maxRound: 5, // 最多循环5轮,防止死循环 maxToken: 2000, // 最多消耗2000token,防止烧钱 sameStop: 2 // 连续2次输出相同内容就停止,防止AI摆烂 } const task = { desc: "奶龙按摩椅广告文案", rules: ["标题带数字", "正文 < 300 字", "大爆款", "结局有行动号召"] } let round = 0, totalToken = 0, sameCount = 0, lastText = ""; // 循环的停止条件,三个满足任意一个就停 function needStop(){ return round >= limit.maxRound || totalToken >= limit.maxToken || sameCount >= limit.sameStop; } // 生成文案 async function gen() { const res = await client.chat.completions.create({ model: process.env.DEEPSEEK_API_MODEL, messages: [ { role: "user", content: `假如你是一位小红书资深广告文案博主,写一篇${task.desc},严格遵守:${task.rules.join('、')},只输出文案` } ] }); console.log(`消耗token: ${res.usage.total_tokens}` , `\n生成内容:\n${res.choices[0].message.content}`); return { text: res.choices[0].message.content.trim(), token: res.usage.total_tokens }; } // 检查文案是否符合要求 async function check(text) { const res = await client.chat.completions.create({ model: process.env.DEEPSEEK_API_MODEL, messages: [ { role: "user", content: `请检查文案是否符合要求:${text} 严格遵守:${task.rules.join('、')} 仅输出 JSON {pass: 布尔, fail: 数组}` } ] }); return JSON.parse(res.choices[0].message.content.trim()); } // 主循环 async function runLoop() { console.log('AI Loop 开始运行'); while(!needStop()){ round++; console.log(`\n===== 第 ${round} 轮 =====`); const { text, token } = await gen(); totalToken += token; // 检查是否连续输出相同内容 sameCount = text === lastText ? sameCount + 1 : 0; lastText = text; const { pass, fail } = await check(text); if(pass){ console.log(`\n✅ 文案符合要求,通过检查!`); console.log(`最终文案:\n${text}`); return; } console.log(`❌ 文案不符合要求,问题:${fail.join('、')}`); } console.log(`\n⚠️ 触发刹车机制强制停止,最后一次生成的文案:\n${lastText}`); } runLoop(); ``` 然后在.env 文件里填上你的 Deepseek API 密钥和模型就可以跑了。 ## 我踩过的那些坑,你别再踩了 说实话,这个 demo 我写了三遍才跑顺。 第一版我只加了 maxRound,结果有一次 AI 生成的内容一直不合格,循环到第五次就停了,输出的还是一堆垃圾。我当时就想,不行,万一 AI 前五次都没做好,第六次突然开窍了呢?但如果不加 maxRound,万一死循环了怎么办? 后来我想到了加 maxToken,根据你的预算来设置,比如我设置的 2000token,大概也就几毛钱,就算死循环了也损失不大。 最坑的是 sameStop 这个参数。我之前没加这个,结果有一次 AI 连续三次输出一模一样的内容,它自己还觉得没问题,一直在那循环。我看着控制台刷刷刷地跳 token,赶紧把进程杀了。后来才明白,AI 有时候会摆烂,当它觉得自己怎么都满足不了你的要求的时候,就会输出同样的内容敷衍你。这时候就必须有个机制来检测这种情况,及时停止。 `一定要设置这三个停止条件!一定要设置这三个停止条件!一定要设置这三个停止条件!不然你早上起来可能会收到一张几百块的 API 账单。` ## 这个方法到底好在哪?又有什么问题? 我跑了几次这个脚本,效果超出我的预期。以前我要花十几分钟反复改 prompt,现在我只需要写好任务描述和检查规则,然后去喝杯咖啡,回来就能拿到符合要求的文案。 它最大的优势就是把你从重复的劳动中解放出来。你不用再盯着屏幕等 AI 输出,不用再一字一句地检查,不用再绞尽脑汁想怎么把 prompt 写得更清楚。你只需要告诉 AI"什么是合格的",剩下的交给循环。 但它也不是没有缺点。最明显的就是 token 消耗高。因为每一轮都要调用两次 API,一次生成,一次检查。我这个 demo 跑一轮大概要消耗 300-500token,跑 5 轮就是 1500-2500token。虽然 Deepseek 的价格很便宜,但如果是更复杂的任务,token 消耗会非常可观。 所以这个方法更适合那些有明确规则、可以量化检查的任务。比如写广告文案、生成测试用例、格式化数据、检查代码规范等等。如果是需要非常有创意、没有明确标准的任务,比如写小说、画插画,这个方法就不太适用了。 ## 最后说几句我真正的收获 昨天晚上写完这个脚本,我躺在床上想了很久。 以前我总觉得,AI 是一个工具,我给它一个指令,它给我一个结果。如果结果不好,那就是我的指令写得不好。所以我一直在研究怎么写更好的 prompt,怎么用更精准的语言描述我的需求。 但现在我明白了,AI 不是一个一次性的工具,它是一个可以迭代的系统。我们不应该追求一次就得到完美的结果,而应该设计一个循环,让 AI 在这个循环里不断地自我修正,直到满足我们的要求。 这大概就是那条推文真正想告诉我们的道理。 如果你也写过这种 AI Loop,或者有更好的停止条件设计,欢迎在评论区告诉我,我也想学习一下。

下载 APP