Muse Ember 编程子代理:价格、评测与接入配置
让 Muse Ember 处理范围明确的编程任务,把规划和最终审查交给更强的模型。对比直接 API 价格与编程评测,计算输入超过 200K tokens 时整笔请求的费用。完成 Meta API 响应检查、Claude Code 子代理分配与模型验证,并了解 OpenRouter、Cline、地区限制和数据模式的差异。
本文内容

先把范围明确的编程子任务交给 Muse Ember 试用,将规划和最终审查留给更强的模型。尽量把每个子代理的输入控制在 200K tokens 以下;超过这一阈值,Meta 会对整笔请求采用 3 倍单价。不要只凭某项评测中的高分,就替换主力编程模型。
截至 2026-11-12,Meta 通过 Model API 和 Muse Code 提供 muse-ember-1.0。该模型于 11 月 9 日发布,主要面向重复的工具调用、编程子任务、请求路由和信息提取。
哪些工作适合交给 Muse Ember?
给 Ember 分配范围小、目标明确的任务,并提供所需上下文与可验证的结果要求。模糊需求的判断、架构决策和最终验收仍由规划模型负责。
Meta 的模型指南建议将 Ember 与 Muse Spark 或 Muse Wonder 搭配使用。大模型负责规划,Ember 负责重复执行。初次试用可以安排查找相关函数、读取包配置、提取测试失败信息等任务,也可以让它完成带有明确验收测试的小改动。
对于需要一次性解决的复杂编程问题,或高度依赖知识的问题,Meta 建议使用 Spark 或 Wonder。当任务需要自行寻找正确思路,而不是照着清晰的指令执行时,这一区别尤其重要。
直接 API 标注的上下文窗口为 1,048,576 tokens,最大输出为 524,288 tokens。这不代表编程客户端也支持相同的长度。Ember 的默认推理强度为 max,可设置为 minimal 到 max 之间的档位。
先从只读调查开始。待子代理能稳定返回正确的文件引用与有用结论,再授予编辑权限。
编程评测能说明什么?
从发布时的成绩看,Ember 值得作为执行子代理试用,但不能据此认定它最适合产出可直接合并的修改。
Meta 在 11 月 9 日发布的对比中,所有模型都采用最高推理强度,结果如下:
| 评测 | Muse Ember | Claude Haiku 5.5 | GPT-6 Luna |
|---|---|---|---|
| Terminal-Bench 4.0,采用最佳公开代理执行框架 | 40.9 | 39.2 | 16.4 |
| Artificial Analysis Coding Agent Index | 46 | 37 | 31 |
| FrontierCode 2.0-AA | 27.2 | 34.9 | 25.2 |
发布页的表格与脚注区分了测试配置。Terminal-Bench 对 Ember 使用 mini-swe-agent,对 Haiku 使用 Claude Code,对 Luna 使用 Codex。代理执行框架是负责驱动模型并协调工具调用的软件。这里比较的是“模型+代理执行框架”的组合,并非在同一个工具中只替换模型的受控对比。
Artificial Analysis 也独立发布了 Coding Agent Index 结果:Muse Code 中的 Ember 得分为 46,Claude Code 中的 Haiku 为 37,Codex 中的 Luna 为 31。
该机构在 Intelligence Index 评测中还给出了 Haiku 的 Terminal-Bench 成绩:32.8。不要未经说明,就用它替换 Meta 表中最佳公开执行框架下的 39.2。这两个数字来自不同的评测系列。
需要注意的弱点是一致的:Ember 在 FrontierCode 上落后于 Haiku。该评测关注工程修改能否合并进项目。先用 Ember 测试代码调查和范围受限的执行任务。如果你更看重最终能通过验收的修改,而不是降低中间步骤的费用,就保留 Haiku 或现有更强的子代理模型。
我们的 Coding Agent Index 单任务成本指南介绍了如何比较完整的代理配置,避免把组合成绩当作模型本身的能力测量。
超过 200K 输入后,费用怎么变?
按输入长度计算预算,而不是按宣传的上下文容量估算。Meta 的直接 API 会把缓存输入和保留的对话历史都计入 200K 阈值。
以下为截至 2026-11-12 的直接 API 公开价格,所有金额均为每 1M tokens 的 USD 价格。适用时采用标准处理费率,不含地区附加费、批处理折扣或服务端托管工具费用。
| 模型与输入档位 | 未命中缓存的输入 | 缓存输入 | 输出 |
|---|---|---|---|
| Muse Ember,输入不超过 200K | $0.10 | $0.004 | $0.50 |
| Muse Ember,输入超过 200K | $0.30 | $0.012 | $1.50 |
| Claude Haiku 5.5,输入不超过 100K | $0.10 | $0.01 | $0.50 |
| GPT-6 Luna,输入不超过 272K | $0.10 | $0.01 | $0.50 |
| DeepSeek V4.1 Flash 1017,非高峰时段 | $0.15 | $0.003 | $0.60 |
| DeepSeek V4.1 Flash 1017,高峰时段 | $0.30 | $0.006 | $1.20 |
来源:Meta 价格、Anthropic 价格、GPT-6 Luna 价格和 DeepSeek 价格。
Haiku 的输入超过 100,000 tokens 后,各项单价变为 5 倍。Luna 的输入超过 272K tokens 后,输入和缓存单价变为 2 倍,输出单价变为 1.5 倍。两者都对缓存写入单独计费,因此缓存命中的单价并不代表创建和复用缓存的全部费用。
DeepSeek 的 deepseek-flash 当前提供 V4.1 Flash 1017。高峰时段为周一至周五的 01:00–04:00 和 06:00–10:00 UTC,中国法定节假日除外。其他时间采用非高峰费率。
计算 Ember 的费用时,将未命中缓存的输入记为 U,缓存输入记为 C,计费输出记为 O。先按 U + C 选择价格档位,再代入公式:
Token cost = (U × input_rate + C × cache_rate + O × output_rate) / 1,000,000
下面是两笔直接 API 请求的费用估算,假设没有缓存命中,也不使用付费服务端工具:
199,000 input + 10,000 output:
(199,000 × $0.10 + 10,000 × $0.50) / 1,000,000 = $0.0249
201,000 input + 10,000 output:
(201,000 × $0.30 + 10,000 × $1.50) / 1,000,000 = $0.0753
第二笔请求的高价适用于全部输入和输出,而不只是最后 1,000 tokens 的输入。
Meta 还会把 previous_response_id 对应的对话计入输入。因此,即使新增消息很短,也可能触发长上下文费率。给子代理提供范围明确的任务说明,不要转发规划模型的整段对话。
Artificial Analysis 在 11 月 9 日的评测中报告,Ember 得分为 36,平均每项 Intelligence Index 任务花费约 $0.14。Haiku 同样为 36 分,费用为 $0.41;DeepSeek V4.1 Flash 1017 为 33 分,费用为 $0.60。这些是评测平均值,不是你实际仓库任务的报价,也不保证相同的任务成功率。
与 DeepSeek 比较时,请参考当前 Flash 型号与价格说明,不要套用旧版 V4 的费率。
接入 Meta API,并验证一次响应
新接入建议使用 Responses。已有代码采用消息数组时,可继续使用 Chat Completions;Anthropic 格式的客户端则使用 Messages。
| 格式 | 请求端点 |
|---|---|
| Responses | POST https://api.meta.ai/v1/responses |
| Chat Completions | POST https://api.meta.ai/v1/chat/completions |
| Messages | POST https://api.meta.ai/v1/messages |
三种格式都使用 Bearer 认证。但请求结构不同,仅更换 URL 不会自动转换请求体。
在 Meta Model API 控制台中,通过 API keys → Create API key 创建密钥。快速入门文档介绍了这一步账户设置。
安装 curl 和 jq 后,在 Bash 中执行以下基础连通性测试:
set -o pipefail
read -rs MODEL_API_KEY && export MODEL_API_KEY
curl --fail-with-body --silent --show-error \
"https://api.meta.ai/v1/responses" \
-H "Authorization: Bearer $MODEL_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "muse-ember-1.0",
"input": "Classify this ticket as bug, billing, or feature. Return only the label: The parser unit test now fails.",
"reasoning": {"effort": "minimal"},
"max_output_tokens": 1024,
"store": false
}' |
jq '{
status,
model,
text: (
[.output[]?
| select(.type == "message")
| .content[]?
| select(.type == "output_text")
| .text]
| join("\n")
),
usage
}'
检查结果是否包含 status: "completed"、Ember 的模型 ID、bug 分类,以及带有用量数据的 usage 对象。这些字段遵循文档中的 Responses 响应结构。
这个测试特意使用 minimal 推理强度。公开评测采用的是 max,因此连通性测试并不复现那些评测结果。输出上限同时包含推理内容和可见输出。
如果请求失败,先查看返回的错误,再考虑接入工具。重新检查密钥、端点和准确的模型 ID。如果输出不完整,检查输出额度,并调整为合适的上限后重试。
成功分类只验证了 API 调用路径,不能证明模型已能访问仓库或执行工具。
将 Claude Code 的明确子任务交给 Ember
使用 Meta 文档中的 Messages 接入方式,可以具体测试“规划模型+执行子代理”的组合。这条路径让 Claude Code 调用 Meta 模型,不会在同一个 Meta 接口下保留 Claude 模型来做规划。
安装 Claude Code,并保留上一步的 MODEL_API_KEY。进入一个包含 package.json 的临时 JavaScript 测试项目,在 Bash 中执行:
(
unset ANTHROPIC_API_KEY
export ANTHROPIC_BASE_URL="https://api.meta.ai"
export ANTHROPIC_AUTH_TOKEN="$MODEL_API_KEY"
export ANTHROPIC_MODEL="muse-wonder-1.0"
export ANTHROPIC_DEFAULT_OPUS_MODEL="muse-wonder-1.0"
export ANTHROPIC_DEFAULT_SONNET_MODEL="muse-spark-1.3"
export ANTHROPIC_DEFAULT_HAIKU_MODEL="muse-ember-1.0"
export CLAUDE_CODE_SUBAGENT_MODEL="muse-ember-1.0"
claude
)
这些环境变量的修改只在括号创建的子 shell 中生效,不会延续到后续 shell 会话。Meta 的编程代理接入说明指定基础地址不带 /v1,并通过 ANTHROPIC_AUTH_TOKEN 进行 Bearer 认证。
主模型是 Wonder,haiku 别名和子代理默认模型都指向 Ember。不过,当前 Claude Code 的模型配置允许调用参数和代理定义覆盖子代理的默认模型。
使用下面这段明确指定模型的测试提示词:
Use one general-purpose subagent with the haiku model to read package.json.
Return the package name and scripts.test value, or say which field is absent.
Do not edit files or execute commands. Then stop.
这段指令要求一个使用 haiku 的通用子代理读取 package.json,返回包名和 scripts.test 的值;字段不存在时应明确说明。它还要求子代理不要编辑文件或执行命令,完成后停止。
在子代理运行期间查看 /tasks。Claude Code v2.1.242 及以上版本会在这里显示子代理实际使用的模型。确认它使用 muse-ember-1.0,确实调用了文件读取工具,而且报告内容与 package.json 一致。
保持常规工具审批机制开启。提示词中的“只读”要求并不能形成技术上的权限边界。
如果实际运行的是其他模型,先检查调用参数和代理定义,不要直接归因于服务商。若希望全程保留 Anthropic 模型,可以参考只读 Haiku 子代理的配置与模型验证指南。
在 OpenRouter 或 Cline 中选择模型,不等于只切换子代理
应用已经接入 OpenRouter 时,可以沿用这条路径,但要选择它的模型 ID,而不是 Meta 直接 API 的 ID。
OpenRouter 的模型页面使用 meta/muse-ember。其 Responses 快速入门指向 https://openrouter.ai/api/v1/responses,需要 OpenRouter 的 API 密钥,而不是 Meta 的密钥。
截至 2026-11-12,该页面显示每 1M tokens 的输入价格为 $0.10,输出价格为 $0.50。模型目录还列出了缓存读取和写入价格。发送输入超过 200K tokens 的请求前,先确认所选服务商的长上下文计费方式。页面展示的基础单价不能证明整个上下文窗口都采用相同价格。
在 Cline 中,按照其 OpenRouter 服务商配置指南操作。打开 Settings,在 API Provider 下选择 OpenRouter,输入自己的 OpenRouter API 密钥。随后在模型选择器中选中 meta/muse-ember。使用标准 OpenRouter 接入时,将可选的自定义基础 URL 留空。
请求编辑前,先执行同样的文件读取任务。确认发生了真实的工具调用,并把返回的字段值与文件内容核对。
在服务商的模型选择器中选中 Ember,并不能证明只有子代理会使用它。Cline 的原生子代理文档目前适用于 CLI 和 Desktop,不适用于 VS Code 或 JetBrains 扩展。若要明确验证上文描述的不同模型分工,请使用前面的 Claude Code 配置。
发送代码前,检查地区限制和数据设置
上传仓库内容前,先检查所选接入路径的条款。聚合平台上架模型,并不等于你的所在地或部署方式获准使用。
截至 2026-11-12,Meta 的 Geographic Use Policy将俄罗斯、白俄罗斯和伊朗等列为受限地区。限制包括从这些地区访问服务,以及明知最终用户位于受限地区,仍允许其访问集成产品。该政策还禁止通过技术手段绕过地理访问限制。
在 Model API 上,Ember 仅提供 Standard 模式,没有 Contributor 模式的版本。Meta 表示,Standard 模式下的内容不会用于训练其模型。
这不等于承诺零数据留存。Zero Data Retention 需要单独开通,不同模型的支持情况也可能不同。
Muse Code 订阅另有规则:默认开启 Contributor 模式。通过订阅处理仓库内容前,先检查这一设置。要关闭它,打开 /settings,选择 Contributor mode 这一行并将其关闭。该设置按设备分别保存,因此每台电脑都要检查。
先做小范围试用,再决定是否切换
调整全团队的模型路由前,先用一组固定且有代表性的任务,对比 Ember 与当前的子代理模型。
例如,从近期工作中选取 20 项任务。保持仓库快照、工具权限、验收检查和缓存策略一致。记录实际使用的模型、推理强度、输入长度、重试次数、耗时,以及每项结果是否通过验收。
把规划模型、执行子代理、重试和模型审查的费用相加,再除以通过验收的任务数:
Cost per accepted task =
(planner cost + worker cost + retry cost + model-review cost)
÷ accepted tasks
人工审查时间单独记录。只有在每项通过验收的任务成本降低,且质量没有不可接受的下降时,才扩大 Ember 的使用范围。若某类任务因重试或修改未通过验收而抵消了节省的费用,就继续使用原来的子代理模型。