---
title: copy_cache
description: "| 产品 | 是否支持 |"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/others/llmdatadistdev/llmpr_42_0041.html
sourcePath: /source/zh/canncommercial/900/others/llmdatadistdev/llmpr_42_0041.html
indexId: 146f48e7c8d0dc41d19b31cf9a0e0171828996b398e2647ff52ba9c2054d7c4d70
---
# copy_cache

#### 产品支持情况

| 产品 | 是否支持 |
| --- | --- |
| Atlas 350 加速卡 | x |
| Atlas A3 训练系列产品 / Atlas A3 推理系列产品 | √ |
| Atlas A2 训练系列产品 / Atlas A2 推理系列产品 | √ |
| Atlas 200I/500 A2 推理产品 | x |
| Atlas 推理系列产品 | x |
| Atlas 训练系列产品 | x |


说明：针对 Atlas A2 训练系列产品 / Atlas A2 推理系列产品 ，仅支持Atlas 800I A2 推理服务器、A200I A2 Box 异构组件。


#### 函数功能

拷贝KV Cache。


#### 函数原型

```
copy_cache(dst: KvCache, src: KvCache, dst_batch_index: int = 0, src_batch_index: int = 0, offset: int = 0, size: int = -1, req_id: Optional[int] = None)
```


#### 参数说明

| 参数名称 | 数据类型 | 取值说明 |
| --- | --- | --- |
| dst | KvCache | 目标Cache。 |
| src | KvCache | 源Cache。 |
| dst\_batch\_index | int | 目标Cache的batch\_index，默认为0。 |
| src\_batch\_index | int | 源Cache的batch\_index，默认为0。 |
| offset | int | 每个tensor的偏移，默认为0。 |
| size | int | 设置为>0的整数，表示要拷贝的大小。 或设置为\-1，表示完整拷贝。 默认为\-1。 |
| req\_id | Optional[int] | 本次调用关联的req\_id，如果设置了该参数则本地调用相关的维测日志中会打印该req\_id 默认为None |


#### 调用示例

```
kv_cache_manager.copy_cache(dst_cache, src_cache, 0, 1, 0, 128)
```


#### 返回值

正常情况下无返回值。

参数错误可能抛出TypeError或ValueError。

执行时间超过sync_kv_timeout配置会抛出LLMException异常。


#### 约束说明

- src/dst的CacheDesc需要匹配。
- 本接口不支持并发，并发会排队等待。
