ModernBERT

让老牌 BERT 重获新生,长文本更快更准

ModernBERT 是一个旨在将经典 BERT 模型现代化升级的开源项目,通过架构改进和规模扩展,让 BERT 在当今硬件和任务上表现更优。它解决了原始 BERT 训练效率低、序列长度受限、推理速度慢等痛点,核心能力包括支持长达 8192 的上下文长度、采用旋转位置编码和局部注意力等现代技术,以及在大规模数据上预训练,从而在多项 NLP 基准上超越同等规模的旧模型。项目提供 PyTorch 实现,便于研究者直接使用或微调。

开源 free 开源模型
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 1740
维护状态 低维护
是否开源 是
定价模式 free

项目数据

分类开源模型
开发团队AnswerDotAI
所属国家
官网地址
定价模式free
价格说明开源模型,Apache-2.0许可证,可免费使用和部署。
访问状态
是否开源是
开源协议Apache-2.0
主要语言Python
技术栈/模型bert,embeddings,llm,nlp
GitHub 星标★ 1740
30天Star增速
HF 下载量
上线时间2024-05-13 00:00:00
最近更新2026-09-23 00:00:00
维护状态低维护
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数3

使用教程

难度:进阶 约 30 分钟 部署方式:本地安装 5 步

环境要求

  • 一台带 GPU 的机器(README 明确说明环境需安装在 GPU-equipped machine 上)
  • 已安装 conda,用于通过 environment.yaml 创建环境
  • CUDA 编译工具链,用于安装 flash_attn(README 要求本地编译安装)
  • Python 环境由 environment.yaml 定义(README 未列出具体 Python 版本)

安装与启动步骤

  1. 1克隆仓库

    获取 ModernBERT 源码。README 未给出克隆命令,此处使用项目 GitHub 地址,仅作获取代码的通用准备动作。

    git clone https://github.com/AnswerDotAI/ModernBERT.git
  2. 2进入项目目录

    后续的 conda 与 pip 命令需在仓库根目录执行,因为 environment.yaml 位于仓库中。

    cd ModernBERT
  3. 3创建 conda 环境

    README 给出的第一步,用仓库内的 environment.yaml 还原官方训练环境,依赖较多、耗时较长。

    conda env create -f environment.yaml
  4. 4安装 Flash Attention 2

    模型使用 FA3+FA2,若硬件不支持 FA3 则只用 FA2。README 要求固定版本 2.6.3 并关闭构建隔离。

    pip install "flash_attn==2.6.3" --no-build-isolation
  5. 5下载模型权重

    README 未给出下载命令,只指向 Hugging Face 上的 ModernBERT checkpoint 集合,可在页面自行下载或直接用 库加载。

关键配置

配置项必填说明示例
environment.yaml是conda 环境定义文件,README 用它创建 ModernBERT 训练环境environment.yaml
flash_attn是README 指定固定版本 2.6.3,模型依赖 FA2/FA3 注意力实现flash_attn==2.6.3
MAX_JOBS否README 注释中给出的编译并行度控制,用于限制 flash_attn 编译占用8

如何确认成功

README 未提供启动或验证命令;可执行 python -c "import flash_attn" 并确认 conda 环境创建成功。

常见问题

Q:没有 GPU 可以安装吗?

A:README 明确说明该环境面向带 GPU 的机器,且 flash_attn 需要本地编译,CPU 机器基本无法按官方步骤完成安装。

Q:需要执行 python setup.py install 吗?

A:README 中该行是被注释掉的,并未明确要求执行,官方给出的步骤只有创建 conda 环境和安装 flash_attn。

Q:如何拿到 ModernBERT 模型权重?

A:README 指向 Hugging Face 上 AnswerDotAI 的 modernbert checkpoint 集合页面,仓库本身未提供权重下载命令。

Q:安装 flash_attn 编译很慢或爆内存怎么办?

A:README 注释中给出了 MAX_JOBS=8 pip install "flash_attn==2.6.3" --no-build-isolation,用该方式限制编译并行度。

注意事项

  • README 自述非常 barebones 且仍在完善中,缺少完整复现步骤与文档
  • 仓库代码用于预训练与 GLUE 评估实验,基于 MosaicBERT 及引入 Flash Attention 2 的未合并 fork,遵循 Apache 2.0 许可
  • 模型通过 .yaml 配置文件构建(FlexBERT 模块化编码器构建方式),具体配置项 README 未展开
  • README 只给出安装依赖的命令,启动训练/评估的命令未在节选中提供,切勿照搬臆测参数

核心亮点

  • 支持 8192 超长上下文,处理长文档能力远超原版 BERT
  • 推理速度提升 2-4 倍,内存占用更低,适合生产部署
  • 在 GLUE、长文本分类等基准上显著优于同规模旧模型

不足之处

  • 模型规模仍小于当前主流大模型,复杂生成任务能力有限
  • 文档/社区待观察,生态工具链尚不如原版 BERT 成熟

适用场景

  • 长文档分类与信息检索,如法律、金融文档理解
  • 需要高吞吐量的文本嵌入服务,如语义搜索
  • 对延迟敏感的实时 NLP 应用,如在线客服意图识别

替代项目

BERT、RoBERTa、DeBERTa

项目介绍

ModernBERT 是开源模型领域的开源项目,由 AnswerDotAI 开发,2024 年首次发布。

在全站 13,090 个收录项目中,它的 GitHub 星标数(1,740)位列前 30%,在开源模型分类中处于中上游。

近 42 天,它的 GitHub 星标从 1,708 增加到 1,740,净增 32。

项目已超过三个月没有代码更新,维护节奏明显放缓,最近一次代码更新于 2026-09-23。Apache-2.0许可证,可免费使用和部署。

它主要面向的使用场景是:长文档分类与信息检索,如法律、金融文档理解。同类可对比的替代方案包括 BERT、RoBERTa、DeBERTa。

上一篇:MiniOneRec

下一篇:mllm

同类项目推荐

Machine-Learning 开源

跟着博客笔记,边看边跑机器学习代码

All content related to machine learning from my blog

★ 115 2026-08-09
CoreML-Models 开源

下载即用的苹果端 AI 模型库,免去转换烦恼

Core ML model zoo for iOS/macOS — PyTorch models converted to ready-to-use .mlpacka···

★ 1873 2026-08-10