---
title: 完整样例参考
description: "本示例是以transformers的LLAMA模型为样例，主要展示PD分离前后的脚本变化点，提供如何从非分离脚本改为PD分离脚本的一个参考，PD分离脚本示例请单击Gitee(https://gitee.com/ascend/torchair/tree/master#version_match)，根据版本配套表下载对应版本的sample包，从“npu_tuned_model/llm/llama/benchmark/pd_separate”目录中获取样例。样例中将全量模型和增量模型进行分离，部署到不同集群节点上执行。"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/API/hixlug/llmpdv2_42_10.html
sourcePath: /source/zh/canncommercial/900/API/hixlug/llmpdv2_42_10.html
indexId: d2cf5f31109dfb5b138323653cede0aafd6e542a3e3cbca45116c33193ee1e9c59
---
# 完整样例参考

本示例是以transformers的LLAMA模型为样例，主要展示PD分离前后的脚本变化点，提供如何从非分离脚本改为PD分离脚本的一个参考，PD分离脚本示例请单击Gitee(https://gitee.com/ascend/torchair/tree/master#version_match)，根据版本配套表下载对应版本的sample包，从“npu_tuned_model/llm/llama/benchmark/pd_separate”目录中获取样例。样例中将全量模型和增量模型进行分离，部署到不同集群节点上执行。

如上分离脚本在整个推理流程中是如何被服务层调度的，请参考如下步骤。

1. 当用户请求触发时，服务层将用户请求调度到全量的集群上，执行全量脚本的推理。将增量脚本需要的信息传输到增量脚本的执行节点上。此时全量集群节点可接收服务层下发的新的用户请求。
2. 增量集群接收全量集群对应的请求信息，拉取对应请求的KV Cache（在全量集群节点上已经计算好的），同时按照增量模型的batch大小进行组batch操作，执行增量推理。
3. 当增量集群上有请求推理完成空出对应batch位置时，再接收全量集群发过来的新的请求，并重复执行  2
和  3
。
4. 全量集群重复执行  1
，增量集群重复执行  2
和  3
，直到业务结束，全量和增量集群退出。

更多样例代码，请单击Gitee(https://gitee.com/ascend/samples/tags)，根据“标签名”下载配套版本的sample包，从“python/level1_single_api/10_llm_data_dist”目录中获取样例。
