Waypoint 是 Outpost Bio 以 Apache 2.0 协议开源的微生物组基础模型工具集,相关论文为 Treloar 等,bioRxiv 2026.05.02.722381。
用途: 该工具旨在将微生物组分类谱(16S 或宏基因组测序得到的分类单元丰度)转化为固定维度的向量表示,或作为微调骨干用于预测表型、治疗反应、连续读数等下游任务。其基本假设是把一个微生物组样本看作一个“句子”:每个分类单元是一个 token,token 按丰度 z-score 降序排列,模型以因果语言模型方式用下一 token 预测进行训练。
主要能力:
- 提供三个 Waypoint 检查点:6M、45M、170M 参数,均基于 GPT-2 风格架构。
- Atlas 数据集:从 MGnify 采集的 539,308 个微生物组样本(485,377 用于预训练,53,931 用于基准测试)。
- Compass 基准:覆盖四项研究的八项下游任务。
- 命令行工具 waypoint 含五个子命令:prepare-dataset(数据准备)、embed(嵌入)、finetune(微调)、benchmark(基准评测)、pretrain(预训练)。
- 附带脚本:profiler_to_waypoint.py 可将 MetaPhlAn、Kraken2/Bracken、QIIME 2、MGnify TSV 等分析工具输出转换为 waypoint 格式;vocab_coverage.py 可检查词汇覆盖率。
使用方式: 安装:pip install waypoint-bio。 所有模型和数据集均需在 Hugging Face 上申请访问(自动批准),并执行 hf auth login 或设置 HF_TOKEN,且需使用只读权限的 token。 数据格式为 .parquet/.csv/.tsv,每行一个样本,包含 Taxa(分号分隔的完整谱系字符串)和 Relative Abundances(与 Taxa 等长的浮点数列表)两列,另可附加标签列。推荐使用 parquet。 基本流程:先用 prepare-dataset 或 profiler_to_waypoint.py 准备数据;再用 vocab_coverage.py 检查词汇覆盖(中位丰度加权覆盖率低于约 0.8 应重新检查分类标签);然后用 waypoint embed 生成嵌入(默认池化方式为 last_token,维度 6m 为 256、45m 为 512、170m 为 768);接着用 waypoint finetune 进行分类或回归微调(支持 LoRA,默认随机 80/10/10 划分,样本相关时应指定 split_column);之后可用 waypoint benchmark 在 Compass 上评测;最后可用 waypoint pretrain 在 Atlas 或自有语料上预训练。
适用场景: 将分类谱嵌入用于聚类、可视化或下游分类器;微调预测表型、治疗或连续读数;在 Compass 上评测自有模型;在 Atlas 或自有语料上预训练分类语言模型;转换分析工具输出为 waypoint 格式。
限制与注意事项: 标注样本少于约 1,000 时,Waypoint 通常不如基于原始丰度的随机森林,论文中交叉点约在 10,000 个训练样本;不在词汇表中的分类单元会被静默丢弃,不报错;45M 模型在基准测试中表现最佳,170M 并未更好;默认按属级 token 化,物种级差异会被合并,改变 taxon_rank 需要重新预训练;相对丰度数据具有成分性,解释单个分类单元的归因时需谨慎;批次和研究效应在微生物组数据中占主导,应避免研究边界与标签边界重合;该工具明确不适用于临床或诊断用途。