
PD分离多专家并行协作ERNIE-4.5-300B-A47B-FP8-Paddle背后的高性能推理技术栈【免费下载链接】ERNIE-4.5-300B-A47B-FP8-PaddleERNIE-4.5-300B-A47B 是由百度研发的先进文本大语言模型采用异构混合专家架构MoE总参数量达3000亿每token激活47亿参数。其核心技术融合多模态预训练与模态隔离路由显著提升文本理解与生成能力。项目地址: https://ai.gitcode.com/paddlepaddle/ERNIE-4.5-300B-A47B-FP8-PaddleERNIE-4.5-300B-A47B-FP8-Paddle是百度飞桨开源的 3000 亿参数 MoE混合专家大语言模型的 FP8 量化版专为高性能推理设计。它靠PD 分离Prefill-Decode 解耦、多专家并行协作和FP8 混合精度量化三大核心技术让 300B 巨无霸模型也能在有限 GPU 上跑出高吞吐、低延迟。本文带你拆解这套推理技术栈无需数学公式也能看懂 模型速览300B 总参数只激活 47B在聊推理优化之前先建立对这个模型的基本认知。ERNIE-4.5-300B-A47B 是一个异构混合专家架构MoE文本大模型核心规格如下关键指标数值总参数 / 激活参数300B / 47B隐藏层数Layers54注意力头Q/KV64 / 8文本专家总 / 激活64 / 8Top-8 路由上下文长度131072128KMoE 的精髓在于按需激活每个 token 只路由到 64 个专家中的 8 个因此虽然模型有 3000 亿参数实际计算量只相当于 470 亿参数的小模型。这正是推理优化的突破口——把存得下和算得快分别解决。以上配置均定义在 config.json 中例如moe_num_experts: 64和moe_k: 8就是专家总数与激活数。什么是 PD 分离解耦两个性格迥异的阶段大模型生成回答分为两个阶段二者的硬件需求完全不同Prefill预填充阶段一次性处理全部输入 token计算密集GPU 算力被充分利用Decode解码阶段逐 token 生成每步只算一个 token瓶颈在显存带宽算力大量空闲。传统推理把两个阶段混在同一批 GPU 上互相干扰长文本 prefill 会拖慢别人的 decode而 decode 又无法吃满算力。PD 分离的思路是把两类任务调度到不同角色GPU 组上ERNIE 4.5 更进一步引入了动态角色切换当输入队列空时decode 节点可以临时顶上去做 prefill反之亦然让整机资源始终有活干。 简单理解PD 分离就像餐厅把备菜区和出菜口分开但厨师可以互相顶岗避免任何一边排队空转。多专家并行协作300B MoE 的分工秘籍MoE 模型推理的最大难题是专家分布不均热门专家被高频调用冷门专家几乎闲着单卡放全部专家又会撑爆显存。ERNIE 4.5 给出了两层方案节点内专家并行Intra-node Expert Parallelism把 64 个专家拆到同一台机器的多张卡上卡间走高速互联通信避免跨机延迟多专家并行协作Multi-expert Parallel Collaboration跨节点对专家做动态协作调度让请求与空闲的专家就近匹配缓解负载倾斜。配合训练阶段的模态隔离路由与均衡化损失这套机制让64 选 8的 Top-K 路由在真实流量下保持均衡。专家权重的存储布局可以在 model.safetensors.index.json 的weight_map中看到——例如ernie.layers.8.mlp.experts.*.quant_weight这些键名对应每一层专家的 FP8 量化权重。FP8 混合精度量化281GiB 权重的存储答案模型索引文件 model.safetensors.index.json 显示权重总大小为302322646656字节约 281 GiB被切分成 61 个model-XXXXX-of-00061.safetensors分片。它比 BF16 版本小一半秘诀就在 config.json 的量化配置量化项策略稠密层权重block_wise_fp8分块 FP8MoE 专家权重block_wise_fp8分块 FP8KV Cachefloat8_e4m3fn整体模式mix_quant混合量化分块 FP8把矩阵按小块分别做缩放因子weight_scale精度损失远小于逐元素直接截断KV Cache 也降到 FP8 后128K 长上下文的显存占用随之减半——这对长文本推理是实打实的吞吐提升。隐藏彩蛋MTP 多 token 预测加速细心的读者会发现 config.json 中有一行num_nextn_predict_layers: 1权重索引里也藏着ernie.mtp_block.0.*一组张量。这是MTPMulti-Token Prediction模块模型在一次前向中同时预测下一个和再下一个 token被验证器接受后等于一步出两词相当于内置的投机解码进一步压低 decode 延迟。一键部署FastDeploy 快速上手该模型基于飞桨生态使用FastDeploy即可一键拉起 OpenAI 兼容服务完整说明见 README.md。若需要本地获取权重可执行git clone https://gitcode.com/paddlepaddle/ERNIE-4.5-300B-A47B-FP8-Paddle以 8 卡张量并行部署 FP8 版本为例python -m fastdeploy.entrypoints.openai.api_server \ --model baidu/ERNIE-4.5-300B-A47B-FP8-Paddle \ --port 8180 \ --metrics-port 8181 \ --engine-worker-queue-port 8182 \ --tensor-parallel-size 8 \ --max-model-len 32768 \ --max-num-seqs 32⚠️硬件建议8 卡80G 显存可部署如需更高并发或更长上下文可扩展卡数并调大--max-model-len。采样参数最佳实践官方推荐Temperature0.8、TopP0.8已预置于 generation_config.jsonfrom fastdeploy import LLM, SamplingParams model baidu/ERNIE-4.5-300B-A47B-FP8-Paddle llm LLM(modelmodel, tensor_parallel_size8, max_model_len8192, num_gpu_blocks_override1024, engine_worker_queue_port9981) sampling_params SamplingParams(temperature0.8, top_p0.95, max_tokens128) outputs llm.generate([你好我叫], sampling_params) print(outputs[0].outputs.text)对话分词与角色模板由 tokenizer.model 与 tokenizer_config.json 定义接入 chat 接口时会自动套用User:/Assistant:模板。总结这套技术栈为什么值得学技术解决什么问题PD 分离 动态角色切换prefill 与 decode 互相抢资源、算力空闲多专家并行协作MoE 专家显存放不下、负载不均衡分块 FP8 混合量化权重体积减半、128K KV Cache 显存减半MTP 多 token 预测decode 阶段逐词生成的延迟ERNIE-4.5-300B-A47B-FP8-Paddle 展示了一条清晰的路线架构上靠 MoE 降计算系统上靠 PD 分离和多专家并行提利用率数值上靠 FP8 省显存。三者叠加才让 300B 模型的日常推理变得经济可行。如果你想深入了解部署细节与量化版本W4A8C8、2-bit可以继续阅读仓库中的 README.md 各章节。【免费下载链接】ERNIE-4.5-300B-A47B-FP8-PaddleERNIE-4.5-300B-A47B 是由百度研发的先进文本大语言模型采用异构混合专家架构MoE总参数量达3000亿每token激活47亿参数。其核心技术融合多模态预训练与模态隔离路由显著提升文本理解与生成能力。项目地址: https://ai.gitcode.com/paddlepaddle/ERNIE-4.5-300B-A47B-FP8-Paddle创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考