Marin:开源基础模型研究与开发框架,从数据到模型全链路可复现

Marin:开源基础模型研究与开发框架,从数据到模型全链路可复现

一个由 Stanford CRFM 和 Open Athena 社区驱动的基础模型研发框架:数据整理、预处理、分词、预训练、后训练、评估------全流程开源可复现,所有实验过程以 open development 方式记录。
📦 项目源码备份下载(夸克网盘)

完整项目已同步备份到夸克网盘,永久有效、无需提取码 :

👉 https://pan.quark.cn/s/922439abfcf6

项目简介

Marin (marin-community/marin)是 Stanford CRFM(Center for Research on Foundation Models)和 Open Athena 社区联合维护的一款开源基础模型研究与开发框架 。它的定位非常直接:为 Foundation Models 的研究、开发和社区提供一个可复现、可审计的全链路平台。

Marin 关注的是大语言模型的训练全流程------包括数据整理、变换、过滤、分词、预训练、后训练和评估。但它不只是提供工具和基础设施,更核心理念是 open development(开放开发):从原始数据到最终模型的每一步都被记录,失败的实验也是记录的一部分。

为什么选 Marin

  • 🔬 Open Development 理念:所有流程、实验和决策都以文档形式实时记录。失败实验同样是资产,而非需要掩盖的污点。
  • 📐 完整训练链路:数据整理、变换、过滤、分词、预训练、后训练、评估------一条 pipeline 覆盖全生命周期。
  • 🧪 实验即代码:Marin 实验定义为可依赖的步骤集,按拓扑顺序执行,类似 Makefile 但更强。
  • 📊 可复现、可审计:每个实验都有完整记录,从数据 Mix 到模型 Checkpoint 到 Scaling Law,全部开源可复现。
  • 🌐 多模态扩展 :已被用于训练音频-文本模型、DNA 模型(marin-dna)和蛋白质模型(MarinFold)。
  • 🏛️ 学术级支持:获得 Google TPU Research Cloud、Schmidt Sciences、Siegel Family Endowment 等机构支持。

核心特性

前沿混合专家模型(MoE)

当前核心研究方向:从零开始预训练并后训练一个超大混合专家模型(5e24 model-FLOPs,5000 亿+ 总参数),专注于科学家和研究者关心的任务。

Delphi Scaling Suite

Delphi 是 Marin 的开源 scaling 套件,灵感来自 Pythia,将 LLM 训练配方从 3e18 扩展到 1e23 FLOPs。包含三个部分:

  • Scaling Recipe:将计算预算映射到模型配置
  • Scaling Suite:在 Google TPU Research Cloud 上训练
  • Scaling Law:用小型 Delphi 模型预测大型模型

已发布内容:

  • 所有 run 的 Checkpoint(Hugging Face)
  • 确定性复现 Nemotron-CC / StarCoderData / ProofPile 2 混合的训练 pipeline
  • 可 fork 的 CompletedAdamHParams 配方代码
  • add_scaling_heuristic agent skill 开发方法论
  • Plot-ready 的 Delphi 数据(每行含 wandb_url)
已有模型成果
  • Marin 8B:在 base-model benchmark suite 上超越 Llama 3.1 8B
  • Marin 32B:更大规模的训练成果
  • 音频-文本模型、DNA 模型、蛋白质模型(MarinFold)

安装

方式一:pip 安装(推荐)

bash 复制代码
pip install marin

方式二:从源码构建

bash 复制代码
git clone https://github.com/marin-community/marin.git
cd marin
uv sync

前置要求:Python 3.10+、uv 包管理器。

方式三:Docker 部署

bash 复制代码
docker build -f docker/marin/Dockerfile -t marin .

详细安装指南见 docs/tutorials/installation.md。

上手:运行第一个示例

Marin 实验定义为可依赖的步骤集,按拓扑顺序执行。以下是训练一个 TinyStories 小模型的完整示例:

python 复制代码
from fray.cluster import ResourceConfig
from levanter.optim import AdamConfig
from marin.execution.lazy import lower
from marin.execution.step_runner import StepRunner
from marin.experiment.data import tokenized
from marin.experiment.train import train_lm

from experiments.llama import llama_nano
from experiments.marin_tokenizer import marin_tokenizer

# 1. Tokenize the dataset as a lazy handle --- nothing downloads yet.
tinystories_tokenized = tokenized(
    name="tokenized/tinystories",
    source="roneneldan/TinyStories",
    tokenizer=marin_tokenizer,
    sample_count=1000,  # cap at 1 000 samples per shard to keep the tutorial fast
)

# 2. Train the model --- depends on the tokenized dataset above.
nano_tinystories_model = train_lm(
    name="checkpoints/marin-nano-tinystories",
    version="v1",
    model=llama_nano,
    optimizer=AdamConfig(learning_rate=6e-4, weight_decay=0.1),
    # Steps can depend on other steps
    datasets={tinystories_tokenized: 1.0},
    batch_size=4,
    seq_len=2048,
    num_train_steps=100,
    z_loss_weight=None,
    evals=None,
    resources=ResourceConfig.with_cpu(),
)

if __name__ == "__main__":
    StepRunner().run([lower(nano_tinystories_model)])

训练步骤依赖 tokenize 步骤,因此会自动按依赖顺序执行。稍加修改即可扩展到更大模型、更多数据集、甚至多 GPU/TPU 集群。

入门路径:

适用场景

  • 基础模型研究者:需要一套可复现、全链路开源的 LLM 训练框架。
  • Scaling Law 研究者:利用 Delphi 套件进行不同规模模型的 scaling 实验。
  • 多模态研究者:将 Marin 用于音频-文本、DNA、蛋白质等跨模态模型训练。
  • 开源社区贡献者:参与 open development 理念,贡献数据处理、训练配方或评估工具。

结语

Marin 解决的不是"又一个训练框架"的问题,而是"基础模型研究如何真正可复现、可审计"的问题。它把 open development 的理念贯彻到每个细节------从数据 mix 到 scaling law,从成功实验到失败实验,全部开源记录。对于想在 Foundation Models 领域做严肃研究的团队,Marin 提供了一个学术级、可复用、可审计的底座。不妨 clone 下来跑一个 tiny model,感受一下从数据到 checkpoint 的全链路流程,也能在 ReadTheDocs 和 Open Athena Blog 里了解更多研究洞察。


资源备份(夸克网盘)

完整源代码已同步备份到夸克网盘,可直接下载:


参考链接

相关推荐
L·S·P2 小时前
25MB 管理 100+ 种数据库:开源轻量客户端 DBX 介绍与上手
数据库·mysql·开源·database·dbx
m4Rk_4 小时前
【论文阅读】Agent 记忆机制(83):Inside Out——用可演化 PersonaTree 构建 Agent 的核心长期记忆
论文阅读·人工智能·学习·开源·github
运行时异常4 小时前
【WMS 仓储系统集成 AI Agent 实战】第 8 讲(终篇):生产部署与并发安全——Semaphore 放进 Flux.defer 的坑,压测抓了一晚上
人工智能·安全
杨杨杨大侠4 小时前
Jev、Kev、Laya:决策模型怎么选,什么时候需要微调?
人工智能·python·agent
代码方舟4 小时前
零信任架构实战:基于天远人企关联构建自动化供应链金融网关
运维·人工智能·架构·自动化
虹科网络安全4 小时前
“顶会”看安全(十八):超越越狱:揭示由能力边界模糊引发的 LLM 应用安全风险
人工智能·安全
Maiko Star5 小时前
* LangChain 提示词模板详解:ChatPromptTemplate 的使用与高级特性
java·人工智能·langchain
鬓戈5 小时前
Rust 语言与 AI 应用生态调研及学习路径
人工智能·学习·rust
天远API5 小时前
零信任架构实战:基于天远人企关联构建自动化图谱网关
网络·人工智能·架构·自动化
爱吃提升5 小时前
文生视频模型发展趋势(2026)
人工智能·音视频