PaddlePaddle/ERNIE

GitHub: PaddlePaddle/ERNIE

百度开源的工业级大规模多模态大模型家族及其基于 PaddlePaddle 的训练部署工具包 ERNIEKit。

Stars: 7716 | Forks: 1441

[ERNIE Bot](https://ernie.baidu.com/) | [🤗Hugging Face](https://huggingface.co/baidu) | [AI Studio](https://aistudio.baidu.com/modelsoverview) 📑 [博客](https://yiyan.baidu.com/blog/posts/ernie4.5) | 📚 [实用指南](./cookbook/) | 📑 [论文](https://yiyan.baidu.com/blog/publication/) | 🛠️ [训练](./docs/erniekit.md) | ⚡️ [部署](https://github.com/PaddlePaddle/FastDeploy) PaddlePaddle%2FERNIE | Trendshift
## 📣 最新更新 **[2025-11] 🔥 发布 ERNIEKit v1.5:** - **新特性** - [ERNIE-4.5-VL-28B-A3B-Thinking] 支持 ERNIE-4.5-VL-28B-A3B-Thinking 的 SFT 训练和 function call 训练 (https://huggingface.co/baidu/ERNIE-4.5-VL-28B-A3B-Thinking)。 **[2025-10] 🔥 发布 ERNIEKit v1.4:** - **新特性** - VL 模型训练:支持 [PaddleOCR-VL-0.9B]((https://huggingface.co/PaddlePaddle/PaddleOCR-VL/tree/main/PaddleOCR-VL-0.9B)) 模型的 SFT。更多详情请参考 [PaddleOCR-VL-0.9B SFT](./docs/paddleocr_vl_sft.md)。 - 数据流:支持 padding-free 策略。 - 将 batch 内的数据打包成一个序列以避免 padding,从而减少 GPU 内存使用并加速训练。 **[2025-09] 🔥 发布 ERNIEKit v1.3:** - **新特性** - [ERNIE-4.5-21B-A3B-Thinking] 支持 ERNIE-4.5-21B-A3B-Thinking 的 SFT 训练和 function call 训练 (https://huggingface.co/baidu/ERNIE-4.5-21B-A3B-Thinking)。 - **Bug 修复:** - [VL 模型训练] 优化多模态视频数据处理速度 (#1266)。 **[2025-09] 🔥 发布 ERNIEKit v1.2:** - **新特性** - [WebUI] 增加了对 ERNIE 28b/424b VL 模型训练和对话功能的支持。 - [VL 模型训练] 引入了对训练数据中 query-response 格式的支持。 - [命令行工具] 新增 iluvatar GPU 硬件支持。 - **Bug 修复:** - [AutoParallel] 修复 use_intermediate_api pp+recompute+moe bug (#1250) - [AutoParallel] 修复 save checkpoint bug (#1242) - [VL 模型训练] 修复 lora 128k 训练 bug (#1234) **[2025-09] 🔥 发布 ERNIEKit v1.1:** ERNIEKit 现已支持 ERNIE-4.5-VL 系列的 SFT/LoRA。 **[2025-06] 🔥 发布 ERNIEKit v1.0:** 我们非常激动地宣布 ERNIEKit v1.0 发布,这是迄今为止使用最新 ERNIE 模型进行开发的最强大、最高效的工具包! ## ERNIE 4.5 简介 我们推出了 ERNIE 4.5,这是一个包含 10 个不同变体的全新大规模多模态模型家族。该模型家族由具有 47B 和 3B 激活参数的 Mixture-of-Experts (MoE) 模型(其中最大的模型总参数量达到 424B)以及一个 0.3B 的稠密模型组成。对于 MoE 架构,我们提出了一种新颖的异构模态结构,该结构支持跨模态的参数共享,同时也允许为每个单独的模态保留专用参数。这种 MoE 架构的优势在于能够增强多模态理解能力,同时不会损害甚至会提升在文本相关任务上的表现。我们所有的模型都使用 [PaddlePaddle](https://github.com/PaddlePaddle/Paddle) 深度学习框架进行训练,以实现最佳效率,该框架也为它们提供了高性能推理和简化的部署能力。我们在最大的 ERNIE 4.5 语言模型预训练中实现了 47% 的 Model FLOPs Utilization (MFU)。实验结果表明,我们的模型在多个文本和多模态基准测试中都取得了 state-of-the-art 的表现,特别是在指令遵循、世界知识记忆、视觉理解和多模态推理方面。所有模型均根据 Apache 2.0 许可证公开发布,以支持该领域的未来研究和开发。此外,我们开源了 ERNIE 4.5 的开发工具包,具备工业级的能力、资源高效的训练和推理工作流以及多硬件兼容性。
**ERNIE 4.5**
ERNIE 4.5 模型 模型信息
模型类别 模型 输入模态 输出模态 上下文窗口
大型语言模型 ERNIE-4.5-300B-A47B-Base 文本 文本 128K
ERNIE-4.5-300B-A47B
ERNIE-4.5-21B-A3B-Base
ERNIE-4.5-21B-A3B
视觉语言模型 ERNIE-4.5-VL-424B-A47B-Base 文本/图像/视频 文本
ERNIE-4.5-VL-424B-A47B
ERNIE-4.5-VL-28B-A3B-Base
ERNIE-4.5-VL-28B-A3B
稠密模型 ERNIE-4.5-0.3B-Base 文本 文本
ERNIE-4.5-0.3B
_注意:所有模型(包括预训练权重和推理代码)均已发布在 [🤗Hugging Face](https://huggingface.co/baidu) 和 [AI Studio](https://aistudio.baidu.com/index) 上。查看我们的[博客](https://yiyan.baidu.com/blog/posts/ernie4.5)了解更多详情。_
## 核心亮点 我们的模型家族具有三个关键创新: 1. **多模态异构 MoE 预训练:** 我们的模型在文本和视觉模态上进行了联合训练,以更好地捕捉多模态信息的细微差别,并提高在涉及文本理解与生成、图像理解以及跨模态推理等任务上的性能。为了在不让一种模态阻碍另一种模态学习的情况下实现这一目标,我们设计了*异构 MoE 结构*,引入了*模态隔离路由*,并采用了*路由正交损失*和*多模态 token 均衡损失*。这些架构选择确保了两种模态都能得到有效表示,从而在训练过程中实现相互增强。 2. **扩展高效的基础设施:** 我们提出了一种新颖的异构混合并行和分层负载均衡策略,用于 ERNIE 4.5 模型的高效训练。通过使用节点内专家并行、内存高效的 pipeline 调度、FP8 混合精度训练和细粒度重新计算方法,我们实现了卓越的预训练吞吐量。在推理方面,我们提出了*多专家并行协作*方法和*卷积码量化*算法,以实现 4-bit/2-bit 的无损量化。此外,我们引入了带有动态角色切换的 PD 分离架构,以实现有效的资源利用,从而增强 ERNIE 4.5 MoE 模型的推理性能。ERNIE 4.5 基于 [PaddlePaddle](https://github.com/PaddlePaddle/Paddle) 构建,可在多种硬件平台上提供高性能推理。 3. **特定模态的后训练:** 为了满足实际应用的各种需求,我们针对特定模态对预训练模型的变体进行了微调。我们的 LLM 针对通用语言理解和生成进行了优化。VLM 专注于视觉语言理解,并支持思考和非思考模式。每个模型在后训练中都结合使用了*监督微调 (SFT)*、*直接偏好优化 (DPO)* 或名为*统一偏好优化 (UPO)* 的改进强化学习方法。
## 性能与基准测试结果 ERNIE-4.5-300B-A47B-Base 在 28 个基准测试中的 22 个上超越了 DeepSeek-V3-671B-A37B-Base,展示了在所有主要能力类别中的领先性能。这凸显了与其他 state-of-the-art 大型模型相比,通过扩大 ERNIE-4.5-Base 模型的规模,在泛化、推理和知识密集型任务方面带来的显著提升。总参数量为 21B(约为 Qwen3-30B 的 70%)的 ERNIE-4.5-21B-A3B-Base 在多个数学和推理基准测试(包括 BBH 和 CMATH)中优于 Qwen3-30B-A3B-Base。考虑到其模型规模明显较小,ERNIE-4.5-21B-A3B-Base 依然保持着极高的竞争力,展现出卓越的参数效率和良好的性能权衡。 后训练模型 ERNIE-4.5-300B-A47B 在指令遵循和知识任务方面展现出显著的优势,这从 IFEval、Multi-IF、SimpleQA 和 ChineseSimpleQA 等基准测试中的 state-of-the-art 分数中得到了证明。尽管总参数量减少了约 30%,轻量级模型 ERNIE-4.5-21B-A3B 与 Qwen3-30B-A3B 相比仍取得了具有竞争力的性能。 非思考模式下,ERNIE-4.5-VL 在视觉感知、文档和图表理解以及视觉知识方面表现出色,在一系列成熟的基准测试中表现强劲。在思考模式下,ERNIE-4.5-VL 不仅展示了相比非思考模式更强的推理能力,而且还保留了后者强大的感知能力。ERNIE-4.5-VL-424B-A47B 在整套多模态评估体系中均取得了强劲的成绩。其思考模式在以推理为中心的任务中具有明显优势,在 MathVista、MMMU 和 VisualPuzzle 等具有挑战性的基准测试上缩小了与 OpenAI-o1 的差距甚至超越了它,同时在 CV-Bench 和 RealWorldQA 等侧重感知的数据集上保持了极具竞争力的表现。轻量级视觉语言模型 ERNIE-4.5-VL-28B-A3B 在大多数基准测试中取得了优于或媲美 Qwen2.5-VL-7B 和 Qwen2.5-VL-32B 的性能,尽管它使用的激活参数要少得多。值得注意的是,我们的轻量级模型同样支持思考和非思考模式,提供与 ERNIE-4.5-VL-424B-A47B 一致的功能。 ### ERNIE-4.5 预训练模型的性能
### 后训练模型 ERNIE-4.5-300B-A47B 的性能
### 后训练模型 ERNIE-4.5-21B-A3B 的性能
### 思考模式下后训练多模态模型的性能
### 非思考模式下后训练多模态模型的性能

## 模型开发 ERNIE 4.5 模型使用 [PaddlePaddle]((https://github.com/PaddlePaddle/Paddle)) 框架进行训练和部署推理。ERNIE 4.5 的完整训练、压缩和推理工作流通过 [ERNIEKit](./docs/erniekit.md) 和 [FastDeploy](https://github.com/PaddlePaddle/FastDeploy) 工具包提供支持。下表详细列出了 ERNIE 4.5 模型家族在训练和推理方面的功能矩阵。
| 模型 | 训练 | 推理 | | ------------------------------ | ------------------------- | -------------------------------- | | ERNIE-4.5-300B-A47B-Base | SFT/SFT-LoRA/DPO/DPO-LoRA | BF16 / W4A16C16 / W8A16C16 / FP8 | | ERNIE-4.5-300B-A47B | SFT/SFT-LoRA/DPO/DPO-LoRA/QAT | BF16 / W4A16C16 / W8A16C16 / W4A8C8 / FP8 / 2Bits | | ERNIE-4.5-21B-A3B-Base | SFT/SFT-LoRA/DPO/DPO-LoRA | BF16 / W4A16C16 / W8A16C16 / FP8 | | ERNIE-4.5-21B-A3B | SFT/SFT-LoRA/DPO/DPO-LoRA | BF16 / W4A16C16 / W8A16C16 / FP8 | | ERNIE-4.5-VL-424B-A47B-Base | 即将推出 | BF16 / W4A16C16 / W8A16C16 / FP8 | | ERNIE-4.5-VL-424B-A47B | 即将推出 | BF16 / W4A16C16 / W8A16C16 / FP8 | | ERNIE-4.5-VL-28B-A3B-Base | 即将推出 | BF16 / W4A16C16 / W8A16C16 / FP8 | | ERNIE-4.5-VL-28B-A3B | 即将推出 | BF16 / W4A16C16 / W8A16C16 / FP8 | | ERNIE-4.5-0.3B-Base | SFT/SFT-LoRA/DPO/DPO-LoRA | BF16 / W8A16C16 / FP8 | | ERNIE-4.5-0.3B | SFT/SFT-LoRA/DPO/DPO-LoRA | BF16 / W8A16C16 / FP8 |
_注意:针对不同的 ERNIE 4.5 模型,我们提供了使用 WxAxCx 表示法的多种量化方案,其中:W 表示权重精度,A 表示激活精度,C 表示 KV Cache 精度,x 代表数值精度。_ ### ERNIEKit:基于 PaddlePaddle 的 ERNIE 开发工具包 **ERNIEKit** 是一个基于 PaddlePaddle 构建的、用于 ERNIE 模型的工业级训练和压缩开发工具包,为 ERNIE 4.5 模型家族提供全周期开发支持。核心能力包括: * 高性能预训练实现 * 全参数监督微调 (SFT) * 直接偏好优化 (DPO) * 参数高效微调和对齐 (SFT-LoRA/DPO-LoRA) * 量化感知训练 (QAT) * 训练后量化 (PTQ) [开发中] 各模型训练的最低硬件要求记录在[此处](./docs/erniekit.md)。 #### 快速开始 当您成功安装 ERNIEKit 后,可以使用以下命令开始训练 ERNIE 4.5 模型: ``` # 从 huggingface 下载 model huggingface-cli download baidu/ERNIE-4.5-0.3B-Paddle --local-dir baidu/ERNIE-4.5-0.3B-Paddle # 8K Sequence Length, SFT erniekit train examples/configs/ERNIE-4.5-0.3B/sft/run_sft_8k.yaml ``` 有关安装、CLI 使用、WebUI、多节点训练和高级功能的详细指南,请参考 [ERNIEKit 训练文档](./docs/erniekit.md)。 有关高性能预训练的详细指南,请参考[预训练文档](./examples/pre-training/README.md)。 **ERNIEKit WebUI 演示:** https://github.com/user-attachments/assets/6d44cb92-0826-42df-aa80-7656445e0f73 ### FastDeploy:基于 PaddlePaddle 的高性能 LLM 和 VLM 推理部署工具包 **FastDeploy** 是一个基于 PaddlePaddle 开发的大型语言模型和视觉语言模型推理部署工具包。它提供生产就绪、易于使用的多硬件部署解决方案,具备多级负载均衡的 PD 分离、全面的量化格式支持、兼容 OpenAI API 服务器和 vLLM 等特性。 有关安装信息,请参考 [FastDeploy](https://github.com/PaddlePaddle/FastDeploy)。 #### 离线推理 ``` from fastdeploy import LLM, SamplingParams prompt = "Write me a poem about large language model." sampling_params = SamplingParams(temperature=0.8, top_p=0.95) llm = LLM(model="baidu/ERNIE-4.5-0.3B-Paddle", max_model_len=32768) outputs = llm.generate(prompt, sampling_params) ``` #### 在线服务 ``` python -m fastdeploy.entrypoints.openai.api_server \ --model "baidu/ERNIE-4.5-0.3B-Paddle" \ --max-model-len 32768 \ --port 9904 ``` 欲了解更多推理和部署指南,请参考 [FastDeploy](https://github.com/PaddlePaddle/FastDeploy)。
## 实用指南 探索展示 ERNIE 在多个领域的能力的最佳实践指南:
| 实用指南 | 描述 | Gradio Demo | | --- | --- | --- | | [对话](/cookbook/notebook/conversation_demo_en.ipynb) | 构建对话应用程序。 | [conversation_demo.py](/cookbook/conversation_demo.py) | | [简单的 ERNIE Bot](/cookbook/notebook/simple_ernie_bot_demo_en.ipynb) | 创建轻量级的基于 Web 的 ERNIE Bot。 |[simple_ernie_bot_demo.py](/cookbook/simple_ernie_bot_demo.py) | | [网络搜索增强对话](/cookbook/notebook/web_search_demo_en.ipynb) | 构建集成网络搜索的对话应用。 | [web_search_demo.py](/cookbook/web_search_demo.py) | | [基于知识检索的问答](/cookbook/notebook/knowledge_retrieval_demo_en.ipynb) | 使用私有知识库构建智能问答系统。 | [knowledge_retrieval_demo.py](/cookbook/knowledge_retrieval_demo.py) | | [高级搜索](/cookbook/notebook/advanced_search_demo_en.ipynb) | 使用深度信息提取构建文章生成应用。 | [advanced_search_demo.py](/cookbook/advanced_search_demo.py) | | [SFT 教程](/cookbook/notebook/sft_tutorial_en.ipynb) | 通过使用 ERNIEKit 进行监督微调来优化任务性能。 | - | | [DPO 教程](/cookbook/notebook/dpo_tutorial_en.ipynb) | 使用 ERNIEKit 使模型与人类偏好对齐。 | - | | [文本识别](/cookbook/notebook/text_recognition_tutorial_en.ipynb) | 使用 ERNIE 和 PaddleOCR 开发非中文和非英文语言文本识别的综合指南。 | - | | [文档翻译](/cookbook/notebook/document_translation_tutorial_en.ipynb) | 基于 ERNIE 和 PaddleOCR 的文档翻译实践。 | - | | [关键信息提取](/cookbook/notebook/key_information_extraction_tutorial_en.ipynb) | 基于 ERNIE 和 PaddleOCR 在合同场景中进行关键信息提取。 | - |

## 许可证 ERNIE 4.5 模型在 Apache License 2.0 下提供。该许可证允许商业使用,但必须遵守其条款和条件。
## 引用 如果您觉得 ERNIE 4.5 有用或希望将其用于您的项目中,请引用我们的技术报告: ``` @misc{ernie2025technicalreport, title={ERNIE 4.5 Technical Report}, author={Baidu-ERNIE-Team}, year={2025}, eprint={}, archivePrefix={arXiv}, primaryClass={cs.CL}, url={} } ```
标签:DLL 劫持, 凭据扫描, 多模态模型, 大语言模型, 开源大模型, 机器学习框架, 模型训练, 逆向工具, 飞桨