2026-09-18
Arc 用层级 agent 从 SRA 自动发现并统一重处理公开 10x 数据,建成超 5.02 亿细胞、27 物种的 scBaseCount;据此训练的 State embedding,扰动分组分类比 CELLxGENE 训练集高 23.9%。
现成的单细胞库,CZ CELLxGENE 大约 1.23 亿细胞、Human Cell Atlas 大约 6500 万,主要靠实验室主动投递、人工标注。NIH 的 Sequence Read Archive(SRA)里躺着远更多原始测序,但元数据不统一,把 reads 重新比对成表达矩阵又贵又慢。各家用的比对器、参考基因组、计数规则还不一样,拼到一起会把处理差异当成生物学信号。
要训虚拟细胞模型,缺的是规模、物种覆盖和处理一致性。人工逐条扫 SRA 做不到。
Arc Institute 把活拆成两条流水线。
SRAgent 是一套层级 ReAct agent,用 LangGraph 搭。工具太多,单 agent 扛不住,于是改成 supervisor-worker:find-datasets 先走 NCBI eSearch,再把元数据任务交给能调 Entrez、页面抓取、SRA BigQuery、组织本体的子 agent。只有子 agent 的最终结果回传给 supervisor,省 token。组织描述会语义检索 Uberon,疾病映射到 MONDO。部署在 GCP Cloud Run,平均每条实验约 80 秒,峰值每小时 300 条。
筛出来的 10x 库交给 scRecounter,一条 Nextflow 管线,用 STARsolo 统一比对。前 100 万 reads 自动试 5'、3' v2、3' v3、Multiome GEX 的 barcode 白名单,有效 barcode 低于 30% 的丢掉;3' v1 没覆盖。每个 SRX 产出 15 张计数矩阵,覆盖外显子、内含子、Velocyto,以及 unique、uniform、EM 三种多比对策略。单细胞和单核、编码和非编码、RNA velocity 都从同一套比对来。
细胞类型没有专家手标。人源细胞用 State embedding,再按组织套 Tabula Sapiens 上训好的逻辑回归分类器,组织标签来自 SRAgent。过滤后分析了约 1.66 亿人源细胞、143 种预测细胞类型。
SRAgent 扫了 208,939 条 SRX,标出 105,343 条 10x 库;加上 CELLxGENE 多出来的 6,059 条,目标共 111,402 条,已重处理 61,381 条。库里超过 5.02 亿细胞、27 个物种、75 种组织,平均每细胞 6,052 个 UMI。同期 CELLxGENE 约 1.23 亿、HCA 约 6500 万。论文估算 token 用量 13.2×10^12、花费约 1.7 万美元;若按每分钟一条人工计,相当于 3,482 小时。用 agent 先筛再比对,相对把每条 SRX 都丢进 barcode 检测器,估计能省超过 50 万 CPU 小时。STARsolo 一共比对了 13.8×10^12 条 reads。
库的构成本身就是一份领域普查:3' 文库占 77%;人 60%、小鼠 32%;人鼠里「癌症与肿瘤」占 30.7%;感染类细胞从 2020 年的 7.7% 冲到 2021 年的 33.7%,2022 年掉回 5.9%。测序深度这些年几乎没涨,多出来的通量被拿去测更多细胞。
统一处理后,文库化学、单细胞/单核、样本 ID 这些技术因子的 silhouette 分数,相对组织类型,低于未经统一处理的 CELLxGENE。四套同时有单细胞和单核的共享数据上,组织在前两个主成分上分得更开。PanglaoDB 的 marker 也能从预测细胞类型的差异表达基因里捞回来,和 Tabula Sapiens 相当。
更硬的数字来自约 1 亿参数的 State Embedding(可训练参数 1.08 亿,8 层 transformer、维度 1024)。过滤后用 2.14 亿人源细胞训 Statebsc,对照是 CELLxGENE 的 1.34 亿;两边都用 19,790 个蛋白编码基因,都跑 10 万步,Tabula Sapiens 都从训练集拿掉。细胞类型分类两边都大约 90%。细表型上差距拉开:
| 任务 | Statebsc 相对 Statecxg |
| COVID 感染状态分类 | 准确率 +2.24% |
| CRISPRi 扰动分组(四细胞系、2,024 个必需基因) | 准确率 +23.9% |
| 扰动 DEG 重建 | AUROC +10.2%,AUPRC +17.2% |
这是给虚拟细胞模型用的预训练语料,不是再做一个点选浏览的 atlas。STARsolo 矩阵、SRAgent、scRecounter 都公开。做单细胞 foundation model 的人,把 CELLxGENE 换成这批数据,细表型上能看到差距;全库都带内含子计数,大规模 RNA velocity 也变得可行。
agent 扫库这套比「再雇一队人做更大的 atlas」更可持续。1.7 万美元扫完二十万条实验,元数据标准化这种脏活可以挂着跑。
增益集中在细表型。细胞类型这种粗标签两边都已经 90%。只做常规聚类和 marker,换库的收益有限。
作者自己列了几条。细胞类型仍可能需要人工或社区校正;扰动、供体这类细胞级信息 SRA 里没有,得手工补;疾病标签来自研究摘要,可能把健康对照也标成疾病;目前只吃 10x 加 Illumina,其他试剂盒、多组学、空间转录组、受保护数据都还没进。
另有几处读完站不太稳。111,402 条目标只重处理了 61,381 条,将近一半还在队列里,「最大」是个会动的快照。白细胞在几乎所有组织里都偏多,采样偏差原样继承。SRAgent 自己认不准试剂盒化学,真正的 chemistry 是 scRecounter 用 barcode 试出来的。不少实验对不上单一 Uberon 节点;物种分类的错误里有不少是异种移植,因为 SRA 的 organism 字段只允许填一个值。分类器还假定每个 SRX 只有一种组织。
扰动分类 +23.9% 很扎眼,但论文没给出绝对准确率,也没有把「数据量更大」和「处理更干净」拆开做消融。两边都训 10 万步,2.14 亿对 1.34 亿,多出来的细胞每步被看到的次数更少,这个设定对谁有利并不显然。