1、云原生平台下大语言模型PD分离架构的规模化挑战与实践顾静|阿里云顾静阿里云 高级工程师专注于云原生AI工程化领域,致力于攻克大语言模型(LLM)在Kubernetes平台上的大规模部署、性能优化与问题诊断等核心挑战。主导设计并实现了ACK推理套件。该项目旨在为LLM提供一套完整的云原生解决方案,其核心能力包括:支持部署多种形态的LLM推理服务(包括PD分离架构)、基于KVAware的智能路由、以及智能扩缩容等。此外,该套件还集成了全面的可观测性与在线AI Profiling功能,旨在构建一个稳定、高效且成本可控的LLM服务平台。作为一名开源社区的积极贡献者,是 Kubernetes、KServ
2、e、LWS、vLLM 及 Dynamo 等 多 个 项 目 的Contributor,并深度参与了RBG与Kubeflow社区的核心建设。曾多次在KubeCon等全球技术峰会上分享相关实践经验。目 录CONTENTSI.大语言模型PD分离架构介绍II.PD分离架构实现方案III.基于推理套件实现PD分离规模化部署IV.总结与展望大语言模型PD分离架构介绍PART 01大语言模型(LLM)基本原理图片来源:https:/jalammar.github.io/illustrated-gpt2/Step 1:Input:recite the first lawOutput:AStep 2:Input
3、:recite the first law AOutput:robotStep 3:Input:recite the first law A robotOutput:mayTransformer架构Encoder Only ModelsEncoder-Decoder ModelsDecoder Only Models 擅长理解文本语义,但无法直接生成文本输出。适用于文本分类、情感分析等任务 代表模型:BERT 能够理解复杂输入并生成相关输出。适用于机器翻译任务 代表模型:T5 支持无监督预训练,擅长根据用户输入创造性的生成文本。适用于文本生成、智能助手、代码补全等任务 代表模型:GPT、LLa
4、ma、Qwen图片来源:https:/jalammar.github.io/illustrated-gpt2/Prefill&Decodehttps:/hao-ai-lab.github.io/blogs/distserve/Prefill(预填充)理解问题阶段从用户输出的Prompt到生成第一个Token的过程o【输入】用户的整个Prompto【处理过程】模型会并行地处理Prompt中所有Token。它会根据这些Token计算并缓存KV Cache。o【特点】计算密集型;一次性Decode(解码)逐字回答阶段生成第二个Token到最后一个Token的过程o【输入】上一步生成的单个Token,
5、及KV Cacheo【处理过程】模型只处理这一个新Token,利用存储的KV Cache计算Attention,输出下一个Token。o【特点】显存密集型;迭代性Prefill&Decode Prefill 和 Decode 具有不同的SLO Continuous Batching机制会导致PD相互影响为什么要将Prefill和Decode分开部署资源优化Prefill需要强大的计算能力,Decode需要高效的内存访问速度。分离后可以将两个阶段部署到不同的硬件上。吞吐与延迟平衡Prefill和Decode部署在同一个设备上会相互影响,分离部署后可以降低Decode阶段延迟。可伸缩性分离后,Pr
6、efill可以根据用户请求等指标扩容,Decode可以根据正在进行的对话数量及TPOT指标分别扩容。稳定性分离部署后,两个阶段不再相互影响,极大地减少了长尾问题,提升两阶段的SLO。PD分离部署https:/ Cache传输给DecodeTransformer Attention机制Step 1:self_attention(hi)Step 2:self_attention(hi what)Step 3:self_attention(hi what can)Step 4:self_attention(hi what can i)o _ =soft 在Attention计算中,每个Token都会