Carbon-X:DNA 基准 66.7 分,成本仅 GPT-6.1 的 1/1800

Carbon-X 用 148 亿参数在 5 项 DNA 基准上平均拿到 66.7 分,距离闭源前沿模型的 67.5 分不到 1 分,单题推理成本只有它们的约 1/1800。这是 Hugging Face 联合北京中关村学院与意大利那不勒斯费德里科二世大学 Telethon 遗传与医学研究所,在 10 月 22 日开源的第一个把 DNA 序列和自然语言放进同一个解码器的模型。

它把 240 万个 ClinVar 意义未明变异跑完一遍的费用压到约 300 美元,而团队实测的前沿模型需要 3.2 万到 400 万美元。这组数字让生物基础模型的推理费用第一次落进普通实验室的预算区间。

Carbon-X 是什么:一个解码器同时读 DNA 和英文

Carbon-X 走的是 decoder-only 路线,架构来自 2025 年发布的 Qwen3-14B,训练后实际参数 14.8B。它没有单独的 DNA 编码器,DNA 序列和自然语言共享同一条 token 流、进入同一个自回归解码器,因此模型可以直接在普通对话里接收一段基因序列,然后用英文回答它。

模型能做五类任务:判断某个突变是良性还是致病、识别调控基因活性的区域、按生物群分类序列、预测下一个碱基、并附带解释。它输出的内容可以同时包含 DNA 和自然语言。

关键实现是混合分词器。文本走 Qwen3 的 BPE 词表,DNA 走不重叠的 6-mer 编码,一个 DNA token 正好覆盖 6 个碱基对。完整词表 157,184 个 token,其中 151,669 个是 BPE,5,515 个是新增 DNA token:4,096 个 6-mer、1,364 个用于长度不足 6 的尾段,以及 <dna>、</dna>、<oov> 三个标记符。

自动识别规则相当细致:连续 6 个以上 A/C/G/T 会被包进 <dna> 标签并按 6-mer 切分;含 N、R、Y 等 IUPAC 模糊码、长度 12 以上且模糊比例不超过 20% 的片段同样会被标记;小写碱基自动转大写,空格分隔的序列会被拼接。含 N 的 6-mer 会退化成单个 <oov>,想保留全分辨率需要先过滤到标准碱基。序列长度若非 6 的倍数,末尾 1 到 5 个碱基用专门的尾段 token 编码,解码后能拿回原序列。

架构参数上,Carbon-X 是 40 层 Transformer,隐藏维度 5120,FFN 尺寸 17408,40 个查询头配 8 个 KV 头的 GQA,头维度 128,激活函数 SwiGLU,归一化用 RMSNorm 加 QK-norm,位置编码是基数为 1×10⁶ 的 RoPE,上下文窗口 40,960 token,精度 bfloat16,权重以 Apache 2.0 协议开放。

基准成绩:赢下两项,落后两项,平均只差 0.8 分

官方评测覆盖 5 项 DNA 基准,Carbon-X 在关闭思考模式、每题采样一次、采用默认采样参数下逐项对比。参与对照的模型都取各自得分最高的推理强度档位。

任务 基准 Carbon-X
无思考
GPT-6.1 Sol
Max
Opus 5.5
Max
Gemini 4 Argon
Low
GLM-5.3
Low
Kimi K3
Low
DeepSeek V4.1 Flash
Low
编码区突变影响 BioReason Coding 74.9 71.0 70.3 6.5 52.1 53.9 51.4
复杂变异影响 BioReason Non-SNV 85.1 91.7 94.8 90.3 60.1 65.3 55.9
DNA 理解 GenomeQA 63.6 67.2 62.2 63.1 44.6 52.0 49.7
DNA 预测 NextBase 39.4 32.9 1.1 31.2 9.7 30.6 27.2
单碱基变异影响 FrontierVEP 70.4 74.9 76.2 58.0 32.7 50.1 51.3
平均 — 66.7 67.5 60.9 49.8 39.8 50.4 47.1

五项基准的规模分别是:BioReason Coding 1,018 个变异、BioReason Non-SNV 873 个变异、GenomeQA 2,600 道题覆盖 6 个子任务、NextBase 600 条序列、FrontierVEP 1,000 个变异(500 良性与 500 致病各半,配最长 8,192 个碱基的参考序列)。BioReason 与 GenomeQA 取自已有文献,FrontierVEP 和 NextBase 由团队自建。

几个数字值得单独看。BioReason Coding 会把基因名从提示里抹掉,模型只能从序列本身推断,所以这一项 74.9 分比 GPT-6.1 Sol 的 71.0 分高,领先所有参测模型。NextBase 考的是逐碱基补全,Carbon-X 拿到 39.4%,GPT-6.1 Sol 是 32.9%,Opus 5.5 只有 1.1%,团队把这种极低分归因于模型倾向拒答。Gemini 4 Argon 在 FrontierVEP 上随推理强度升高反而从 58% 掉到 38%,说明这个任务上单纯堆思考预算会走反方向。

GenomeQA 拆到子任务后,分布更不均匀。

GenomeQA 子任务 准确率
生物群分类(真核生物归类) 93.2
序列基序 90.0
增强子与启动子区分 70.0
转录因子结合位点 64.0
组蛋白标记 34.6
剪接位点 29.8

模型在通用指令跟随上没有退化,IFEval 上提示级严格准确率 79.3%,按四项指标平均为 84.0%。所有训练数据都针对这 5 项基准做过三重去污染检查:全跨度 DNA 重叠、文本 n-gram 重叠、以及序列同源检索。

成本账:1/1800 的差距从哪里来

Carbon-X 跑完 ClinVar 里 240 万个意义未明变异大约需要 300 美元,团队测过的前沿模型落在 3.2 万到 400 万美元区间。按单题折算,成本约为 GPT-6.1 Sol API 的 1/1800。

差距的主因有两条,都和关闭思考直接相关。第一,Carbon-X 训练与评测时都关闭思考模式,直接给答案,输出 token 很少,不需要长链条推理去烧钱。第二,对照模型是按各自得分最高的推理强度档位计价的,而高推理强度恰恰意味着高 token 消耗。

成本折算的基准是 H200 每小时 5 美元的单卡吞吐。部署层面,一个 80GB 显存的 GPU 就能装下 bfloat16 权重,vLLM 单卡直接起服务;敏感序列和未发表数据可以完全留在自有基础设施内,不外传。

这条路线和近期大模型开源的降本主线同向。可灵 AI 4.0 深度 深度解析过视频模型从作品生成走向基础设施的过程,Qwen3.8-Omni-Flash 的基准与成本变化 的基准与成本变化也走过同一条曲线。

训练方法:3020 亿 Token 与学习率的两难

Carbon-X 从 Qwen3-14B 出发,先把新增 DNA token 以随机初始化嵌入的方式加进词表,冻结 Transformer 主体训练约 100 亿 token,让新 embedding 先学出基本形状,再解冻整个模型做中训。

中训规模是 3020 亿 token,序列长度 8,192,全局批量 512 条序列,约合每步 420 万 token、总共 72,000 步。学习率走余弦调度,从 5e-5 降到 5e-6,前 2,000 步做热身。团队在消融实验里确认学习率是这个阶段的主导变量:调低了英文保住而 DNA 停在随机水平,调高了 DNA 学到而英文忘掉。

数据配比上,原始 DNA 占 55%,英文 20%,生物文本 15%,指令数据 10%。DNA 内部的构成是:真核基因组 38.5%(其他脊椎动物 16.2%、哺乳动物 10.3%、无脊椎动物 7.6%、植物 3.1%、真菌 1.1%、原生动物 0.2%),原核基因组 5.5%,mRNA 8.8%,带剪接位点和启动子的 mRNA 2.2%。

中训数据成分 占比
原始 DNA 合计 55%
其中 真核基因组 38.5%
其中 原核基因组 5.5%
其中 mRNA 8.8%
其中 带剪接位点与启动子的 mRNA 2.2%
英文 20%
生物文本 15%
指令数据 10%

监督微调在 20 个数据子集的混合上跑 3 个 epoch,学习率从 1e-5 降到 1e-6,全局批量 32,样本最长 9,984 token,损失只在助手 token 上计算。混合里约 30% 是同一变异的多种视角下的影响判断推理,约 10% 是基础 DNA 操作以及程序化生成的计数、搜索、编辑类技能。

强化学习用异步 GRPO 加可验证奖励,关闭思考模式分两轮。第一轮在 98,433 条提示上跑 150 步,第二轮从该检查点出发,在模型自己 rollout 里重新筛出 58,249 条提示再训,发布权重时对混合数据跑了约 2.2 遍。两轮都是每提示 16 个采样、最长 4,096 token、学习率 1e-6、非对称裁剪 ε 取 0.2 与 0.28、梯度范数上限 0.2。奖励函数是任务专用的代码校验器,覆盖变异影响判断、序列特征分类、基础 DNA 操作、序列内位置定位、生物选择题和指令跟随,其中变异判断任务带无依据推理的惩罚项。

还有一个被团队反复强调的前提:直接对 Qwen3-14B 做强化学习,在 FrontierVEP 上始终不高于随机水平,必须先完成 DNA 训练阶段。

当成子智能体:把 Kimi K3 从 49.4% 抬到 60.5%

Carbon-X 的定位之一是通用助手的工具。官方给了一个把 DNA 序列按名字传给模型的函数封装,任何带工具调用能力的助手都能接上;还提供了一个 Inspect 框架的 react() 集成,以及一个给 Claude Code、Codex CLI 用的现成技能,技能只依赖 Python 标准库,提供 ask 和 compare 两个命令,compare 用序列似然给等长变体排序。

效果数据在这里。把 Carbon-X 设为必需子智能体后,Kimi K3 在 5 项 DNA 基准上的平均分从 49.4% 升到 60.5%,提升 11.1 个百分点。这个结果的含义是,一个通用大模型本身在生物序列上很弱,但挂上专用工具后可以逼近 GPT-6.1 Sol 的 67.5%。

团队给的实操建议很具体:DNA 用引用传递,序列放文件或查表,助手只按名字取,避免语言模型抄错长序列;提问时要在系统提示里明确要求调用 Carbon-X,否则助手多半自己回答 DNA 问题;精确的计数、坐标和编辑交给 Python 代码做;下一碱基与续写类问题要限制 max_tokens 并设客户端超时,长 DNA 生成很慢。

短板:三类能力明显不足,且未做湿实验

模型卡列出的限制有六条。最需要留意的是剪接位点 29.8% 与组蛋白标记 34.6% 这两个数字,它们低于随机猜测的常见区间,说明模型在这两类精细调控元件上基本处于无效状态。同时它在教材级生物学和短 DNA 练习题上的表现也弱于核心任务。

第二是精确序列操作。模型会数错碱基、混淆坐标、在长序列里定位错误位置,做编辑类任务时不可靠。第三是长序列生成,模型只训练过读取和解释已有序列,没有被训练去设计新序列,长 DNA 续写质量会下降。第四是上下文边界,中训用的是 8,192 token 序列,约合 49 kbp DNA,后训练样本短于 16k token,模型接口接受 40,960 token,但超出训练分布的长输入没有被评测。第五是模型可能凭空编造序列的身份或功能,提示里给足注释和上下文并复核生物学结论是必要动作。第六是尚未做临床验证,不能用于医疗决策。

还有一条容易被忽略的硬约束:DNA 分词器是自定义 Python 代码,llama.cpp 及其它 GGUF 运行时加载不了。虽然官方另有一个 GGUF 量化仓库存在,但直接用 GGUF 会导致 DNA 分词错误,官方给出的路径是 vLLM 或 Transformers,Transformers 需 v5 及以上版本,分词器加载要开 trust_remote_code=True。

出于防滥用考虑,训练数据里主动排除了感染真核生物的病毒基因组。

把一个专用模型挂进通用智能体的思路,Mercury 3 这类扩散式架构也在用不同方式推进,MemT-1.0 则走的是记忆原生路线,各家在把专有能力接进大系统上的取舍可以对照着看。

怎么用:三行命令起服务

部署路径简单到只需要一张 80GB 显存的卡。先装 Transformers v5 及以上版本,加载模型时给分词器传 trust_remote_code=True,模型用 bfloat16 加载到 cuda 设备即可。官方示例里,DNA 序列和问题放在同一条 user 消息中,变体问题给参考序列与交替序列,或者给参考序列加位置和碱基变化。

要用成服务,就用 vLLM 起 vllm serve HuggingFaceBio/Carbon-X --trust-remote-code,之后任何 OpenAI 兼容客户端都能接。官方代码同时给了 Transformers 直接推理和 vLLM 服务两套片段,采样默认温度 0.6、top-p 0.95、top-k 20,评测结果也是在同一组参数下跑出来的。

模型代码在 GitHub 的 huggingface/carbon 仓库,权重以 Apache 2.0 开放,可以直接商用和二次分发。

常见问题 FAQ

Carbon-X 能替代 GPT-6.1 Sol 做变异解读吗?不能。5 项基准平均 66.7 分对 67.5 分,看似接近,但分布不均:编码区突变影响和下一碱基预测 Carbon-X 更强,复杂变异、单碱基变异影响和 DNA 理解由 GPT-6.1 Sol 与 Opus 5.5 领先。剪接位点 29.8%、组蛋白标记 34.6% 这两项属于明显短板。

它能用于临床诊断决策吗?不能。模型卡明确写出尚未做临床验证,不应作为医疗决策依据。它目前的位置是研究工具,用来把生物学研究从闭源 API 手里解出来,并支撑大规模候选位点筛选这类粗筛任务。

一张普通显卡能跑吗?需要约 80GB 显存,bfloat16 权重刚好装下一张 80GB 卡,vLLM 可单卡起服务。更小的显卡需要量化或切片,但 GGUF 路线不可行,因为自定义 DNA 分词器无法被 llama.cpp 加载。

小结

Carbon-X 的价值不在于刷高了几分,而在于把用前沿模型理解 DNA 这件事的成本压到了三个数量级以下。它没有追求通用能力,也没打算在每个子任务上取胜,而是选了一条更窄的路:把 DNA 理解与生成做成一个可以用一张卡部署、可以塞进任意助手的专用模块。

它同时也诚实地暴露了这类专用模型的共同短板。剪接位点、组蛋白标记这些精细调控任务需要的是更专门的监督信号,长序列生成与精确定位属于工具问题而非模型问题,都得靠外部工程补上。Hugging Face 想解开的正是闭源 API 这一层束缚,而 Carbon-X 给出的答案是:14.8B 参数、Apache 2.0、一张 80GB 卡,外加一张离前沿模型不到 1 分的成绩单。

相关阅读

模型榜单方法论可以对照StartLux 霸榜 Hugging Face 的 RLCD² 方法论深度解析。中文开源模型侧可看Qwen3.8-Omni-Flash 的基准与成本变化,以及DeepSeek V4.1 Flash 深度解读里对编码器-解码器架构的拆解。专用小模型追平大模型的路径可参考微软 MAI-Base-2 用 1/4 算力超越 GPT-5.6 Sol。扩散式架构路线见Inception Mercury 3 扩散式大模型发布。