认识 Cloudflare Clef —— 一个字都不写,只给概率:38.8 毫秒的决策模型
先坦白一件事:我第一次看完 Clef 的介绍,脑子里冒出来的念头是——这不就是个分类器吗?
然后我把自己骂回去了。
因为我确实干过这种事:为了让 Agent 判断一条工单该给哪个团队,我恭恭敬敬地请一个大模型写三百字的"推理过程",然后用正则去那坨文本里抠一个 JSON,抠不到就 retry,抠到了还得 validate。这套流程我用了两年,从来没觉得哪里不对。
直到有人问我:你花了几百毫秒和一堆 token,就为了拿一个是或否?
让一个能写诗的模型去回答"是或否",是这两年 Agent 工程里最普遍、也最没人反省的一种浪费。
2026 年 10 月 1 日,Cloudflare 给出了它的答案:Clef 和 Clef-flash。这是 Cloudflare 自家 Workers AI 团队训练的第一批模型,而这两个模型有一个共同点——它们不生成任何文本。
什么是 Clef
一句话:Clef 是一个"决策模型"(decision model):你给它一段现状描述和一批带类型的问题,它一次性返回每个允许答案的概率,然后闭嘴。
注意,它和大模型的差别不是"小一点"或"快一点",是输出形态根本不同:
- 大模型:读你的输入 → 一个 token 一个 token 地生成 → 吐出一段文字/JSON → 你的代码去解析、校验、容错
- Clef:读你的输入 → 单次前向传播(prefill-only)→ 直接给出
billing: 0.98→ 你的代码if一下就完了
中间那堆"推理 token"和"输出解析",被整段删掉了。
这个品类不是 Cloudflare 发明的。大约一个月前,TypeSafe AI 的 Jev 把它带进了大众视野,整个 AI 圈为之一振。Cloudflare 这次是紧跟其后——而且上来就摆明了三处硬碰硬的差异:
| 对比项 | Clef / Clef-flash | Jev |
|---|---|---|
| 权重 | Apache 2.0,Hugging Face 可下载 | 不公开 |
| 上下文窗口 | 64K tokens | 32K |
| 输入模态 | 文本、JSON、最多 4 张图片、视频(带视觉编码器) | 仅文本 |
另外,Clef 完全兼容 Jev 的 System One API——老集成改个 endpoint 和 model 名就能切过去,不用重写代码。这一手很实在。
基本盘:
| 项目 | 情况 |
|---|---|
| 发布方 | Cloudflare(Workers AI 团队自研,首批自训模型) |
| 发布时间 | 2026 年 10 月 1 日 |
| 模型 | @cf/cloudflare/clef(27B)、@cf/cloudflare/clef-flash(9B) |
| 基座 | Clef 后训练自 Qwen3.8-27B,Clef-flash 后训练自 Qwen3.5-9B(均为冻结基座) |
| 上下文窗口 | 64K tokens(65,536) |
| 架构 | prefill-only,非自回归:冻结 Qwen 骨干跑一遍前向,再由 joint schema head 并行给所有选项打分 |
| 许可证 | Apache 2.0,权重与推理代码均公开 |
| 单次提问上限 | 64 个问题 |
顺手说个名字的由来,我觉得挺有意思:在乐理里,clef(谱号)是写在五线谱最左边那个符号,它决定了后面每条线上是什么音。 Cloudflare 说决策模型就像谱号——它定义了上下文的域,以及后面能弹出哪些音(动作)。而 "CF" 正好是 Cloudflare 的缩写。一个双关,我给满分。
特点
- 三种问题类型,够用了:
noul(是/否,返回"是"的概率)、choice(从你给的选项里挑一个,返回每个选项的概率和置信度)、score(按你定义的有序评分标准打分,返回概率加权分数)。一次请求最多塞 64 个问题。 - 快得不像话:官方 43 次 benchmark 跑下来,Clef 中位延迟 209.3 ms,Clef-flash 38.8 ms,Jev 是 524.1 ms——Clef 快 2.5 倍,Clef-flash 快 13 倍。p95 分别是 238.6 ms 和 122.4 ms(Jev 536.0 ms)。
- 只收输入 token 的钱:Clef $0.24 / 百万输入 token,Clef-flash $0.09 / 百万。没有输出计费——因为它压根不输出文本。按 Cloudflare 的说法,一次决策如果平均吃掉 1,000 个输入 token,做一百万次决策,Clef 花 240 美元,Clef-flash 花 90 美元。
- 跑在边缘 GPU 上:Workers AI 把模型铺在 Cloudflare 全球网络的 GPU 上,网络往返短,所以你敢把它放在 Agent 请求的热路径里——先让 Clef 决策,再交给 LLM 去执行。
- 能看图:这是它跟 Jev 最大的差别之一。Clef 带视觉编码器,可以随 state 一起传最多 4 张图片。文本-only 的决策模型做不到这事儿。
- 还能再调:Cloudflare 同期发布了 RL 强化学习微调服务,可以用你自己的数据把 Clef 调成你的形状。不过目前还是"设计合作伙伴"形式,得跟 Cloudflare 工程师一起搞,自助版本说是在路上。
有人问过我"决策模型会不会取代 LLM"。我的看法是:这问题问错了。它不是来取代的,它是来把 LLM 从一堆它根本不该干的活里捞出来的。
能拿来干什么
官方文档列了五个方向,我挑几个有真实数据的讲。
1. 工单分诊(Support triage) 这是最典型的。给 Clef 一条客服消息,问两个问题:urgent(是否紧急,noul)+ team(该归哪个团队,choice)。它直接给你概率,你的代码照着路由就行,人不需要在环里。
2. 威胁情报(这个有 Cloudflare 自己的实测数据) Cloudflare 的 Threat Intelligence 团队拿 Clef 干的一件事是给网站域名分类。配合 Browser Rendering 抓取渲染,Clef 完成"抓取 + 渲染 + 分类"全流程用了 2.2 秒;同样的流程换成他们手上最快的通用大模型 gpt-oss-120b,用了 4.7 秒,而且只返回了两个分类。
2 倍多的速度差,对威胁情报这种"早一秒发现就少一批人中招"的场景,是实打实的业务价值。
官方举的例子长这样:给 Clef 一个域名,它可能告诉你 95% 概率是时尚网站、85% 电商、<1% 钓鱼。注意这个输出——它不是"我认为这是时尚网站"的一句话,而是每个标签各带一个概率。你的策略层可以定阈值:phishing > 0.3 就拦,> 0.05 就转人工。这种可调的旋钮,是纯文本输出给不了的。
3. 信任与安全(Trust and safety) 拿你自己的政策评分标准去给用户投稿打分,然后按概率行动。
4. Agent 护栏(Guardrails) 让 Agent 在真正调用工具之前,先用几十毫秒问一句"我该不该执行这个动作"。
5. 视觉分类 文本之外的图片场景,比如审核用户上传的图。
至于基准成绩,官方口径是 10 项决策基准里 7 项第一。挑几个出来:
| Benchmark | Clef | Clef-flash | Jev |
|---|---|---|---|
| BFCL (case exact) | 98.47 | 98.76 | 95.75 |
| BANKING77 (macro-F1) | 94.20 | 90.93 | 79.74 |
| CLINC150+OOS (macro-F1) | 97.43 | 66.77 | 89.27 |
| Home appliances (case exact) | 82.95 | 97.73 | 52.27 |
另外在 TypeSafe 自己的工作流评测上,Clef 在 4 个领域里赢了 3 个:发票处理、客户服务、安全事件。
初体验:三分钟跑起来
最省事的路径是直接用 Workers AI,几行代码的事:
const response = await env.AI.run("@cf/cloudflare/clef", {
model: "clef",
state: "Checkout has been failing for every customer for the last hour.",
questions: {
urgent: {
type: "noul",
instructions: "Is this support request urgent?",
},
team: {
type: "choice",
instructions: "Which team should handle this request?",
criteria: {
billing: "Payments, invoices, and refunds",
technical: "Outages, errors, and configuration",
sales: "Plans and upgrades",
},
},
},
});
// response.answers.urgent.noul -> 这条请求紧急的概率
// response.answers.team.choice -> 概率最高的团队看清楚这个输入输出——没有 prompt 工程,没有"请你以 JSON 格式输出",没有 retry,没有 json.loads 外面套 try-except。 你定义问题和选项,它给概率。就这些。
调用方式有两种:Workers AI binding(env.AI.run())或者 REST API 的 /ai/run,也支持走 AI Gateway。
想自己部署的,权重在 Hugging Face:Cloudflare/clef 和 Cloudflare/clef-flash,Apache 2.0,也能通过 Ollama 在本地跑。
先别急着上,几个坑得说清楚
我这人有个毛病,看见"开源""第一""13 倍"就想泼冷水。以下几个点,你上线前必须知道:
- 它是 open-weight,不是完全 open-source。 Cloudflare 官方通稿用的是"open-source",但 The Register 找 Cloudflare 的产品经理确认过,训练数据集不公开。权重能下载能部署能商用,但你复现不了训练过程。这个区别现在越来越重要,别被词儿糊弄了。
- 所有 benchmark 和延迟都是 Cloudflare 自己跑的。 包括那张"7/10 第一"的表,出自他们自己的 Decision Index 套件,目前没有第三方独立复现。不是说数据造假,而是说——你自己的场景得自己测,尤其要测校准(calibration)和尾延迟。
- 比 Jev 贵。 Clef $0.24 / 百万 token,Jev 大约 $0.042 / 百万,接近 6 倍。Cloudflare 的理由是"我们不收输出 token",但对于输入很短的决策场景,这个理由未必能抹平差价。
- Clef-flash 不能无脑替 Clef。 看那张表:CLINC150+OOS 上 Clef 是 97.43,Clef-flash 只有 66.77,差了 30 多分。快是快,但便宜档位在"判断密集型"任务上不是贵档位的平替。合理的用法是按难度分流:清楚的走 flash,模棱两可的走 Clef。
- 本地部署门槛不低。 单并发、64K 上下文下,Clef-flash 至少要 41 GB 显存,Clef 要 85 GB。消费级显卡基本无缘,一张 80GB 的卡刚好能塞下 flash。
- 延迟会叠加。 一个任务里 Agent 分支 20 次,按中位数算,Clef 要等约 4.2 秒,Clef-flash 约 0.8 秒。这个差距决定了你是做交互式流程还是批处理流程——单个数字看着小,乘上分支数就吓人了。
决策模型这东西的价值,不在"它有多准",而在**"它把不确定性变成了可设阈值的数字"**。概率给你了,阈值你自己定,责任也就清楚了。这是工程上的一大步。
进阶
如果你打算认真用 Clef,我建议这么走:先拿 Workers AI 免费额度把你最痛的那个分支点(通常是意图分类或工具选择)改造成 choice 问题,跑一周,对比一下原来的 LLM 方案在延迟和成本上的差距;确认有效之后再考虑 RL 微调或者自部署。
另外,这个赛道一周之内挤进了四家——Jev、OpenAI 的 Decisions API、亚马逊的 Strands Decider 2B、还有 Clef。这种密度说明的不是"谁家营销厉害",而是很多团队已经撞上了同一堵墙:用生成式模型做路由,又慢又贵。
更多开源技术干货和学习资料,关注公众号「遇码」,领取专属福利。
