HuggingFaceBio/Carbon-X(DNA 理解与生成,基于 Qwen 3 微调)

Reddit r/LocalLLaMA 模型

摘要

HuggingFaceBio 发布开源 14.8B DNA 理解与生成模型 Carbon-X,基于 Qwen3-14B 微调,融合 DNA 序列与自然语言训练,在五项 DNA 基准上平均得分 66.7%,接近前沿闭源模型但推理成本约为其 1/1800。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/10/22 21:42

HuggingFaceBio/Carbon-X · Hugging Face 来源:https://huggingface.co/HuggingFaceBio/Carbon-X 博客(https://huggingface.co/spaces/HuggingFaceBio/Carbon-X-Release)| Hugging Face Bio(https://huggingface.co/HuggingFaceBio)| 代码(https://github.com/huggingface/carbon/tree/main) 一个用于 DNA 理解与生成的开源 14B 语言模型,属于 Carbon 系列。 ## https://huggingface.co/HuggingFaceBio/Carbon-X#table-of-contents目录 1. 模型概要 2. 使用方法 3. 评测 4. 训练 5. 将 Carbon-X 作为智能体工具 6. 局限性 7. 许可证 8. 致谢 ## https://huggingface.co/HuggingFaceBio/Carbon-X#model-summary模型概要 相对于 Carbon-X 的每个问题成本的平均 DNA 基准测试得分 每个对比模型均在其最高平均得分所对应的推理强度下展示。成本使用标准 API 定价;Carbon-X 按 $5/小时的 H200 吞吐量进行测算。 Carbon-X 是一个 14.8B 参数的仅解码器语言模型,基于 DNA 序列与自然语言文本联合训练。你可以在普通的聊天对话中输入原始 DNA,它会用英文回答:预测突变是良性还是致病的、识别控制基因活性的区域、按生物类群对序列分类、预测序列的下一个碱基,并解释其推理过程。回答中可以同时包含 DNA 和自然语言。 DNA 和文本共享同一个 token 流,由同一个解码器处理,没有单独的 DNA 编码器。混合 tokenizer 对文本使用 BPE 词表,对 DNA 使用不重叠的 6-mer 编码,因此一个 DNA token 覆盖 6 个碱基对。 在五个 DNA 基准测试中(涵盖变异效应预测、序列理解和下一个碱基预测),Carbon-X 在关闭思考模式时平均达到 66.7%。这比它所基于的 Qwen3-14B 高出 27 个百分点,也领先于我们评测的所有其他开源模型。它接近 GPT-6.1 Sol(67.5%)的水平,但每个问题的推理成本约为后者的 1/1,800,并且在编码变异效应和下一个碱基预测方面领先于我们测试的所有模型(评测)。Carbon-X 直接作答,不进行扩展推理,因此每个问题的输出 token 数量很少。我们估算分析 ClinVar 中 240 万条意义不明变异,使用 Carbon-X 的成本约为 $300,而使用我们评测的前沿模型则需 $32,000 至 $4,000,000。 权重以 bfloat16 精度可存放在单块 80 GB GPU 上,研究人员可以在自有基础设施上部署,以保护敏感或未发表的序列数据。 ### https://huggingface.co/HuggingFaceBio/Carbon-X#key-features主要特性 - 14.8B 参数:40 层,隐藏维度 5120,GQA(40 个查询头,8 个 KV 头),SwiGLU,带 QK-norm 的 RMSNorm。 - 混合 tokenizer:文本使用 Qwen3 BPE 词表,另有 5,515 个 DNA token。包括 4,096 个 6-mer、1,364 个用于长度非 6 倍数的序列的尾部 token,以及 、 和 `` 标记。提示词中的 DNA 会被自动检测并打标。 - 聊天模型:后训练及评测均在关闭思考模式下进行。 - 上下文窗口:40,960 token。 - 训练:在 DNA、生物学文本、英文和指令数据上进行 302B token 的中期训练,随后进行监督微调,并在 DNA 任务上使用可验证奖励进行强化学习。 - 高效推理:可使用 vLLM 在单卡 GPU 上部署。 ## https://huggingface.co/HuggingFaceBio/Carbon-X#how-to-use使用方法 Carbon-X 使用标准的因果 LM 架构。DNA tokenizer 为自定义代码,因此加载 tokenizer 时需传入 trust_remote_code=True。Carbon-X 需要 Transformers v5 或更高版本。 pip install -U transformers import torch from transformers import AutoModelForCausalLM, AutoTokenizer model_id = "HuggingFaceBio/Carbon-X" tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True) model = AutoModelForCausalLM.from_pretrained(model_id, dtype=torch.bfloat16, device_map="cuda") messages = [ { "role": "user", "content": ( "Reference: ATGGTGCATCTGACTCCTGAGGAGAAGTCTGCCGTTACTGCCCTGTGGGGCAAGG\n" "Variant: ATGGTGCATCTGACTCCTGTGGAGAAGTCTGCCGTTACTGCCCTGTGGGGCAAGG\n\n" "Is this variant likely to be benign or pathogenic? Explain your reasoning." ), } ] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, enable_thinking=False, return_tensors="pt", return_dict=True, ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=1024) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True)) Carbon-X 的后训练和评测均在 enable_thinking=False 下进行,我们建议保持这一设置。generate() 使用 generation_config.json 中的采样默认值(temperature 0.6、top-p 0.95、top-k 20),这也正是我们报告所有结果时所使用的设置。 ### https://huggingface.co/HuggingFaceBio/Carbon-X#serving-with-vllm使用 vLLM 部署 pip install -U vllm vllm serve HuggingFaceBio/Carbon-X --trust-remote-code from openai import OpenAI client = OpenAI(base_url="http://localhost:8000/v1", api_key="EMPTY") response = client.chat.completions.create( model="HuggingFaceBio/Carbon-X", messages=[{"role": "user", "content": "What does this sequence encode?\n\nATGGTGCATCTGACTCCTGAGGAGAAGTCTGCCGTT"}], extra_body={"chat_template_kwargs": {"enable_thinking": False}}, ) print(response.choices[0].message.content) vLLM 同样会使用 generation_config.json 中的采样默认值,除非你在请求中覆盖它们。 ### https://huggingface.co/HuggingFaceBio/Carbon-X#tokenizer-working-with-dna-inputsTokenizer:处理 DNA 输入 tokenizer 在文本的 BPE 和 DNA 的 6-mer 之间自动切换。你可以直接将序列粘贴到消息中: >>> ids = tokenizer("Describe this sequence: ACGTACGATTCA")["input_ids"] >>> tokenizer.convert_ids_to_tokens(ids) ['Describe', 'Ġthis', 'Ġsequence', ':', 'Ġ', '', 'ACGTAC', 'GATTCA', ''] - **DNA 自动打标。**长度至少为 6 的 A/C/G/T 碱基串会被包裹在 ... 中并按 6-mer 分词。长度至少为 12 且最多含 20% IUPAC 模糊码(N、R、Y 等)的碱基串也会被打标。小写碱基会被转为大写,以空格分块显示的序列会被拼接。你已包裹在 ... 中的文本始终按 DNA 分词。若某次调用需关闭检测,可向 tokenizer 或 `apply_chat_t

相似文章

@aisolopreneur:Hugging Face 刚刚发布了 Carbon-X,一个开源模型,你可以直接用自然语言问它关于 DNA 的问题,而且在它自己的测试中……

X AI KOLs Timeline

Hugging Face 发布了 Carbon-X,这是一个开源 DNA 语言模型,能够用通俗英语回答有关基因序列的问题。在 DNA 基准测试中,它的得分达到 66.7%,接近 GPT-6.1 Sol 的水平,而每道题的成本仅约为其 1/1800。该模型可在单块 80GB GPU 上运行,有望大幅降低医院和研究人员进行大规模变异分类的成本。不过,该模型尚未经过临床验证。

Carbon-X:最佳开源 DNA 语言模型,可通过 llama.cpp 在本地运行

Reddit r/LocalLLaMA

HuggingFace Bio 发布 Carbon-X,这是一个拥有 140 亿参数的 DNA 与自然语言联合模型,在五项 DNA 基准测试中超越所有开源模型,并达到 GPT-6.1 Sol 的水平,而成本仅为其约千分之一,同时提供 GGUF 版本,支持通过 llama.cpp 在本地运行。

Carbon:解码生命语言

Reddit r/LocalLLaMA

Hugging Face 发布了 Carbon,一个开放的 DNA 基础模型系列,在匹配 Evo2-7B 最先进性能的同时,速度快 275 倍,采用 6-mer 分词、分解损失和精选的基因组数据。