生物模型

把 DNA 直接丢进聊天框:Hugging Face 开源 148 亿参数 Carbon-X,突变判读追平 GPT-6.1,单题成本约 1/1800

2026年11月2日0 次阅读
把 DNA 直接丢进聊天框:Hugging Face 开源 148 亿参数 Carbon-X,突变判读追平 GPT-6.1,单题成本约 1/1800

导语

10 月 30 日,Hugging Face 把训练 DNA 大模型用的全套数据公开了:一个叫 FineDNA 的数据集,Apache 2.0 许可,包含中级训练、监督微调、强化学习三个阶段共 5143 亿可用 token。配套的模型叫 Carbon-X,148 亿参数,基于 Qwen3-14B 改造,同样 Apache 2.0,权重和代码都能下载。

它的用法很直接:把一段碱基序列粘进聊天框,用英文问"这个突变是良性还是致病",模型直接给判断和理由。官方模型卡上的数字是:五项 DNA 基准平均 66.7 分,闭源的 GPT-6.1 Sol 是 67.5,单题推理成本约为后者的 1/1800。

需要说清楚时间线:Carbon-X 的权重 10 月 21 日就上了 Hugging Face,FineDNA 数据集 10 月 30 日才公开,10 月 31 日到 11 月 2 日英文和中文媒体集中报道。所以这轮新闻的由头是"数据集开源 + 权重被推到台前",不是"模型今天首发"。(本文基于多家媒体转述整理,技术细节以 Hugging Face 模型卡、数据集卡和 GitHub 仓库为准,媒体报道用于交叉印证。)

3分钟看懂

  • 谁做的:Hugging Face Bio,联合中关村学院、意大利 Telethon 遗传学与医学研究所(TIGEM)、那不勒斯费德里科二世大学。
  • 是什么:一个 148 亿参数的 DNA-语言混合模型。DNA 和英文共用同一个解码器、同一套词表,不是"DNA 编码器 + 语言解码器"的拼接。
  • 能干什么:判断单碱基/插入缺失突变是良性还是致病、识别增强子与启动子、剪接位点、转录因子结合位点、预测序列接下来的碱基、用自然语言解释判断依据。
  • 多大:上下文 40,960 token,约合 4.9 万个碱基对;BF16 权重约 30GB,单张 80GB 显卡能跑,也放了 GGUF 版本给 llama.cpp 在本地跑。
  • 多少钱:官方口径单题成本约为 GPT-6.1 Sol 的 1/1800;按他们的估算,把 ClinVar 里 240 万个"意义未明变异"全过一遍约 300 美元,用前沿闭源模型要 3.2 万到 400 万美元。
  • 最该记住的一句:它不是"更小的 AlphaFold"。AlphaFold 系列解决的是"蛋白长什么样",Carbon-X 解决的是"这段 DNA 在说什么、这个字母改了会怎样",而且答案是用人话给的。

它到底解决了什么别扭的地方

过去两年,基因组方向有两类模型,各有各的别扭。

一类是纯基因组基础模型,比如 Evo 系列、GenomeOcean 这一类。它们在几十亿到上万亿碱基上预训练,能算序列似然、能生成序列,但输出的是分数或 token,不给解释。你想知道"为什么这个变异可能致病",得自己再套一层分析。

另一类是通用大模型。它们读了很多论文,能聊生物学,但没真正"看过"原始碱基排布。把一段 8000 bp 的序列丢给它们,很多时候是在猜,甚至会编一个基因名出来。

Carbon-X 想站的位置在中间:输入是原始碱基,输出是自然语言,中间不换模型。 这个选择带来的直接好处是,模型可以把"序列上看到了什么"和"生物学上意味着什么"写在同一个回答里;坏处是它也会像所有语言模型一样自信地胡说,这一点官方模型卡自己写得很清楚。

技术拆解:一个解码器、一套词表、一种新分词

真正让这件事成立的不是参数规模,是分词器。

普通 BPE 分词器处理 DNA 是最差情况:一段碱基会被切成大量短碎片,40,960 的上下文很快就用完了。Carbon-X 的做法是给 Qwen3 的词表加 5,515 个 DNA 专用 token:4,096 个是"六碱基块"(一个 token 覆盖 6 个碱基对),1,364 个是处理长度不是 6 的倍数时的尾 token,再加上 <dna>、</dna>、<oov> 三个标记。

效果是同一段序列占用的 token 数降到常规 BPE 的约三分之一,所以 4 万 token 的窗口能装下约 4.9 万个碱基对。

工程上有几个细节值得知道:

  • 提示里连续 6 个以上的 A/C/G/T 会被自动打上 DNA 标签;12 个碱基以上、含不超过 20% IUPAC 简并码(N、R、Y 等)也会被识别。
  • 只有 A/C/G/T 能组成六碱基块。含 N 的块会退化成单个 <oov> token,所以正式用之前最好先把序列过滤成规范碱基。
  • 因为分词器是自定义代码,加载时必须 trust_remote_code=True,并且要 Transformers v5 以上。这是部署时最常见的第一个坑。

架构本身没有花活:40 层、隐层 5120、40 个查询头配 8 个 KV 头(GQA)、SwiGLU、带 QK-norm 的 RMSNorm、RoPE 底数 1e6、词表 157,184。就是把一个成熟的语言模型骨架,改造成能读碱基的形态。

训练分三步,第二步才是"会说话"的关键

第一步,中级训练。 从 Qwen3-14B 出发,先把新加的 DNA 词嵌入单独训约 100 亿 token(主干冻结),再全模型解冻,训 3020 亿 token,序列长度 8192。数据配比是:原始 DNA 55%(其中脊椎动物 16.2%、哺乳动物 10.3%、无脊椎动物 7.6%、植物 3.1%、真菌 1.1%、原生动物 0.2%,mRNA 8.8%,原核 5.5%,带剪接位点和启动子的 mRNA 2.2%)、英文 20%、生物学文本 15%、指令数据 10%。

这里有个很实在的工程结论,模型卡写得很直白:中级训练阶段学习率是最关键的旋钮。低了,DNA 学不动、等于瞎猜;高了,DNA 学会了但英文忘光。他们最后用 5e-5 余弦衰减到 5e-6。

第二步,监督微调。 20 多万段对话、2.3 亿 token,覆盖八个方向:变异效应推理(占约 30%,同一个变异给多个视角)、序列分类(增强子/启动子、物种群、转录因子 motif 与结合位点)、基础 DNA 操作(计数、GC 含量、熔解温度、查找、编辑)、序列还原与下一碱基预测、社区问答里的生物学问题、指令跟随与格式跟随。

第三步,强化学习。 用异步 GRPO 加可验证奖励,两轮,全程关闭"思考模式"。第一轮 98,433 条提示训 150 步,第二轮从新 checkpoint 的 rollout 里再筛 58,249 条。奖励是任务专用的、代码校验的:变异判断对错、分类对错、位置定位对错、指令跟随是否合规;对变异任务还专门加了一条"理由没有依据就扣分",用来压制编造解释。

训练数据对五个评测集做了三道去污染:整段 DNA 重叠检查、文本 n-gram 重叠检查、序列同源搜索。这一点值得单独提,因为基因组模型最容易栽的就是"测试集早就见过"。

数字怎么读:66.7 对 67.5 不是"打平",是"各赢一半"

官方那张表要拆开看,五项任务的胜负并不一致:

  • 编码区变异(BioReason Coding,1018 个变异):Carbon-X 74.9,GPT-6.1 Sol 71.0,Opus 5.5 70.3。这一项它真赢了,而且提示里把基因名去掉了,只能靠序列本身判断。
  • 下一碱基预测(NextBase,600 条序列):39.4 对 32.9,也赢。但注意绝对值只有三成多,说明"续写 DNA"这件事离可用还很远。
  • 非单碱基变异(BioReason Non-SNV,873 个):85.1,输给 GPT-6.1 的 91.7 和 Opus 5.5 的 94.8。插入、缺失这类结构变化仍是短板。
  • DNA 理解(GenomeQA,2600 题):63.6 对 67.2,小输。拆开看更难看:增强子/启动子 70.0,物种群分类 93.2,motif 90.0,但剪接位点只有 29.8,组蛋白修饰只有 34.6。
  • 单碱基变异(FrontierVEP,1000 个):70.4,输给 74.9 和 76.2。

所以"平均 66.7 接近 67.5"这句话成立,但不能读成"全面追平"。准确的说法是:在编码区变异和序列续写这两项上领先,在剪接、组蛋白、复杂变异上明显落后。 顺带一提,这个 66.7 是在关闭思考、单次采样下拿到的;对手是各自最高推理档位的成绩。这个对比设置对 Carbon-X 有利,也确实符合它"快、便宜、直接回答"的产品定位。

还有两个数字是媒体报道里补的,不是模型卡原文:混合分词器让同样序列少用约 3 倍 token;把 Carbon-X 当基因组子智能体挂给 Kimi K3 用,后者在基因组任务上提了 11.1 分。第二条属于厂商与媒体口径,没有独立复现。

成本这一栏,才是它真正的位置

把 240 万个意义未明变异跑一遍,官方估算是约 300 美元。他们对比的前沿模型是 3.2 万到 400 万美元。差三个数量级。

这个差距来自两件事:一是模型小、答案短(关闭思考,单题输出 token 很少);二是能在自己的机器上跑。BF16 权重约 30GB,一张 80GB 卡够;量化版能在消费级硬件上跑 llama.cpp。对医院、基因检测公司、还没发表的队列数据来说,"数据不出内网"往往比"分数高两个点"更重要——这也是模型卡在"限制"一节里第一条强调的:基因数据高度敏感,用第三方推理服务前先搞清楚数据怎么被处理。

怎么用:三类人可以直接上手

做变异解读的团队。 最现实的用法不是让它下结论,而是让它做初筛 + 解释草稿。把参考序列、变异位置、参考碱基与替代碱基一起给它(模型卡建议位置和碱基在代码里算好再传,别让模型自己数),让它输出"倾向良性/致病 + 理由",再由人复核。ACMG 分级该走的流程一步都不能少。

做基因检测产品/报告生成的团队。 它的价值在"把序列特征翻译成人话":这个位点在增强子还是启动子区、是不是转录因子结合位点、保守性如何。这类描述过去要串好几个工具,现在一次对话能出草稿,但每个断言都要能被证据回溯。

做 agent 的团队。 模型卡给了现成的接入方式:vLLM 起一个 OpenAI 兼容服务,把 ask_carbon(question, sequences) 包成工具,让上层 agent 按名字引用序列、自己去查 DNA。他们甚至放了 Claude Code / Codex CLI 的 skill 目录。有个提示很实用:上层 agent 经常自己就把 DNA 问题答了,不调用工具,所以要在系统提示里明确要求"涉及 DNA 必须调用 Carbon-X"。

做教学和科普的。 一个能在笔记本上跑、能用英文解释"这段序列在干嘛"的模型,比一堆命令行工具更适合带学生。但必须同时告诉他们:它会编基因名。

不适用场景:四条硬边界

  1. 不能用于临床决策。 模型卡原话:未经临床验证,不应用于医疗决策。剪接位点 29.8 分这种水平,任何一份真实报告都不该只靠它。
  2. 不要指望它设计新 DNA。 官方写得很清楚:Carbon-X 的定位是"读和解释","没有被训练来设计新序列",让它生成长 DNA 质量会掉。要设计蛋白或调控元件,该用 RFdiffusion、Proteina 那一类生成模型,或者 Evo 这类基因组生成模型。
  3. 不要用它做精确计数和定位。 数碱基、算坐标、做编辑,这些交给代码。模型会数错,尤其在长序列里。
  4. 不要外推超长输入。 中级训练用的是 8192 token(约 4.9 万 bp),后训练样本更短;窗口虽然是 40,960 token,但官方承认没评测过远超训练分布长度的输入。整条染色体级别的问题,它接不住。

避坑:五个容易写错的地方

  1. 别写成"今天发布"。 权重 10 月 21 日上架,数据集 10 月 30 日公开,11 月 1 日起媒体集中报道。这是三个时间点,混成一个就是时间造假。
  2. 别把 66.7 说成"超过 GPT-6.1"。 平均分 66.7 低于 67.5,只是差距小;真正的领先在编码区变异和下一碱基两项。
  3. 别把"1/1800 成本"当成"1/1800 算力"。 这是按单题推理成本算的,包含输出 token 少、不开思考模式;训练成本完全是另一回事。
  4. 别把 FineDNA 说成"30 万亿 token"。 数据集卡的口径是 5143 亿唯一 token 可用,Carbon-X 实际读了 3020 亿;"300B"是训练用量,不是数据集总量。
  5. 别忽略剪接位点 29.8 这个数。 这是全表最难看的数字,也最容易被"平均 66.7"盖过去。基因组解读里剪接变异占比不低,这个短板是实打实的。

行动建议

  • 算法团队:先把分词器和 trust_remote_code 的坑跑通,用 vLLM 起服务;评测别只用平均分,按剪接、组蛋白、非 SNV 三类分开看,那才是决定能不能上生产的地方。
  • 做变异解读的团队:拿 200–500 个自己已经定级的变异做小规模回测,重点看它给的"理由"是否能被证据支持,而不只是看判断对不对。
  • 关注数据开放的人:FineDNA 是 Apache 2.0,但中级训练的各来源保留自己的许可,商用前逐个子集确认;这件事比模型权重许可更容易踩雷。
  • 想做 agent 的人:把序列放在文件里、让 agent 按名字引用,别让它在对话里复述长序列——语言模型抄长序列必错。

一句话总结

Carbon-X 不是一个更强的结构预测模型,而是把"读 DNA"这件事做成了能对话、能本地跑、能算得起的样子:148 亿参数、单卡可部署、单题成本约为前沿模型的千分之一,代价是剪接和复杂变异上明显不如闭源对手。配套的 FineDNA 把训练配方连同数据一起摊开,这在基因组模型里不常见——它的长期价值可能不在这一版分数,而在于别人能拿着这套数据去训出什么。

参考来源

  • Hugging Face 模型卡 Carbon-X(Apache 2.0,含完整评测与限制说明):https://huggingface.co/HuggingFaceBio/Carbon-X
  • Hugging Face 数据集卡 FineDNA:https://huggingface.co/datasets/HuggingFaceBio/FineDNA
  • 发布页 Space「Introducing Carbon-X」:https://huggingface.co/spaces/HuggingFaceBio/Carbon-X-Release
  • 代码仓 huggingface/carbon:https://github.com/huggingface/carbon
  • HuggingNews,2026-11-01:https://huggingnews.com/ai/carbon-x-14b-model-matches-gpt-61-sol-in-dna-tasks-at-lower-cost-62bd8550
  • Local AI News,2026-10-31:https://www.localainews.co/news/llm/carbon-x-reads-dna-in-chat-and-predicts-variant-effects-on-one-gpu/
  • explainx.ai,2026-11-01:https://explainx.ai/blog/finedna-carbon-x-hugging-face-dna-dataset-300b-tokens-qwen3-14b-2026
  • DoNews,2026-11-02:https://www.donews.com/news/detail/1/6761904.html

参考来源

评论

0 条已公开
登录或注册后可以参与评论。

正在加载评论...