UZI-Skill 深度评测:7,602 Star 的 66 位投资大佬评审团,989 项测试全绿,A 股跑得通、美股会崩

UZI-Skill 深度评测:7,602 Star 的 66 位投资大佬评审团,989 项测试全绿,A 股跑得通、美股会崩

想知道手里那只票到底行不行,很多人第一反应是丢给 AI 问一句。回答通常是一段”综合来看,估值合理,注意风险”——听着都对,读完什么也没多知道。

今天要评的 UZI-Skill,就是冲着这个痛点来的:它不让一个 AI 给你一段话,而是让 66 个”投资大佬”各自打分投票。7,602 星、开源许可、11 月 11 日还在提交。我把它拉下来按它自己的流程跑了一只票,结果是:一份 750KB 的报告,66 位评委里 29 位直接弃权。

弃权不是失败。恰恰相反,这是这个项目里最有意思的设计。这一篇讲的是它到底怎么做到”66 个人各说各的”,以及这套玩法在哪些地方站得住、哪些地方站不住。

它到底是个什么东西

先说一个容易被误导的地方。它在 GitHub 上看起来是一个 skill(技能,也就是给 AI 助手读的一份操作手册),根目录那份说明文件只有 2,417 字节,短得像一张便签。那不是它的全部。

那份便签只做一件事:告诉 AI”你要干什么,就去看哪份文档”。真正的活在 skills 下面的四个子技能里,其中主流程那一份有 57,898 字节,是根文件的 24 倍。

四个子技能分工很明确:主流程那份(deep-analysis)管抓数据、算分、建模、出报告,57,898 字节;评审团那份管让 66 位投资人各自打分,4,431 字节;龙虎榜那份管认游资席位、判断谁在买,只有 1,745 字节;杀猪盘检测那份列了 8 个信号、四档风险评级,3,054 字节。最小的一份只有主流程的三十三分之一——这个落差本身就说明,真正的工程量都压在数据那一头。

而”技能”这个词在这里也名不副实。我把仓库整个数了一遍:251 个 Python 文件、53,460 行代码,其中光是抓数据的脚本就有 22 个、合计 5,364 行。说白了,这不是一份提示词,这是一个打分引擎,只是碰巧用技能的形式分发。

它的核心思路值得单独讲一句:它不预测涨跌。它做的事是把同一份数据,用 66 种不同的偏见各看一遍,然后把分歧摆出来。巴菲特看的是”ROE(也就是净资产收益率)连续五年超过 15%”和”生意别人难以复制”,格雷厄姆只看”市盈率低于 15″,游资看的是”近 30 天龙虎榜有没有热度”。同一只票,这几个人给出的结论本来就该不一样——这个项目最诚实的地方,是它把这件事实做成了产品。

我自己跑了一遍

第一条证据,它自带的测试是真的能跑通的。我按它官方持续集成(也就是每次提交代码自动跑的那套检查)的口径,在隔离环境里装依赖、跑全量测试:989 个通过、1 个跳过、0 失败,耗时 10.5 秒。

这里要说明一处对不上的地方:它项目首页写的是”离线回归 948 passed、1 skipped”。我跑出来是 989,比它自己的数字多 41 个。多半是文档更新滞后于测试增量,不是坏事,但一个把”证据”当卖点的项目,自己首页的数字应该跟得上。

另外两道官方闸门也过了:一道检查仓库里有没有误传真实交易数据,输出检查通过;一道检查依赖有没有版本冲突,输出无冲突。

顺带把”22 维数据”这句也对了一遍:代码里正经的维度校验表是 20 项,另外两项是基金持仓和相似股——它们不参与打分,只负责在报告里补两张卡片,代码注释写明任何档位都必须照跑。所以 22 是”20 个打分维度 + 2 张附加卡片”,宣传上凑了个整,不算虚报,但读者会以为有 22 个维度参与评分。

第二条证据,规则数它自己说了三个版本。项目首页开头写”242 条量化(也就是可判定真假的条件)规则”,正文另一处写”共 236 条”,发布记录里又留着”180 条”。我去源码里数了一遍:规则表里确实是 66 位评委、合计 242 条,所以 242 这个数字站得住。但还有个它没说的:这 242 条规则只对应 178 个不同的规则编号,有 10 个编号被多人共用,重复引用占了全部规则的三成——”热度高””处在上升趋势””龙虎榜活跃”这类判断,在游资派里被十几二十个人各引用一次。

第三条证据,也是我觉得最值得写的一条:66 这个数字,三处对不上。

我数的地方 数字 说明
评委名单(源码里的名单表) 66 与宣传一致,代码里还有一句断言把它锁死
persona 档案(每位评委的人物设定文件) 51 其中 12 个手写、39 个是自动生成的空壳
头像文件 66 每个评委一个,不缺

也就是说:51 份档案里,12 份是手写的完整方法论,另外 39 份是脚本生成的空壳;剩下 15 位评委连空壳都没有,只有一个头像和一串”他该看哪几个数据维度”的字段清单。它自己的文档写得很坦白——12 个是”旗舰”,39 个是自动生成的空壳,最新加入的 13 位”暂无档案,按其公开言论风格演绎即可”。

说白了,宣传语里”66 位投资大佬帮你看盘”,实际是12 位有完整方法论,其余 54 位靠一套共用的规则表加头像撑场面。这不一定是骗人——规则表是实打实写的,每条都有明确的判定逻辑——但”66 个人格”和”12 个人格 + 54 个标签”是两件事。

第四条证据,评审团跑起来会大面积弃权。我用一只白酒龙头跑了一遍完整流程,66 位评委的结果是:29 人弃权、17 人看空、14 人看多、6 人中立。弃权的理由分三类——22 位游资嫌它市值太大”不在射程”、几位评委的规则判定”没有可核验的数据”、还有一位的方法论干脆被标注为”尚未实现”。

这个结果我认为是对的:让打板的游资去评价一只一万七千亿市值的票,本来就是错配。但对读者来说,这意味着”66 位评审团”在真实标的上普遍只有三十几位真正投票——你看到的共识度,是这三十几位的共识。

第五条证据,一次性印证了它的天花板和地板。同一套代码跑美股时直接崩了:在生成报告摘要的一段里,代码拿”资产负债率”去做大小比较,而这个字段在美股数据里是空的,程序抛出一个类型错误,整条流程中断。A 股跑得通,美股跑挂了——原因不是模型不行,是它默认某些财务字段一定存在。

第六条证据,数据源在海外到底通不通。这是读者最关心的现实问题。它的依赖清单里三个行情源都是免费、不用申请密钥的,我在有网的隔离环境里实测:

实测对象 结果
东方财富行情接口 连测 6 次全部成功,每次 1.6–1.9 秒
腾讯行情接口 一次成功,0.67 秒
美股数据源 取 5 个交易日收盘价,0.79 秒
A 股数据源库单独调用 被对方限流,报错原文写明”当前 IP 被临时限流,首次约 5 分钟后恢复”

所以”海外机器能不能用”这个问题,答案是能,但要看运气:直连两个行情接口很稳,走那个汇总库则随时可能被限流,而它的抓取脚本大量走后者。文件里那个可选的付费密钥,缺了它少的是两项增强——中文名纠错和更稳的行情快照——不影响主流程。

工程质量这一面

挑完毛病得说公道话,这个项目的自律程度超出预期。

86 个测试文件、13,729 行测试代码,比很多同体量项目的业务代码还多。它的持续集成里有一条很罕见的检查:扫描仓库索引,确认没有误传真实交易数据——一个做股票分析的项目,主动给自己上了这道锁。文档里还留着一条 2026 年 6 月的记录:有个功能在某个接口上会卡将近两小时,他们改成直连并加了 15 秒硬超时。这种”记录卡在哪、怎么修的”的日志,比功能列表有说服力得多。

局限同样明确。第一个是数据:所有结论都建立在免费数据源上,这些源没有服务承诺,限流、改接口、字段缺失都是常态,上面那个美股崩溃就是字段缺失直接炸的。第二个是可复现性:评分结果对同一份输入是稳定的(我连跑两次分数完全一致),但它对”口径”很敏感——我试过同一组财务数字用两种常见写法喂进去,有一位评委的结论直接从看多翻成看空。也就是说,它能复现,但前提是你喂进去的数值得按它默认的口径来。第三个是角色扮演部分:那 12 位有档案的评委会引用具体的历史言论和比喻,另外 54 位只能靠规则表说话,读者很容易把两者当成同一种东西。

最后一句必须写清楚:这个项目所有的输出,都不构成投资建议。它是一台把公开数据按不同流派切成不同结论的机器,不是一只会看盘的脑子。

放进坐标系里看

站内评过两篇股票类项目,值得对照。10 月底那篇多市场股票分析系统 讲的是多市场分析系统的管道和熔断;11 月初那篇 a-stock-data 讲的是数据接口的可用性。这两篇问的是”数据准不准、跑不跑得动”。

UZI-Skill 问的是另一个问题:同一份数据,不同的钱会怎么想。它把”分歧”做成了产品,这个角度在站内还是头一份。

适合谁:想快速看到一只股票在不同流派眼里的分歧点、又不满足于一句话结论的人;想研究”人格化投票”这套玩法怎么落地的人。

不适合谁:想要买卖信号的人——它明确不给;做美股的人——这条流程我实测是崩的;以及任何打算把输出直接当决策依据的人。

值得一试,但别当预言机

我的判断是:这是一个值得装进观察清单的项目,不是因为它能预测什么,而是因为它是目前少见的把”多方偏见”工程化的样本。989 个测试全绿、242 条规则可数、66 个评委里 29 个敢说自己不适用——这几件事加在一起,比任何一句”AI 帮你看盘”都可信。

真正要盯的是它自己承认的那部分:54 位评委还没长出人格、美股流程会崩、数据源随时可能被限流。这三件事补上之前,它是一台很好的”分歧展示机”,还不是分析师。

关注 AI商业快讯,每天一篇 AI 热点深度解读。

gentle-ai 深度评测:8987 Star 的编码代理配置器,一次写进 18 个助手的规矩文件

gentle-ai 深度评测:8987 Star 的编码代理配置器,一次写进 18 个助手的规矩文件

用 Claude Code 写代码的人,多半都干过同一件蠢事:把「提交信息用中文、别加 AI 署名、改完必须跑测试」这几条规矩,一遍遍贴进每个新项目。换台电脑要重贴,换个工具还要再贴一遍,写成什么样全凭当天心情。

gentle-ai 想一次解决这件事。它不造新的 AI 助手,而是给你已经在用的那个「装规矩」:把记忆、工作流、技能库、代码审查这一套,一次写进 18 种不同编码助手的配置文件里。项目 8,987 星,MIT 许可,Go 写成,最近一次提交就在今天。

我把它装进一个隔离的空账户里跑了一遍。结论先说:它确实一次配好了,代价是往你电脑里塞进近一千二百个文件,还把一份用不上的 43MB 仓库副本一起带了进来。

它到底替你做了什么

「支持 18 个助手」这句宣传,我先去代码里数了一遍。决定「选哪个助手、走哪套适配」的那个文件里,正好 18 个分支,对应的都是主流编码助手,从 Claude Code、Cursor 到 Codex、OpenCode,再到 Gemini CLI 这一档。

通俗讲,它是一把万能转换插头:你手里是哪个牌子的充电器,它就换出哪个牌子的插孔,插座本身不用动。

装的时候你不用一件件挑,它按一个叫「预设」的清单一次性铺开:

装了什么 干的什么活 落到你电脑的哪儿
人设与规则 一段几万字的开发规矩,写进助手的全局指令文件 ~/.claude/CLAUDE.md
技能库 8 个可复用技能,比如「一个提交只做一件事」 ~/.claude/skills/
记忆 一个叫 Engram 的独立程序,跨会话记住项目决策 ~/.local/bin/engram
提交前审查 一个叫 GGA 的脚本,commit 前让 AI 看一眼改动 ~/.local/bin/gga
审查引擎 项目自己的一套代码审查流程,可开关 写进助手的钩子系统

我装了一遍,三个数字值得记

装的过程很顺。我把「家目录」指向一个空文件夹,等于给它在沙漠里盖了间房,装完对真机零影响。全程两百多秒,最后一步打印「25 项自检通过,0 失败」。

但清点成果时,有三个数字值得记下来。

第一个:1,188 个文件。 这是它在你账户下新建的文件总数,其中 1,171 个都在 .claude 这一个目录里。真正有内容的是几百个,剩下的是那份记忆程序仓库的完整副本。

第二个:43MB。 这是 .claude 目录里那块「插件市场」缓存的大小,其中 15MB 是版本历史。为了让你多一个记忆功能,它在配置目录里留了一整个项目的源码。对 20G 硬盘不算什么,但对「只想配个规矩」的人来说,这个体积来得莫名其妙。

第三个:8 个技能,索引里只登记 7 个。 装完的技能目录里有 8 份说明书,但项目自带的技能索引只列出 7 条。少掉的不是出错,是它主动跳过了一个共享文件夹,和「管理索引的那个技能」本身。这个逻辑说得通,只是你按「9 个」去数会对不上。

32 万行测试守着 20 万行实现

对一个「配置文件生成器」来说,这个仓库的体量是反常的。

去掉测试,它的 Go 代码有 19.7 万行;测试代码 32.5 万行,比实现还多 65%,相当于每写 1 行逻辑就有 1.65 行测试盯着。测试函数 7,602 个,分在 95 个包里。我随手跑了其中四组(代理适配、技能索引、数据模型、遥测),二十多个子包全部通过,最慢的一组用了 7 秒。

这个比例意味着什么?意味着作者把「配置写错一个字符就可能弄坏别人电脑」当成了头号风险。它也解释了另一个数字:仓库里有 60 份 JSON 格式的接口契约,合计近 1.1 万行,专门规定审查流程的每一步该传什么、返回什么。这是「先定合同再写代码」的写法。

我自己也跑了一遍它最核心的审查功能。拿一个假的 Git 仓库,改一行 Go 代码,它判断风险为「中」,要求跑 1 项检查;改成只动 Markdown 文档,它直接判定低风险、无需审查。这个分寸是对的,不是一律拦下,也不是一律放行。

三个坑,写在这儿免得你自己踩

坑一:遥测默认开着。 装完我第一件事就是查状态,显示「已启用(默认)」,还带一个安装编号。安装日志写明了发送什么:版本号、操作系统、装了哪些助手、各类计数;某些集成下还包括用的是什么模型、消耗多少 token、耗时、错误类别。它给了关闭命令,也没藏着掖着,但默认开着这件事,介意的人得自己动手。

坑二:仓库根目录那份基准成绩,是事故留下的。 仓库里有个文件记着自动化测试的成绩,打开一看只有 1 条记录,状态还是「失败」,失败原因写着「不是一个 Git 仓库」。更奇怪的是里面记的可执行文件路径,指向一个临时目录。

我去翻了项目自己的复盘文档,找到了答案:这份文件是从开发机的工作目录里被顺手 git add 扫进去的,作者把它列进「工具层面的意外」。真正完整的那份在另一个目录,64 条记录全部完成。这条不影响你使用,但它说明一件事:连这个项目自己,也会被「顺手一把梭」坑到。

坑三:被拦下时,近六成不告诉你下一步。 仓库自带一份衡量「AI 助手操作体验」的基准测试,64 个场景里共有 69 次拦截。其中 29 次给出了可直接复制的下一步命令,另外 39 次只说「不行」,不告诉你该敲什么。项目自己的说法是,这 39 次里有些确实给不出命令(比如「你得自己去改代码」),属设计如此,但比例仍然偏高。

谁该装,谁别急

和它同一赛道的东西大致三类。一类是各家助手自己的规矩文件,最省事,但换工具就得重写;一类是技能包合集,管「装什么能力」不管「写代码的规矩」;第三类就是它这种总配置器,一次覆盖多个助手。

如果你同时在用两种以上编码助手,或者经常换机器,它的价值是实的:一次配置,十八个工具通用。如果你只用其中一家、且已经有自己的规矩文件,装它是拿 43MB 磁盘和一整套新概念去换一点便利,不划算。

还有一点要有心理准备:它不是一个装完就忘的工具。审查流程会插进你每次提交的动作里,第一周大概率会被它拦几次。要不要留,取决于你愿不愿意为「提交前有个机器看一眼」多花那几十秒。

我的判断是:放进观察清单,用它解决「多工具配置漂移」这个真问题;装之前先把遥测关掉,并且别指望它小。它是个认真过头的工程品,不是一片创可贴。

关注 AI商业快讯,每天一篇 AI 热点深度解读。

Papermorph 深度评测:1,583 Star 的教学技能,把教材 PDF 变成 68 章能点能听的网页课

Papermorph 深度评测:1,583 Star 的教学技能,把教材 PDF 变成 68 章能点能听的网页课

你手上有本教材的 PDF,想让 AI 把它变成课。现在能拿到的基本是两种东西:一份排版整齐的讲稿,或者一堆散装幻灯片。两者有个共同毛病——还得学生自己读。没人念给他听,图不会跟着讲解一步步长出来,学没学会也没人知道。

Papermorph 交出来的东西不是文档,是一本能在浏览器里点、能听、能暂停回退的书。仓库里摆着 68 章的《初等代数》、40 章的《线性代数》,还有纸偶绘本动画和十分钟的纪录片。它 40 天拿到 1,583 颗星。我把整个仓库拉进隔离沙箱,把它自带的检查跑了一遍:自检确实抓得住错误,但这条流水线的代价比我预想的重。

一、它交出来的是什么:一本能点的书,不是一份讲稿

按作者自己的分法,这技能会做三种书。

第一种是课,从教材 PDF 来。公式、图形、场景随讲解一步一步变,中间插随堂小题,章节练习评判的是数学答案对不对,不是字符串像不像。

第二种是绘本,从一个故事、一个笑话或一则童话来。纸偶站在布景前,有配音、字幕、音效、配乐和镜头调度。给还不识字的孩子还留了一手:片子会停下来变成找一找的游戏,角色一次只提一样东西,孩子在图里点出来,点错了也不算错。

第三种是片:把一本书或一个想法做成配旁白的纪录片,或者切成竖屏短片。再往外还有可探索的地图和滚动叙事长页——跟着滚轮走,画面一年一年地变。

这些成品全是静态网页:没有服务器、没有数据库、没有账号。一本书就是一个文件夹,丢到任何静态托管上就能播。我随手取了一页线上成品,一个 4 KB 的网页加一堆本地素材,浏览器里就是能播的片子。

二、怎么做到的:先把书排出来,再让每句话对准一个时间点

这里有个关键概念叫 beat(节拍)。说白了,一个 beat 就是「一句旁白加一组定时动作」:配音生成后,每个词都拿到一个时间戳,画面就按这些时间点去动。所以画面不是猜出来的,是跟着声音算出来的。

这也解释了它为什么能导出视频——既然每一帧都只由时间决定,那逐帧截下来拼成 MP4 就是顺理成章的事。

做书的顺序是先规划再画:先定章节或场景,再写脚本,再画分镜。风格不靠感觉统一,靠一份写进书里的设置文件:用户的话、选的样子、用的嗓音、哪一步用哪个模型,全存在里面,后面每一章都拿它对照。

规模大的章节交给一组子智能体(能自己多步干活的 AI 程序)分工做,每步可以用不同的模型。做完之后模型还得看自己的产出:把多帧缩略图排成一张大图一次看、查画面重叠、查空帧、跑端到端测试,再加一轮「导演审片」,对照已通过的样书挑毛病,然后自己修。

这套思路是它最值钱的地方,也是它最贵的地方——后面我会算这笔账。

三、实证:我把它关进沙箱数了一遍

先交代环境。仓库 816 MB,全量拉会很久,我用了稀疏检出(只下载指定路径的文件)的办法,把技能本体、绘图引擎和四本样书取了下来。沙箱里没有网络时,它那两个不依赖浏览器的检查照样能跑。

体量上,它确实不是一份提示词:

部件 我数出来的数 意味着什么
技能说明 12,167 字节,92 行 它很短,只做分派:按你带来的东西指向参考文档
参考文档 27 篇,26.7 万字节,分 5 类 真正的知识在这里,模型按需去翻
脚本 45 个 Python 文件,50.4 万字节 最大的音效脚本 36.9 KB,音乐脚本 34.6 KB,导出脚本 30.1 KB
模板与素材 68 个文件,1.1 MB 新书是从模板复制出来的,不是凭空生成
成品书 22 本,各自带一份绘图引擎 见下一节

自带的静态检查真能跑,也真能抓错。68 章那本《初等代数》全量检查 2.1 秒跑完,结果是 0 个错误、68 个警告。警告全是同一句:找不到旁白原文,所以旁白这一项没核对。这是我把作者的私有目录一起略过的结果,不算它的问题。

为了确认检查不是摆设,我往一本样书的页面里注了两处故障。第一处让页面自己声明两个和引擎撞名的全局变量,检查报出 4 行「重复声明」,最后汇总 8 个错误。第二处塞进一个没闭合的花括号,检查给出原文:SyntaxError,Unexpected end of input,后面还补了一句「浏览器会把整段脚本停在这里不执行」。两次都准确命中,改回原样后归零。

仓库里还有两层自检:一层查文档与代码对不对得上,跑出来是「31 篇文档、0 个问题」;一层专查旁白文本规则,也是通过。文档里点名的那些脚本——导出视频、打包成课程平台能吃的包、把引擎同步进每本书、本地起一个预览服务——我逐个查了,全部存在,没有一个是文档吹出来的。

四、代价这一面:引擎复制 22 份,依赖链断一环就少一半能力

先说引擎。所有书共用同一个播放器,但每本书里都存了一份副本。这个选择很有道理:一本书坏了,引擎不跟着坏;改引擎也不会顺手把二十本书一起改坏。代价是重复,引擎核心那九个文件 26 万字节,乘上 22 本书就是 5.7 MB 的同一份代码躺在仓库里。我抽查了五本书的核心文件,逐份算校验值,结果完全一致,也都等于引擎源目录里那份;跑一遍同步工具,它回「没有要更新的」。这不是偷懒,是拿体积换稳定,而且换得挺值。

真正让人皱眉的是外部依赖。作者在说明里写了要什么,我把本机当成一台普通开发机来验:

依赖 本机状态 缺了会怎样
uv(Python 依赖的运行器) 有 —
Node.js 有,但默认路径里找不到,要手动指路 不指路,语法检查直接跳过,只留一句「没装 Node,脚本没被解析」
ffmpeg(音视频处理工具) 没有 配音拿不到时长、音频合成不了、导不出 MP4
Playwright 浏览器 没有 检查页面、截图、导出视频、做纸偶动画全废
numpy 没有 导出视频的脚本连启动都做不到

最硬的一条:我直接问导出脚本要用法,它连帮助都没打印出来,就报找不到 numpy 然后退出了。四个引擎自带的页面检查脚本,全都卡在同一句「找不到 playwright」。配音脚本倒是能打印帮助,但它的说明里写着两个配音引擎都需要 ffmpeg,所以也只是能启动、跑不了。

再说一个我自己撞出来的真问题。打包课程平台格式那一步,是这条流水线上少数不依赖浏览器、我本机真跑通的部分:一本样书打出一个 2.3 MB 的压缩包,46 个条目,格式标着 SCORM 2004(教学平台通用的一种课程打包规范)。但它同时吐了两行警告——封面页引用了书文件夹外面的样式表,那个文件不会进包。我去线上核对:那份样式表在站点根目录是正常返回,换成书目录下的路径就是 404。也就是说这本样书的封面页在线上一直缺样式,只是缺得不明显。自检工具会说话,但没人听它说话,小毛病就一直挂着。

最后是钱。作者给了两个数:一本带插图的物理章节,模型开销约 10 到 18 美元;最新的绘本每本配音不到 0.45 美元。按 68 章那本算,光模型费就是四位数美元的量级。这不叫贵得离谱,一个章节的人工课件制作远不止这个数。但它把这件事的性质说清楚了:这不是一个人一天做一本书的工具,是一个团队一周做一本书的流水线。

五、判断:现在该试的是哪种人

拿来跟站内评过的同类比,坐标系就清楚了。之前评过的开源视频流水线(OpenMontage 那类)走的是「很多小技能拼装」,出图技能(visual-explainer 那类)走的是「一个好看的静态页」。Papermorph 站的位置不一样:它要的是成套的、风格一致的、能连续做几十章的课程,而且必须能脱离平台自己托管。这三条同时成立的项目,我目前没见到第二个。

所以:

适合现在就试的——你手上有自己有权使用的教材 PDF,而且要做的是十几章以上的连续课程;你的机器上已经有 ffmpeg 和 Node;你愿意接受第一章要花二三十美元试错。

建议先别碰的——只想把一份文档做得好看点的;没有命令行经验、指望一条命令出成品的;以及想拿它批量处理别人的版权教材的。作者自己在文档里划了线,这个锅他不背。

如果你只是好奇它到底能做到什么程度,不用装:仓库里的成品书就是纯静态页,打开就能看,那是它最好的说明。

相关阅读:AI 时代的教育革命:5 个必装的 AI 教学技能 · AI Skill 生态全景:从 1000+ 仓库精选 10 个必装技能 · OpenMontage 深度评测:6.89 万 Star 的开源视频流水线

关注 AI商业快讯,每天一篇 AI 热点深度解读。

英伟达董事会连夜开会定黄仁勋去留:盘后跌超9%,公司没有继任计划也没有董事长

英伟达董事会连夜开会定黄仁勋去留:盘后跌超9%,公司没有继任计划也没有董事长

9%——这是 11 月 11 日美股盘后,英伟达股价在一个晚上里的跌幅。跌的原因不是财报,也不是芯片出口新规,而是一份关于董事会的报道:据《华尔街日报》消息,英伟达董事会正准备让联合创始人、CEO 黄仁勋走人,最早本周三就开会表决。

这家公司 33 年里只有一位 CEO,市值一度是全球第一。而就在三天前,同一块董事会刚刚公开发声明说「对 Jensen 和他的管理团队有信心」。

发生了什么:三份文件,三天之内

把时间线摆直,这条新闻的戏剧性全在顺序里。

11 月 8 日,周日。黄仁勋给全体员工发了一封信,承认自己对妻子不忠,向家人和同事道歉。同一天,英伟达董事会发布声明,宣布启动独立调查,理由是「有报道称创始人和 CEO 黄仁勋成为外国情报活动的目标」。声明同时写明:董事会没有理由认为国家安全或英伟达的商业机密受到损害,调查会「审查一切可获得的信息」,并且董事会「对 Jensen 和他的领导团队有信心」。

11 月 10 日,周一。董事会的独立成员宣布,已聘请曾代理纽约南区联邦检察官的 Joon H. Kim 及其所在的 Wachtell, Lipton, Rosen & Katz 律所主持这次调查。这是美国处理公司治理危机时最贵也最硬的一档配置。

11 月 11 日,周三。《纽约时报》先报道,黄仁勋与英伟达全球医疗健康业务副总裁 Kimberly Powell 存在恋爱关系,Powell 直接向他汇报;报道援引五名消息人士,并称两人今年 3 月在圣何塞一家酒店被拍到举止亲密。几分钟后,《华尔街日报》报道董事会正准备让黄仁勋离职。CNBC 随后确认董事会确实在开会,且会议开到当晚很晚仍未结束。

股价在盘后交易中一度跌超 9%。在此之前,本周已经跌了 7%,并且是连续第六周下跌。

数字与一手细节:一台每季卖 1080 亿美元的机器,没有备用人选

这次事件之所以不只是「CEO 私事」,关键在这几个数字。

英伟达 2026 财年(截至今年 1 月)营收 2159 亿美元,同比增长 65%。2027 财年上半年营收 960 亿美元,同比增长 85%。公司此前给出的本季度营收指引是 1080 亿美元,上下浮动 2%。首席财务官 Colette Kress 还表示,预计 2028 财年营收增长 70%。

也就是说,董事会要在一个季度卖 1080 亿美元、而且还在加速的时点上,决定要不要换掌舵人。

更麻烦的是结构。英伟达没有董事长,董事会由「首席独立董事」牵头;公司也没有首席运营官;黄仁勋有大约 60 名直接汇报对象,长期以扁平结构居中做绝大多数决定,甚至亲自给很小的客户发短信、打电话。这些细节来自《财富》对多位分析师和公司治理学者的采访。

股权上,黄仁勋的多数股份与妻子 Lori Huang 共同持有、放在家族信托里(也就是把股份交给受托机构代管,本人不能随意处置),约 8 亿股;他个人名下约 7000 万股,对公司的经济控制力有限。换句话说,他在这家公司的话语权主要不是靠股权,而是靠 33 年积累的权威。

正因如此,公司从来没对外讲过继任计划。TechCrunch 半开玩笑地列了一份候选人名单:AMD 的苏姿丰、前谷歌 CEO 施密特、英特尔陈立武、前 Salesforce 联席 CEO Bret Taylor、主导 CUDA(英伟达的软件平台,让开发者的程序能跑在它的显卡上)的副总裁 Ian Buck、硬件工程高级副总裁 Andrew Bell,以及最常被分析师点名的 CFO Colette Kress。但报道也说得很清楚:Kress 更擅长财务而非技术路线,而 Buck、Bell 这类「建造者」缺的是对外部客户的号召力。

预测市场的赔率很直白:在 Kalshi 上,黄仁勋「这周还能留住职位」的概率一度只有 30% 左右。

对立双方:董事会说相信他,国会说要他走

这条新闻真正的冲突不在八卦,而在两拨人给出了完全相反的判断。

一边是董事会。11 月 8 日的官方声明措辞非常克制:先说不认为机密受损,再说对他有信心,最后才说调查会看一切材料。这是典型的「先稳住市场、再留出退路」。分析师也分成两派:D.A. Davidson 的 Gil Luria 认为这些因素「加速了一场公司没准备好的交接」;Seaport 的 Jay Goldberg 则认为公司不会垮,「产能都卖光了,合同签到明年」,但「会失去很多光环,犯错的概率更高」。

另一边是国会。据 CNBC 报道,共和党参议员 Kevin Cramer 周三再次公开要求黄仁勋辞职,理由是他在国家安全层面「太容易被勒索」;民主党众议员 Suhas Subramanyam 和即将退休的共和党众议员 Don Bacon 也表态认为他应该下台。众议院外交事务委员会主席 Brian Mast、中国问题特别委员会主席 John Moolenaar、情报委员会主席 Rick Crawford 早在 11 月 4 日就联名要求黄仁勋 11 月 18 日到场作证,到周三傍晚仍未收到回复,Mast 明确说三个委员会都在考虑发传票。

值得注意的是,国会真正想推动的不是「换 CEO」,而是借这场风波通过三部芯片管制法案:AI Overwatch Act、MATCH Act、Chip Security Act。这三部法案都挂在今年必须通过的国防授权法案上(美国每年给军队定预算的那部大法),核心都是堵住先进芯片流向对手的通道。同时,参议员 Warren 和 Coons 要求政府保全所有与英伟达对华出口、以及黄仁勋此事相关的文件;据 The Information 报道,商务部正在敲定一版新的半导体管制规则,要连「通过海外数据中心远程使用」这条路一起堵上。

一个反差细节:总统特朗普在事件曝光后公开表示黄仁勋是「了不起的人」「可敬的人」,一直站在他这边。可就在同一天,国会里的两党议员在一件事上达成了一致——黄仁勋该走。

这也是为什么市场没有把它当成普通的管理层丑闻来定价。它同时压上了三个变量:一家公司最关键的一个人、一条最紧张的供应链、和一个正在收紧的出口管制窗口。

对读者意味着什么

先说最直接的:短期芯片供给不会因为这件事变。英伟达的产能已经卖光、合同签到明年,云厂商的算力集群也在按合同交付。分析师的原话就是这个意思——公司不会「消失」,只是会失去光环。

真正的风险在 2027 年下半年以后:如果管理层动荡拖过两个季度,新平台的产品节奏、以及和台积电、SK 海力士这些上游的联合排产都会受影响;而这几件事恰好决定了明年的算力价格。

第二个变量是监管。三部法案挂在国防授权法案上,如果趁这个窗口通过,受影响的不只是中国的买家,还包括所有通过海外数据中心间接用卡的公司。对在国内做业务、又在海外租算力的团队来说,这是要盯的实质变化。

第三个变量是采购窗口。每次这种级别的治理风波,都会给买方一个压价的借口,也会给卖方一个解释「货晚到」的理由。合同里关于交付时间、违约责任的段落,未来几周会比单价更重要。

我该做什么

如果你在管算力预算:把明年上半年的用量和续约节点摊开看一眼。当前是「合同已锁、价格未动」的状态,适合确认交付条款,而不是急着抢货或抛售长约。

如果你在关注政策和合规:盯三个时间点——董事会是否发出正式公告、11 月 18 日黄仁勋是否答复国会作证、国防授权法案里三部芯片法案是否被保留。前两个决定公司走向,第三个决定供应链规则。

如果你是普通用户或开发者:短期内你用到的模型接口、云服务价格不会因为这件事变化。真正要留意的是 2027 年的模型价格——算力涨价通常会滞后半年传导到账单。

不要做的判断:把「CEO 可能要换」等同于「英伟达要垮」。这家公司眼下最大的护城河是产能和 CUDA 生态,不是某一个人;但它最大的风险也恰恰是过去 33 年只靠这一个人做决定。

一句话判断:这场董事会之争不会决定英伟达明年的营收——1080 亿美元的指引已经签在合同里;它会决定 2027 年之后,这家公司还能不能继续一年一换代。

关注 AI商业快讯,每天一篇 AI 热点深度解读。

相关阅读

信息来源

baoyu-design 深度评测:6369 Star 的本地设计技能包,66% 体积是重复副本,自检却放过编号错误

baoyu-design 深度评测:6369 Star 的本地设计技能包,66% 体积是重复副本,自检却放过编号错误

六千多星的项目,我克隆下来一称:一百六十六兆,这还没算版本历史。把里面一模一样的文件挑掉之后,只剩五十六兆。也就是说,这个仓库里有六成六的体积,是同一批东西原样抄了三遍。

这个项目叫 baoyu-design,作者是宝玉(Jim Liu),半个月前还在日更版本,现在六千三百六十九星、五百零六个 fork。它的卖点很实在:把 claude.ai 上那几种「作品」——幻灯片、设计画布、设计系统、数据仪表盘、动画影片、白板——搬到你自己电脑的 AI 助手里跑,每一种配一个本地编辑器。

先说结论:东西是真能用,我跑起来了;但那六成六的赘肉也是真的,你今天要装它,得先为这部分付下载和磁盘的账。

它到底在做什么

claude.ai 有个设计功能,能让 AI 直接产出可编辑的幻灯片、设计稿、仪表盘。问题是你得在网站上用,产物在云端,导出来就死了。

baoyu-design 的做法是把这套东西整包搬到本地。它的产出全是普通文件:一个文件夹里放一个索引文件记着页序,每页一个网页文件。AI 往这个文件夹里写字,你电脑上跑着的一个网页编辑器立刻显示出来;你在编辑器里改,改动也写回同一批文件。两边轮流改,谁都不覆盖谁。

大致分工是这样:

技能 你拿到什么 打开后能干什么
claude-slides 幻灯片:一个索引加每页一个网页文件 放映、改字、拖动,导出 PDF / PPTX
claude-design 一块画布上并排多个画板 当原型播放、调文案、导出 Figma 可接的网页
claude-design-system 一套设计系统:颜色、字体、组件 浏览和改样式变量,给幻灯片和画布装上
claude-data 数据仪表盘:数据集加图表页 实时图表,每个数字能追回原始那一行
claude-motion 动画影片,一段段代码写出来 改台词、拖场景长度、导出 MP4
claude-whiteboard 白板:方块、箭头、便签 拖动、画、贴便签、局域网协作

另外还有两个不出编辑器的:一个当影片导演,负责想清楚要说什么、写旁白、配音;一个是图表规范,AI 画图之前先读它。八个技能加起来,说明文档二十四万字节。

这东西的价值不在于「又一个 AI 画图工具」,而在于产物是你的文件。放在你自己的文件夹里,能进版本库,能拷走,能拿编辑器当普通项目打开。云端工具做不到这一点,这是它最硬的一条。

实测一:一百六十六兆里,六成六是重复

我在隔离环境里克隆了一份,量出来:

指标 实测值
工作区文件数 804 个(不含版本历史)
工作区体积 165.8 MB
按文件内容去重后 56.5 MB
重复部分 109.3 MB,占 65.9%
另:版本历史目录 15.8 MB

为什么重复:仓库里有三个目录,分别是给普通 AI 助手、ChatGPT/Codex、以及 DeepSeek Harness(也就是一个能装插件的本地 AI 应用)这三种宿主准备的版本。我随手挑了三个目录下同一个编译器文件比对,三份的指纹完全一致;整个脚本目录逐字节比对,零差异。也就是说,为适配三种宿主,同一份两万四千行技能文档和一整套编辑器被复制了三份。

落到单个技能上更疼。只装幻灯片这一个技能,目录十八兆,其中十一兆是一个编译器文件;设计画布十五兆。你要是八个全装,光脚本就五十多兆,还没算你做的作品。

这意味着什么:这不是「下载慢一点」的问题。它决定了你怎么装。官方推荐用现成的技能安装器按名字装单个技能,别整个仓库克隆——克隆一次,等于把另外两份你永远用不到的副本一起搬回家。而如果哪天作者忘了同步三处,你本地那份和插件市场上的那份就会跑出两种行为。

实测二:编辑器真能跑,自检也真会放过错

光看文档没用,我建了个最小幻灯片试了一遍。

第一步是自检命令。我照文档写了个只含一页的幻灯片索引,运行检查,脚本直接崩了——报错说「无法把空值转成对象」。原因是我漏了「章节」这个字段,而它没做兜底,直接踩空。补齐之后,检查通过,问题数为零。

第二步是打开编辑器。命令返回一个本机网址,我抓了一下:网页正常返回,说明本地服务确实起着,不是文档里画的大饼。这一步给好评,很多同类项目的「编辑器」只存在于说明文档里。

第三步我动了点坏心思,想看它的检查能拦什么:

  • 把某一页文件名写成 cover,而网页里那段的编号我故意改成 wrong-id。检查仍然报零个问题。 它自己的说明里也承认:文件名的编号和网页里的是否一致、图片路径是否存在,它都不验。
  • 再放一张指向不存在图片的图。这次抓住了,报一个错误,还附了修法。
  • 给网页加一个它不认识的排版属性。它不报错,只在提示里说「这个属性不属于本格式,已丢弃」。

这意味着什么:它的自检是一道格式闸门,不是正确性闸门。能拦住「你引用的图片没导入」,拦不住「你这一页的编号写错了」。后者恰恰是让编辑器打开空白页的原因。作者把边界写在说明里了,算诚实,但你要是照文档说「跑过检查就行」,会栽在这条缝上。

顺手挖到一件真东西

八个技能里最不起眼的是那个图表规范,一百一十二千字节,最小。但它带了一个调色板校验脚本,我拿四组颜色实测:

  • 亮度区间:四色全在合格带内
  • 饱和度下限:四色全部通过
  • 色盲可分辨度:一对黄褐和墨绿在红色盲模拟下只差 7.1(阈值带是 6 到 8),判为警告,并且提示「只有在加上直接标注或纹理这类第二重编码时才合法」
  • 与背景的对比度:四色全部达标

这是整个仓库里唯一一处能给出可核对数字、并且会主动报警的地方。它没吹自己懂设计,而是把「这组颜色色盲读者分不分得开」算给你看。做数据图的人,光这一个脚本就值得来一趟。

一件必须先看清楚的事:许可

这个仓库的许可证在 GitHub 上显示为「未识别」。别误会成「没许可」,真相更麻烦一点——它是分层授权,官方特意写了一份说明文件:

  • 作者自己写的部分(本地命令行、编辑器服务、本地评论、三种宿主插件的代码、文档):MIT,商用随便。
  • 从 Anthropic 搬来的部分(技能说明、参考文档、图表规范、整套编辑器界面、图标字体、归档里的系统提示词):权利归 Anthropic,本项目不授予任何许可。
  • 第三方开源库(React、d3、导出 PPTX 的库等):各自原有许可。

这意味着什么:你自己拿来用、拿来改,没问题;但如果你想把「编辑器那部分界面」抠出来放进自家产品对外卖,那就踩在了不授予许可的地界上。作者提醒得很清楚,别跳过那段说明。

谁该用,谁别用

值得用的:需要反复产出幻灯片、设计稿、数据仪表盘的独立开发者和小团队。你的痛点是「AI 产出的东西导出来就死、改一次要重生成一遍」,这个项目的文件式设计正好治这个病。做数据图的,先单独试那个调色板校验脚本,成本极低。

别急着用的:只想让 AI 出一张图、一份一次性 PPT 的人。装一个技能要吃掉十几兆、还得有 Node 环境、还得让本地服务能开端口——为一个一次性需求付这些,不值。

装之前记住两条:按名字装单个技能,别克隆整个仓库;跑完自检不等于没问题,编号和图片路径它不查,自己扫一眼。

顺便说一句,它要求配 Claude 里最强的那个模型效果最好,也就是说这东西的质量上限,很大程度取决于你给的上下文——截图、现成的设计系统、真实代码库。不给上下文,它再强也只能凭空编。这一点和前面评测过的 pstack-claude 是同一个道理:技能是壳,喂进去的真实材料才是肉。

仓库地址:github.com/JimLiu/baoyu-design,作者署名 Jim Liu 宝玉。本月已发二十个版本,更新很勤,我看到的这些数字随时会变——尤其是那六成六,希望作者哪天把三份副本收成一份加上构建脚本。

Gemini 4 Carbon 全面开放:每百万 token 2 美元,Artificial Analysis 榜单却排第二

Gemini 4 Carbon 全面开放:每百万 token 2 美元,Artificial Analysis 榜单却排第二

10 月 28 日,谷歌把 Gemini 4 Carbon 交给了一小撮人:只开放给自家 Fairwind 计划里的网络安全防御团队。11 月 10 日,它全面开门——所有付费开发者、企业 API、Google AI Ultra 订阅用户,当天就能用上。

谷歌在官方博客里的原话是,Carbon 是它「最强的模型」。可就在它开放的前一天,Anthropic 发布了 Claude Fable 5.2,而在独立评测机构 Artificial Analysis 的智能指数上,Carbon 排在第二,不是第一。

这就是今天这条新闻真正的看点:谷歌挑了个最便宜的价位,抢了一个它没拿到的第一名。

发生了什么:一次只隔两周的全面开放

先把时间线摆直。

  • 10 月 28 日:谷歌发布 Gemini 4 Carbon,但只放开给 Fairwind 计划里的网络安全防御者,普通开发者拿不到。
  • 11 月 9 日:Anthropic 发布 Claude Fable 5.2 与 Mythos 5.2,定价每百万输入 8 美元、每百万输出 40 美元。
  • 11 月 10 日:谷歌把 Carbon 全面开放。Gemini API(Google AI Studio 里)、Gemini for business 全部可用,Google AI Ultra 订阅用户在 Gemini 应用、搜索里的 AI Mode 和 Antigravity 编程平台上也能切过去。
  • 同一天:谷歌在 Antigravity 里预览了一个叫 /swarm 的功能——一句提示词进去,出来的不是一段回答,而是一支会分工的智能体小队。

Carbon 不是 Argon 的替换品。谷歌自己写得很清楚:Argon 仍然是「大多数软件工程和知识工作的理想选择」,Carbon 是给那些「考验模型智力上限」的任务准备的——复杂多步编码、开放式科研。代价是它比 Argon 花更多思考 token。

规格上,Carbon 与 Argon 共用同一个稀疏混合专家(MoE)底座,额外的后训练和强化学习专门用来加强深度推理和长验证循环。上下文窗口 100 万 token——说白了就是一次能塞进多少内容,100 万 token 大致相当于几本书,接受文本、图像、音频、视频输入,知识截止到 2026 年 3 月。

数字与一手细节:2 美元、40 美元、7.76 美元

这篇文章需要的数字,全都能对上具体出处。

先看价格。Carbon 的开场价是每百万输入 token 2 美元、每百万输出 token 10 美元,与 Argon 的开场价一致。11 月 30 日之后翻倍,变成 4 美元和 20 美元。对比昨天刚发的 Claude Fable 5.2:8 美元和 40 美元,是 Carbon 开场价的 4 倍。The Verge 的算法是,Carbon 大致是 GPT-6 Astra 的五分之一、Fable 5.2 的四分之一。

再看谷歌自己列的榜单。Carbon 在三个独立基准上排第一:Cursor 的 CursorBench 4.0、Perplexity 的 WANDR、Zapier 的 AutomationBench,谷歌说它的每任务成本比第二名外部模型低一半以上。在谷歌与 Artificial Analysis 合作新做的多模态知识智能体基准(MKA)上,Carbon 排第二,每任务平均成本比榜首低六倍以上。

然后是那个关键的反差。Artificial Analysis 的智能指数榜上,此刻的顺序是:Claude Fable 5.2(max)65 分,Gemini 4 Carbon(high)60 分,Claude Opus 5.5(max)59 分,GPT-6 Astra(max)57 分,GPT-6.1 Terra(max)51 分。Carbon 不是第一,是第二,而且只比 Opus 5.5 高 1 分。10 月 28 日刚发布时,它在这张榜上是 59 分、排第一——两周里分差变了,位置也变了。

还有一个更贴地的数字。同一机构测了每个任务的真实花费:Carbon 平均 7.76 美元,Fable 5.2 是 26.54 美元,GPT-6 Astra 是 6.24 美元,最便宜的 GPT-6.1 Terra 只要 0.96 美元。

这组数字说明一件事:卖得便宜不等于用得便宜。 这里的 token 是模型计价的字数单位,又因为它想得更深、要写更长的思考过程,用的字数更多。Carbon 单价比 Astra 低,最后每个任务的账单一算,反而比 Astra 贵一点。说白了,采购看的是单价,财务看的是账单,这两个数经常不是一回事。

对立双方:谷歌的榜和 Anthropic 的榜,各说各话

这次最值得看的不是模型本身,是两套评测的正面撞车。

谷歌的博客只写了「在 CursorBench 4.0、WANDR、AutomationBench 上排第一」,没有点名对手是谁。The Verge 对此的提醒很直接:公司会并且确实会挑选对自己最有利的基准来展示。

Anthropic 那边出了一张更狠的表,把 Carbon 拉进来做对照,用的是自家跑的分数:

  • 前沿代码任务 FrontierSWE v2:Fable 5.2 是 69.9%,GPT-6 Astra 65.5%,Carbon 61.2%。
  • 更难的前沿代码 FrontierCode 2.0:Fable 5.2 是 49.1%,Astra 42.8%,Carbon 41.1%,而且标注了它是在 medium 档测的。
  • 终端科学任务 Terminal-Bench-Science 0.1:Fable 74.6%,Astra 68.1%,Carbon 64.8%。
  • 计算机操作 OSWorld 2.1:Fable 89.3%,Carbon 81.5%,Astra 79.5%。
  • 只有商业流程 AutomationBench 上,Carbon 以 53.9% 反超 Fable 的 51.4%。

同一批任务,两套榜单给出了两个结论。谷歌说我在三个榜上第一,Anthropic 说在五个任务里我赢了四个。这不是谁撒谎,而是基准已经变成了市场部的一部分:谁出题、谁跑分、用哪一档推理强度,都能左右结论。Anthropic 那张表里 Carbon 跑的是 medium 档,谷歌博客里宣传的是 high 档,这一个括号就足以让分数差出好几分。

还有一个谁都没有否认的事实:在自家博客里,谷歌把 Argon 称为「大多数工作的理想选择」,Carbon 只推荐给极限任务。这句话对普通开发者比任何榜单都实在——谷歌自己在劝你先别急着换。

对读者意味着什么:智能体开始按「小队」卖

真正的新东西是 /swarm,不是分数。

谷歌的描述是:一句提示词进去,出来一支有分工的智能体小队。Carbon 被派去干最费脑子的活——架构设计、协调、审计;更快更轻的模型在各自隔离的工作区里并行干活;另外还有一类「对抗验证器」智能体,也就是专门扮演挑错一方、去挑每处改动毛病的智能体。演示里最夸张的一个例子,是把谷歌 Platform 37 办公室的七份市政规划 PDF(共 206 张工程视图)交给一支小队,跑了 10 个通宵的循环,做出一座 90.6 万个三角面的 3D 重建。

这件事的分量在于角色变化。过去一年大家讨论的是「模型能写多少代码」,Carbon 这类模型的卖点变成「能连续跑多久、自己能不能验收」。谷歌给的安全数据也在支撑这个方向:在自家模拟攻防环境里,Carbon 挡下了自适应红队智能体 99% 的攻击轨迹,每次尝试的突破率从 Argon 的 3.1% 降到 0.8%;Gray Swan 的自动化攻击查询成功率从 9.86% 降到 2.17%;外部机构 Trajectory Labs 跑了 132 小时、1.3 万次请求,没发现新的通用越狱。谷歌同时承认,提示词注入防御「仍然是需要继续改进的领域」——两周前它刚宣布这项指标做到 0%,这句话等于自己补了个注。

对国内开发者的实际影响有三层。

第一层是价格窗口。11 月 30 日之前,Carbon 的 API 价是 2 美元和 10 美元,之后翻倍。要做压测、要跑迁移回归的团队,这个月内动手成本最低。

第二层是选型逻辑变了。以前比的是「谁更聪明」,现在要算「每个任务多少钱、要跑几轮验证」。Artificial Analysis 那组每任务成本数据说明,单价最便宜的不一定最省,单价最贵的不一定最亏——26.54 美元的 Fable 5.2 如果一轮做对,可能比 7.76 美元的 Carbon 跑三轮更划算。

第三层是开源这边的压力。国内读者更关心的其实是同期的另一条消息:美团以 MIT 协议开放了 1.6 万亿参数的 LongCat-2.5 权重。闭源旗舰把价格打到 2 美元,开源把 1.6 万亿参数的权重直接放出来,中间那批「价格中等、能力中等」的闭源模型,处境会最难。

我该做什么:三条能今天就执行的动作

不用急着迁移,但有三件事值得现在做。

一是这周之内把手上最贵的那条链路跑一遍 Carbon。用它替换掉现有模型,同一批任务跑两次:一次看通过率,一次算真实账单(注意算上它的思考 token)。11 月 30 日涨价之前,这是唯一能拿到真实数字的窗口。

二是把评测从「看榜单」换成「跑自己的题」。这次两套榜单打架给的最大教训是:CursorBench、WANDR、AutomationBench、FrontierSWE,名字都很好听,但没有一个是你的业务。选 20 条自己线上的真实任务做成固定题集,谁跑谁知道。

三是留意 /swarm 的可用范围。谷歌没说一支小队最多几个智能体、哪些套餐能用这个预览,这两条不明确之前,把它当演示看,别当生产力工具排期。

最后说一句判断:谷歌这次真正的动作不是发布一个更强的模型,而是把「前沿模型」的价格锚点又往下压了一档。Anthropic 前一天刚用 8 美元和 40 美元定了高价,谷歌第二天就用 2 美元和 10 美元回应。模型能力的差距在缩小,价格战才刚开始。

关注 AI 商业快讯,每天一篇 AI 热点深度解读。

参考资料:

  • Google 官方博客《Gemini 4 Carbon is now available》(2026-11-10):https://blog.google/innovation-and-ai/models-and-research/gemini-models/gemini-4-carbon-now-available/
  • The Verge《Google releases Gemini 4 Carbon with agent ‘swarm’ feature》(2026-11-10):https://www.theverge.com/ai-artificial-intelligence/1030787/google-gemini-4-carbon-public-rollout
  • MLQ.ai《Google makes Gemini 4 Carbon widely available at $2 per million input tokens and previews agent swarms》(2026-11-10):https://mlq.ai/news/google-makes-gemini-4-carbon-widely-available-at-2-per-million-input-tokens-and-previews-agent-swarms/
  • Anthropic 官方公告《Introducing Claude Fable 5.2 and Claude Mythos 5.2》(2026-11-09):https://www.anthropic.com/claude-fable-and-mythos-5-2

Impeccable 深度评测:10.7 万 Star 的设计词表,62 条 slop 规则我实测只响 43 条

Impeccable 深度评测:10.7 万 Star 的设计词表,62 条 slop 规则我实测只响 43 条

你把一个页面丢给 AI,说「做得好看点」。出来的东西几乎总是同一张脸:奶油色背景、一根细衬线大标题配斜体点缀、紫蓝渐变、卡片左边一道彩色竖杠。这不是审美口味问题,是可数的、会反复出现的模式。Impeccable 干的事就是把这些模式写成 62 条确定性规则(deterministic,意思是不调用任何模型、同样的输入永远同样的输出),让 coding agent(替你写代码的那个 AI 助手)在交活之前先自己照一遍镜子。

它现在是 10.7 万星、Apache-2.0 协议、作者是前 Google 开发者布道师 Paul Bakaus。我把它整个拉进隔离沙箱,从源码编译出引擎,跑了两套测试,再用仓库自带的 269 个测试样本全量扫了一遍。结论先给:62 条规则里只有 43 条在这条路径上响过,剩下 19 条一次都没触发——这不是缺陷清单,但它划出了这东西真正的适用边界。

一、它是什么:一本设计词典,外加一个独立运行的扫描器

说人话,它由两块拼起来。

第一块是命令。装好之后,你的 AI 助手里多出 24 个斜杠命令,按用途分四组:调风格(让保守的更大胆、让吵闹的更安静、去掉多余、补上配色、重整排版)、做评审(打分的体验检查、技术质量报告)、收尾(上线前打磨、补边界情况、改文案、适配屏幕、优化加载),以及写新页面时的规划。

你用「把定价卡做得更响亮一点」这种话吩咐它,背后加载的是一份专为这个动作写的操作手册。区别于随便一句「好看点」,它知道这个动作要做到什么程度算完。

第二块是一个能脱离 AI 单独跑的扫描器。一条命令扫源码目录,同一条命令换成网址就扫线上页面;加一个开关输出机器可读的结果,再加一个开关直接写成 GitHub 的代码批注。

它有没有发现问题,只用退出码回答你:零是干净、二是有发现、一是连扫都扫不了。这一条对做持续集成的人很关键——它天然就能当闸门用,不用解析输出文字。命令行细节放在下面的表格里。

两块都指向同一个卖点:把「感觉不对」翻译成「第 12 行左边那条 6 像素竖杠,删掉」。

二、怎么做到的:一条设计规则如何从散文变成可执行代码

这是它和站内评测过的同类最不一样的地方——它不是一堆 Markdown 提示词,而是一个正经的 Rust 工程。仓库根目录的构建清单定义一个工作区,底下共有 18 个 crate(Rust 里最小的编译单元,可以理解成模块边界清晰的零件)。分工大致是:

零件 干什么
规则注册表与公共类型 62 条规则的唯一真身,一条规则 = 一个编号 + 分类 + 严重级别 + 一句给人看的说明
规则逻辑 每条规则的具体判定:什么算「太挤」、什么算「标题跳级」
源码扫描 走文件、读配置、跑正则、出结果
静态页面引擎 自己解析 HTML 和样式表,在没浏览器的情况下算排版和颜色
浏览器引擎 连你本机的 Chrome,在真渲染的页面上量尺寸和对比度
命令行 把所有动词接起来,管退出码

版本方面,工具链配置文件只写了一句「stable」,外加一个网页端编译目标——那是为了把同一套规则编译成网页里也能跑的形态,浏览器插件用的就是它。整个工作区 27.5 万行 Rust,锁文件里 218 个依赖包。

62 这个数字在源码里是被测试断言焊死的:注册表末尾有一句「长度必须等于 62」的检查,谁不小心删了一条,测试当场红。它也解释了为什么是 62 而不是 64——有两条规则被退役了(image-hover-transform 和 layout-transition),退役的编号留在配置里不报错、也不生效,只在自检命令里悄悄提示一句。

三、实测:跑了什么,拿到什么数字

沙箱是隔离的,被测项目全程没有落到沙箱外。克隆用浅克隆加只取必要对象,4,526 个文件、除版本库外 98MB,4 秒完成。然后按文档从源码构建引擎,25.5 秒编译完,产物 100MB。

我跑的命令 真实结果 耗时
cargo test -p impeccable-foundation 61 个通过,0 失败 9 秒
cargo test -p impeccable-detect 117 个通过,0 失败 11 秒
cargo test -p impeccable-core 847 个通过,0 失败 18 秒
cargo test -p impeccable-html 224 个通过,0 失败 29 秒
cargo test -p impeccable(命令行) 81 个通过,0 失败 22 秒
node scripts/run-tests.mjs core 270 个用例,264 通过、2 失败、4 跳过 7.3 秒

Rust 这五个包合计 1,330 个通过、零失败。全仓一共 2,683 个 Rust 测试标记,我没跑全量:一次性跑整个工作区需要补下载依赖,沙箱第一次断网跑直接报下载失败,我改成逐个包跑,这五个是覆盖面最大的。

前端那套 core 套件的 2 个失败都出在环境,不是代码:一个是仓库需要一个叫 gh 的命令行工具去拉一份几兆的提交历史,沙箱里没有,报的是系统层面的「进程资源暂时不可用」;另一个是少装了依赖,模块找不到。两者的原始报错我都留着,不做别的解读。

规则真的会响吗? 我手写了一个故意做脏的页面:左边 6 像素紫边卡片、渐变文字、9 像素的灰色小字、奶白背景、Inter 字体,再配一份内容一样的 React 组件。同一份脏东西,两种文件给出了两种答案——页面文件报了 7 条(侧边竖杠、渐变文字、对比度只有 1.7:1 不合格、字号低于 11 像素下限、字体太大众、奶白背景),React 组件只报了 1 条。

原因它自己打印出来了:源码文件只跑模式匹配那批规则,并明确写着「发现数量是少算的,不等于体检合格」。这是我认为最该被记住的一条限制:把它挂进 React 或 Vue 项目的持续集成,你得到的是一层很薄的网;要拿到完整结果,得对着跑起来的开发服务器地址扫一遍。

那 19 条从不触发的规则是什么? 我拿仓库自带的 269 个测试样本全量扫了一遍,43 条规则响过,其余 19 条一次没有。看名单就明白了:设计系统字体、颜色、圆角、字号这四条要读你项目里的设计规范文件才有基准;行宽、贴边、遮挡、首屏横向溢出、边缘卡片这几条要真实的屏幕尺寸。

脚本报错、坏图、静止时被藏起来的内容这几条,要页面真的渲染过才看得见。所以这 19 条不是坏了,是「静态扫文件」这条路根本走不到它们——想覆盖,就得把浏览器接上。

顺带一个方法论陷阱:第一次扫它的测试样本,我拿到的是零发现。查下来是仓库自己的配置文件里把 tests/fixtures/**(测试样本目录)写进了忽略清单——测试语料被当成「已知的脏东西」屏蔽了。这做法本身合理,但意味着任何人想复核它的规则,都得显式关掉配置。

四、三处我实测撞到的问题

一是分发方式带来的体积代价。 仓库根目录下有 20 个以点开头的目录,一个工具一个,每个里面装着一份完整的技能包,58 个文件。我把路径前缀抹掉之后逐字节比对:1,165 个文件里有 942 个和 Claude Code 那份完全一致,占八成。

剩下两百多个差异,绝大多数是同一句话里的路径前缀不同——.claude/skills/impeccable 换成 .cursor/skills/impeccable,另有一处把「用提问工具问用户」改成「直接问用户」。单个技能包 2.3MB,乘 20 就是四十多兆。作者显然是有意的(README 里写明每个工具的产物都提交在仓库根目录,为了让人不用装 Node 也能手动拷),代价是改一句说明书要同步二十份、看代码时噪音很大。

二是引擎二进制不随仓库来。 我找遍全仓,没有任何一个平台的引擎可执行文件;npm 包声明里只有 5 个平台分包的依赖,加一份校验和清单,5 条哈希。

也就是说「Apache-2.0、可以离线从源码构建」这句对开发者成立,对使用者不成立——默认路径是启动器联网下载一次、校验哈希、存到用户目录。这一点 README 说得清楚,不算隐瞒,但它决定了「断网环境能不能用」这个问题的答案是要先自己编译。

三是那 2 个失败用例的位置很说明问题。 它一共定义了 6 个默认测试套件和 8 个可选套件,拆得很细:构建、规则、浏览器、框架适配、插件端到端。我第一次跑默认入口,卡在「拉真实提交历史」这种需要外部网络账号的用例上。

工程严谨度是够的:测试与代码几乎一比一、注册表数量被断言焊死、还有个专门的脚本只跑被改动影响的那些包。但一个想在本地跑绿的人,得先配好那个拉历史的命令行工具和一堆依赖。

五、放进同类里看,值不值得装

站内之前评过三个设计类技能,问的问题各不相同。UI UX Pro Max 那篇问的是「词表够不够用」:192 套配色全过无障碍标准,但中文关键词一个都搜不到。Hallmark 那篇,也就是专治 AI 味的那种设计技能,问的是「它自己达标吗」:31 个成品页面有 21 个过不了它自家 58 道闸门。

StyleSeed 那篇问的是「方法引擎的测试能不能证明效果」:195 项测试全绿。Impeccable 补的是第四个问题:这套规则在真实代码库里跑得动吗——答案是页面级跑得动,源码级只有薄薄一层。

适合谁:已经在用 Claude Code、Cursor、Codex 这类助手,且项目有成型界面的人。它最擅长的是「对着一个已有的卡片、一个已有的设置页反复改」,而不是从零生成整站。把扫描器接进持续集成也靠谱,前提是你扫的是跑起来的地址而不是源码目录。

不适合谁:想用它替代设计判断的人。62 条规则能认出「紫蓝渐变 + 左边彩色竖杠」这种公认的机器味,但认不出你的产品该长什么样——那部分仍然要人给方向。另外不想在项目里多出二十个工具目录、也不想让助手每次改文件都触发一次检查的人,可以先只装扫描器,不装钩子。

一句话判断:值得装,但别指望它是护栏。它是一把尺子——量得准,量得到的地方不多,你得自己决定要不要把页面也摆到尺子下面。

局限说明:本次实测在内存与进程数受限的隔离沙箱内完成,Rust 测试只跑了五个核心包(占全部测试标记的一半),前端六个默认套件只跑了 core 一个,浏览器渲染类的规则因为没有可用的 Chrome 没跑;扫描覆盖面用仓库自带的 269 个测试样本加两个手写样本估算,不等于真实项目里的分布。数据取自 2026-11-11 的仓库快照,主分支当天有提交。

相关阅读:UI UX Pro Max 深度评测:12.7 万 Star 的设计 skill,192 套配色全过 WCAG,中文关键词却 0 命中;Hallmark 深度评测:3 万 Star 的反 AI 味设计技能,31 个成品页面 21 个过不了自家 58 道闸门

关注 AI商业快讯,每天一篇 AI 热点深度解读。

Reticle 深度评测:1,263 Star 的 AI 代理验证层,3 个故障抓 2 个、第 3 个要你先交账本

Reticle 深度评测:1,263 Star 的 AI 代理验证层,3 个故障抓 2 个、第 3 个要你先交账本

用过编码代理(coding agent,也就是能自己改代码的 AI 程序)的人都见过这一幕:它说「已修好,构建通过」,你打开页面,按钮点下去没反应。

这不是它偷懒。编码代理的天性是产出改动,它天生乐观;而验证的天性是去把事查清楚,并且随时准备回一句「不行」。两件事方向相反,所以它写代码快,查自己写的代码就慢,甚至根本不查。

今天评测的 reticlehq/reticle 就是冲着这个缝隙来的。它的口号只有一句:你说做完了,我来判断这是不是真的。结论先给:它确实能看见截图看不见的东西,但前提是你得先把应用内部的「账本」交到它手里。

它是什么:把判决书,而不是截图,交给代理

Reticle 往你的应用里塞一个只在开发环境生效的小程序,再在本机 127.0.0.1 的 4400 口起一个服务当桥。代理通过 MCP(也就是模型上下文协议,给 AI 接外部工具的插座)拿到一组工具,可以看页面、点元素、读网络请求、读状态,然后断言——也就是用一句话声明「应该发生什么」,让工具去核对。

它返回的是三种判决之一:是、否、说不准。只有「是」才算通过,说不准就是说不准,不允许用一个含糊的绿灯糊过去。判决书上还带三样东西:决定这次判定的那条网络请求、那次状态变化、那行控制台输出,以及一个可以直接点开的「文件:行号」。

和截图比对类工具的根本差别在这里:截图工具看的是「屏幕上长什么样」,Reticle 看的是「程序自己认为发生了什么」。屏幕会撒谎,程序内部的账本不太会。

仓库规模不小,也够实:3,137 个 TypeScript 文件,其中实现代码 1,251 个文件 24.1 万行,测试 1,886 个文件 29 万行——测试比实现多出五万行。近 30 天 377 次提交、376 个合并的 PR,开源许可证按包声明为 Apache-2.0(可商用),1,263 颗星,2026 年 6 月建仓,五个月长到这个体量。

实测:我在一个 React 应用里埋了 3 个故障

光看 README 不算评测。我搭了一个最小的前端示例应用,故意埋了三个真实的烂摊子:

  1. 页面加载时发一个会返回 500 的请求,界面把它吞掉,照常显示「一切正常」;
  1. 一个链接指向的页面里抛异常,控制台报错;
  1. 顶部徽标显示「0 个部署」,但程序内部记着 3 个——界面在撒谎,而且撒得很自洽。

第一条命令是零安装的:在应用目录里跑 npx @reticlehq/server,它自己找开发服务器、自己开浏览器、不往你项目里写任何文件。对着干净的版本,它给的是「是」;对着埋了故障的版本,它当场报出 5 处问题,原文是 Failed request on /: POST /api/deploy: HTTP 500 和 Console error on /broken: Uncaught Error: status page broke,退出码 1。

前两个故障,就这么被一条命令抓到了。

第三个没抓到,而且抓不到得理直气壮:那条零安装的体检只检查「页面能不能开、有没有控制台报错、有没有失败请求、同源链接能不能打开」,徽标显示 0 而账本记着 3,在它眼里完全合规。我故意用文字断言去问「页面上是不是有 0」,它回答是——因为屏幕上确实写着 0。

真正的解法是让它把两边对起来看。我在应用里手动注册了一个账本(一个带读取和订阅两个方法的普通对象),然后用一条「比对」断言:

reticle verify http://localhost:5179 --expect '{"kind":"compare",
  "left":{"from":"state","store":"deploy","path":"items.length"},
  "right":{"from":"text","scope":"[data-testid=\"nav-badge\"]"},"as":"number"}'

结果 verified: no——账本是 3,徽标是 0,不一致。同一时刻,把左边换成页面上那句真话「共 3 个部署」,判决立刻变成 verified: yes。

所以严格说,三个故障它都抓得住。差别在门槛:前两个一条零安装命令就报出来,第三个要你先交出账本、再写一行比对。

这一步是整个评测里最有价值的一步:它抓住的是「每一处单独看都对、合起来是错的」。这类毛病,截图比对和读无障碍树的工具都看不见,因为它们只能读到屏幕,读不到屏幕背后的账本。

仓库自己也承认这是它唯一的结构性优势。它自带一套 88 条的故障题库(86 条真故障 + 2 条「看着像坏了其实没坏」的陷阱),与一份 Playwright 脚本正面对比:Reticle 抓到 85 条,Playwright 59 条,两边对干净版本都零误报。差距并不均匀——26 条是 Playwright 结构上就不可能看到的(要读应用状态、要读客户端自己伪造的 500),剩下能看到的那些,两者打平。

值得单独说的一点:它公开撤回自己的数字

评测一个自称能验证一切的项目,最该看的是它怎么对待自己的数字。这一点它做得比多数项目狠。

它仓库里有一份基准测试的说明,明写着旧数据不能当基线。理由是那些历史记录出自一个有四处缺陷的测量脚本,而四处缺陷全都对自己的产品有利:有一项检查的统计范围缩水了,却依旧判定通过;有两个从没跑过的工具,被记成「全盘零分」;还有一条故障的判定条件宽到连请求地址本身都能满足。

更狠的是变更日志里那条自我更正:单条故障的输出成本,原先公布的是自己 4,134 字节、对手 7,899 字节,复测后发现实际是自己 9,261 字节、对手 5,849 字节——结论反了,于是把旧结论整个撤回,写明「不要重复引用它」。它甚至专门为「跳过对手能用的接口就直接判对手抓不到」这类自欺写过一段反省,把六条改判回平手。

这种自我拆台,比任何一个漂亮数字都更能说明这套判据是可信的。

三个我自己踩到的坑,和它不适合谁

第一个坑:账本名写错,它给你的是「否」,不是「说不准」。 我把账本名故意写成一个不存在的名字,判决是 verified: no,理由是「声明的后果没有发生」,附带的证据只是提示「搜过的账本有这些」。也就是说,配置写错和功能真坏了,在 CI 里长得一模一样。这跟它「说不准就说不准」的原则不一致,属于需要你自己留一层校验的地方。

第二个坑:断言写错一个字段,直接判「说不准」。我把限定作用范围的字段写成了一个对象而不是字符串,它返回「说不准」,并明确说明「这条断言没有解析成功,所以什么都没运行」。态度是对的,但它和「功能失败」共用同一个退出码 1。脚本里想区分「写错了」和「真坏了」,得自己解析输出。

第三个坑:没录过任何流程时,那道 CI 闸门是空转的。项目说明里写着它能拦住「改了受流程覆盖的代码却没重新验证」的提交。我在一个没有任何流程的项目里跑它,输出写着通过为假、原因为「没有流程」,并解释「这里没有存下来的流程,所以没什么可查,这不算这次改动的失败」——但退出码是 2。CI 里只要写了「非零就当失败」,它就会误伤;反过来,只要写成「非零一律放过」,它又会在真有流程时也放过。判定条件得写成只认 0 和 2 两种。

另外两件要提前知道的:自动探索模式(没流程时让它自己跑一遍并录下来)需要把项目连到它的云端平台,不连就用不了,原文是「这个项目没有连到平台上,请先连接,或者你自己驱动这段旅程」;首次运行如果没有本机 Chromium,它会当场下载约 150 MB。

至于坑之外的分工,我认为是这样的:

你要解决的问题 更合适的工具
界面到底有没有骗人、请求有没有静默失败、状态和显示对不对得上 Reticle 这类进得去程序内部的工具
跨浏览器、跨设备、别人的站点能不能用 Playwright 这类从外部驱动的工具
像素级还原、无障碍合规扫描、安全漏洞 各用各的专职工具

它自己不回避这个边界:仓库里写着看不到 IndexedDB、Web Worker、闭合的影子根节点和跨域内嵌框,也写着单步操作里的竞态只能部分覆盖。专门为「界面在撒谎」这一类毛病买的工具,不必拿它当万能测试框架。

结论

一句话判断:如果你每天都在让代理改前端代码、又反复被「它说好了其实没好」坑,这套东西值得放进观察清单,甚至值得今天就装到一个项目上试半天。 它抓不到的东西比它承诺的少,抓住的那些又恰好是别的工具结构性看不到的;再加上它敢公开撤回自己的漂亮数字,可信度够。

但别指望装上就自动生效。它需要你在应用里点明「哪些元素重要、哪个账本说了算」——这就是我标题里说的「先交账本」。你不交,它就退回成一个好用的体检工具;你交了,它才变成那个能对代理说「不行」的裁判。

仓库地址:https://github.com/reticlehq/reticle

关注 AI商业快讯,每天一篇 AI 热点深度解读。

相关阅读:

Fireworks 二次入侵:部分客户的模型权重被访问,首份公告曾称未受影响

Fireworks 二次入侵:1 万家客户的模型权重被访问,首份公告曾称数据集未受影响

10 月 24 日,一个拿到了第三方云服务商权限的攻击者,顺着这条路摸进了 Fireworks 的研发机器,在里面跑了一段未授权负载。11 月 9 日,Fireworks 更新安全公告:部分客户的不完整模型权重和数据集被访问了。

这句话之所以扎人,是因为一个多月前——10 月 9 日——同一家公司发的第一份公告里写得很清楚:没有发现客户模型、数据集、训练数据被访问的证据。

一个月后自己推翻自己,这是本次事件里最值得看的一段。

发生了什么:一起供应链入侵,接在旧伤上

先把时间线拉直。涉事公司是 Fireworks AI,CEO 是 Lin Qiao,做的是模型托管和微调(fine-tuning,也就是企业拿自己的私有数据把模型再训一遍):企业把私有数据拿过来,在上面训练专属模型再部署。据 RuntimeWire 报道,约 1 万家企业客户在用它。

  • 10 月 6 日:Fireworks 发现内部凭据被未授权使用,当天开始处置。这是一起独立事件。
  • 10 月 9 日:发首份公告。受影响的是「有限数量客户账户」里评测任务用到的环境变量(存着 API key、token 这类机密),并明确写了「未发现客户模型、数据集、训练数据、推理流量被访问」。
  • 10 月 23 日:托管 Fireworks 研发机器的第三方云服务商出事。
  • 10 月 24 日:攻击者借这个入口到达 Fireworks 开发机器,跑了未授权负载,造成新的客户数据影响。Fireworks 称当天就检测到并开始处置。
  • 11 月 9 日:更新公告,补上新发现的影响——账户与账单信息、部分客户的机密信息、数据集,以及不完整的模型权重。

也就是说,这是两次。第一次是自家凭据被偷,第二次是从上游供应商绕进来。Fireworks 在公告里的措辞是「数周内第二次已知的安全入侵」。

数字与一手细节:到底被摸走了什么

官方更新公告列得很克制,但逐条看并不轻松。

资源元数据:资源 ID、显示名称、描述、创建时间等。

账单信息:账单与收货地址、发票与付款记录、账户余额、额度消耗。支付卡号 Fireworks 不存储,因此不受影响——这是整段里唯一让人松口气的一句。

以及那句最要紧的:对「有限的一批账户」,机密信息、数据集、不完整的模型权重被访问。

这里的「不完整模型权重」需要解释一下。模型权重是模型训练完之后留下的那个大文件,是它全部能力的物理载体。所谓「不完整」,是说被拿到的是训练过程中的中间产物或片段,不是能直接跑起来的成品。但这仍然意味着:企业投喂给它的数据,以及用这些数据炼出来的东西,落到了外人手里。

另外两组数字来自攻击动机那一侧。Fireworks 判断攻击者与一个财务动机的网络犯罪团伙有关,目的是把窃取到的模型访问权转卖——业内叫 LLMJacking,即大模型劫持:偷走别人的云端密钥,用别人的账户额度跑自己的生意。Google 威胁情报组与 Mandiant 在 11 月 2 日发的报告给了量级:单起事件中,一天内的欺诈性资源消耗账单可以超过 10 万美元,累计有的组织在被掐断之前冲到过 100 万美元。注意这里的单位是账单金额,不是数据量。

报告里有个案例对比很说明问题:某团伙 8 小时内执行 50 万次 API 调用,把近 100 万美元的 token(模型计价的字数单位)成本转嫁给受害企业;而它对外卖的服务,包月大约 60 美元。正常市场价这个档位在 100 到 250 美元之间。差价从哪来,不言自明。

反转与对立:卖「私有数据」的生意,被摸到了数据

第一层反转在公告本身:10 月 9 日说模型和数据集没被碰,11 月 9 日说被碰了。这不是文字游戏,是调查范围扩大的结果——官方在更新里明确写「调查仍在进行,可能发现更多信息」。

第二层反转在商业模式上。Fireworks 卖的核心价值是:你的私有数据放在我这里,训练出你自己的专属模型。它卖的不是算力本身,是「数据交给我你放心」。这次被访问的恰好是数据集和不完整权重,正落在这个承诺的中心。

第三层是攻击路径的方向感。第一次是内部凭据泄露,说明自家门锁有问题;第二次是第三方云服务商被攻破后横向进来,说明门锁修好了,墙还是别人的。企业能管住自己的代码和密钥,管不住供应商自己的安全水平。这几乎是所有上云团队共同的处境。

也有值得给 Fireworks 记一笔的地方。它请了 Palo Alto Networks 的 Unit 42 做取证,处置动作列得很具体:吊销并替换凭据与服务账号、收回多余的高权限、限制未授权网络通路并隔离受影响系统、收紧数据存储与分析系统的访问、加固日志与监控。同时主动停掉了自助式的数据集上传与下载(Batch Inference 和基于数据集的训练都受影响),并声明推理服务(模型对外应答的那部分)、Training SDK、Nexus 三条默认零数据留存的产品线未受影响。

停掉一个能收钱的功能去查事故,这个取舍不好做,但做对了。

对读者意味着什么

如果你自己或所在团队用托管平台跑私有数据微调,这件事至少有三层提醒。

第一,托管平台的「隔离」是合同条款,不是物理事实。数据集和权重在对方机房里,你只能依赖对方的分区、权限和审计。一旦对方的上游出事,你的数据是否可及,取决于对方设计时的假设,不取决于你的意愿。

第二,出事之后的披露节奏,比出事本身更值得观察。第一次公告说没碰数据集,第二次改口说碰了。这在安全事件里很常见,初期调查天然不全。但对使用方来说,含义是:首份公告不要当最终结论,尤其涉及「哪些数据没被访问」这种否定性陈述时,要留出复查窗口。

第三,黑产的目标正在从「偷数据卖」转向「偷钥匙卖」。LLMJacking 的生意结构是:拿到云端身份凭据,开通或启用大模型服务,用你的账户跑别人的生意,账单记在你头上。这解释了为什么一次入侵能同时造成两类损失——数据外泄和天价账单。

我该做什么:一份能今天就动手的清单

不用恐慌,但要动手。按紧急程度排:

一,如果你有账号在 Fireworks,先查邮件。受影响客户会收到直接通知,里面点名需要轮换的具体凭据。注意官方那句提醒:把存着的密钥删掉不等于它失效,必须去签发方那里吊销。第三方凭据要去原始服务商那里办。

二,把「预算告警」当安全配置,不是财务配置。报告里那些 10 万美元一天的账单,几乎都是因为额度没有上限、也没人盯。给模型接口(API,程序调用模型的那条通道)设一个按天的硬上限,比事后查日志便宜得多。

三,盯住「验证型小请求」。攻击者拿到 key 之后,常用只花一个 token 的极小请求来试探有效性,这样不会触发流量异常告警。如果你的访问日志里出现大量极短请求的规律性扫描,那可能不是压测。

四,盘点你的上游。这次不是 Fireworks 自己被打穿,是它的云服务商被打穿。你的关键数据流经几家公司?每一家的安全承诺你还记得吗?答不上来,就是风险敞口。

五,涉及模型权重的项目,做一次暴露评估。哪怕只是「不完整」权重,也要按泄露处理——它可能包含训练数据的统计特征,甚至能被反推出部分样本。

最后一句判断:这不会是最后一起。当模型托管变成基础设施,它就成了和云厂商、代码托管平台同等级的攻击目标,而它的安全成熟度还普遍停在创业公司水平。选平台时,除了看价格和响应速度,也把「出事之后它怎么说话」放进评估项——这次 Fireworks 的处置算合格,但公告里那句自我推翻,本身就已经是代价。

—

参考来源

关注 AI 商业快讯,每天一篇 AI 热点深度解读。

相关阅读

notfair-plugin 评测:4133 Star 的营销技能包,45 个技能一行代码都没有

notfair-plugin 评测:4133 Star 的营销技能包,45 个技能一行代码都没有

用过 Claude Code 的人都有共同体验:装了一堆技能之后,真到用的时候,AI 反而不知道该拿哪个。技能越多,挑错的概率越高。

今天评测的 notfair-plugin 把一个反直觉的做法做到了极致。它是 4,133 Star 的开源营销技能包,45 个技能覆盖广告投放、站点审计、内容排期。我把它克隆下来逐个数了一遍:222 个文件里,代码文件是 0 个。

不是几行,是一个都没有。这在以「能干活」为卖点的技能包里,值得停下来看一眼。

它是什么:45 个技能,每个只有两行

先说结论。这个包卖的不是程序,是流程文档。

它要解决的问题很具体:让 AI 帮你投广告、查站点毛病,最怕它凭空编造。所以作者没写代码,而是写了 45 份操作手册,规定 AI 每一步该看什么、不许做什么。

层 作用 实测数字
技能入口 45 份 只做分流,告诉 AI 去读哪份手册 正文中位数 2 行
流程手册 45 份 承载全部判断规则 合计 5,314 行
测试用例 23 份 列出用户会怎么问、期望什么 每份 3 条

那 2 行是什么样子。我抽了其中一个,去掉配置头之后,正文只剩一句:

完整读取所属目录里的流程手册(也就是 WORKFLOW 那份文件),然后把它当作当前流程执行。

45 个技能,45 份入口,全部只有这两行。 也就是说,AI 先看一段很短的介绍挑准技能,再去读那本厚手册。

这个拆法有道理。打个比方,像医院的分诊台:挂号窗口不负责看病,它只判断你该去哪个科室。真正的诊疗写在科室里,越细越好。把两件事混在一起,AI 每次都要读满四百行才知道该干什么。

实测:昨天它把最后一行代码删了

这是本次最值得写的部分。

我把 433 次提交的完整历史拉下来对比。上一个版本里还有 53 个脚本,一共 11,545 行,负责抓页面、读搜索后台数据、跑断链检查。今天的最新版里,这些文件一个不剩。

一次性提交的账单是这样的:

指标 数值 意味着什么
改动文件 202 个 接近整仓翻新一遍
新增行 418 行 主要是改文档措辞
删除行 16,990 行 删掉的都是真能跑的程序
剩下代码 0 行 仓库退回纯文档状态

同一天里,5 个版本连着发。这个节奏说明作者在赶一个截止时间,后来在更新日志里找到了答案:为了通过某家应用商店的审核。

那功能去哪了。搬到了云上。仓库现在只留一个连接地址,指向作者自己运营的服务。我直接请求了一次,没带凭证,返回的是「请先授权登录」。

这句话是整篇评测的关键:你克隆到的是说明书,真正干活的部分在别人的服务器上。

它的好,和它的贵

先说好的,而且都是实测出来的。

我把仓库里 115 个文档之间的相互引用全跑了一遍,断链 0 个。这个数字看着平淡,但 45 份手册、五千多行、彼此穿插引用,一处没接错。它说明有人在维护,不是生成完就扔。

第二个好东西是安全边界写得实在。付费广告那部分手册明确规定:任何增加花费、启用广告、改预算改出价的动作,都必须先拿到用户明确的同意;新建广告一律设成暂停;每次改完要把结果读回来复核。

这段话管的是钱。让 AI 碰广告账户,最坏情况是一次误操作烧掉一天预算。它把「先问一句」写成了硬规矩,不是建议。

不好的一面也要说清楚。

第一,能力被锁在服务后面。想用它的站点审计、广告分析,绕不开那个登录授权。开源在这里的含义是流程开源,不是能力开源。这个区别在宣传语里没有区分。

第二,45 个技能里有一批是空壳。亚马逊广告和 ChatGPT 广告那两份,正文里自己写明「我们没有这两个平台的接口」,所以只能出方案、不能真执行。名字看着像功能,其实是提示词模板。

第三,判别力全看宿主。45 份入口的自我介绍平均 480 个字符,最长的超过一千个字符。AI 要从这么长的介绍里挑对技能,挑错并不奇怪。作者显然知道这点,所以几乎每份介绍结尾都加了一句「这个场景不要用我,去用某某」。

谁该装,谁别碰

如果你自己投广告、管站点,又已经在用 Claude Code 这类工具,值得装。它对「AI 别乱动我的钱」这件事想得比大多数同类细,光那几页审批规则就够抄一份。

如果你要的是一个本地、不联网、不授权就能跑的工具,别碰。它现在一行代码都没有,断网之后只剩一堆文档。

同类里还有另一条路,装聚合型技能库:什么都有,但每样都浅。这个包相反,深度够,面窄,而且有一部分能力要授权才能碰。

还有一个现实的门槛:它对中文不友好。45 份手册全是英文,规则写得细,但中文用户要读进去,还得先过语言这一关。这是它进国内项目时绕不开的成本。

最后一句

4,133 个 Star 投的其实是作者的行业经验,不是代码。这不算是骗人,但它确实标志着一类新项目出现:仓库只是目录,资产在服务端。

判断很简单。把它当「拿不到源码的付费服务的说明书」来预期,你不会失望;把它当开源工具来预期,第一天就会踩坑。

关注 AI商业快讯,每天一篇 AI 热点深度解读。