Levanter

Levanter是一个基于JAX和Haliax的框架,用于训练大型语言模型和其他基础模型,专注于可读性、可扩展性和可复现性。

Levanter

一句话定位

一个基于JAX和Haliax的框架,专注于训练大型语言模型和其他基础模型,强调可读性、可扩展性和可复现性。

核心价值

  • 可读性:使用命名张量库Haliax编写易于理解和组合的深度学习代码,同时保持高性能
  • 可扩展性:支持大规模模型训练,可在GPU和TPU等多种硬件上运行
  • 可复现性:具有位级确定性,即使在抢占和恢复的情况下也能保证相同配置产生相同结果

功能亮点

  • 分布式训练:支持TPU和GPU上的分布式训练,包括FSDP和张量并行
  • 兼容性:支持与Hugging Face生态系统的导入导出,包括分词器、数据集和模型
  • 高性能:性能媲美商业框架,如MosaicML的Composer或Google的MaxText
  • 弹性恢复:支持快速分布式检查点和无数据查找的快速恢复
  • 缓存数据预处理:在线预处理语料库,缓存结果以加速后续运行
  • 丰富日志:支持WandB和TensorBoard等多种日志后端
  • 优化器支持:支持Sophia优化器和Optax优化器

适用人群

  • AI研究人员和工程师
  • 大型语言模型开发者
  • 学术研究机构
  • 需要训练基础模型的团队

使用场景

  • 训练GPT-2、Llama、Gemma等大型语言模型
  • 继续预训练现有模型
  • 在TPU和GPU集群上进行分布式训练
  • 需要可复现性保证的研究项目
  • 与Hugging Face生态系统集成的模型开发

综合说明

Levanter是由斯坦福大学基础模型研究中心(CRFM)开发的开源框架,专门用于训练大型语言模型和其他基础模型。它通过使用JAX、Equinox和Haliax等技术栈,提供了高性能、可扩展且可复现的训练解决方案。该框架特别适合需要大规模分布式训练和严格可复现性的研究项目。