昇腾社区首页
中文
注册

pull_blocks

函数功能

PagedAttention场景下,根据BlocksCacheKey,通过block列表的方式从对端节点拉取Cache到本地Cache。

函数原型

pull_blocks(self, src_cache_key: Union[CacheKey, CacheKeyByIdAndIndex, BlocksCacheKey], dst_cache: Cache, src_blocks: Optional[Union[Tuple[int], List[int]]] = (), dst_blocks: Union[Tuple[int], List[int]] = ())

参数说明

参数名称

数据类型

取值说明

src_cache_key

Union[CacheKey, CacheKeyByIdAndIndex, BlocksCacheKey]

远端的Cache索引。

dst_cache

Cache

目标Cache。

src_blocks

Optional[Union[Tuple[int], List[int]]]

远端的block index列表,src_cache_key不是BlocksCacheKey时,不填。

dst_blocks

Union[Tuple[int], List[int]]

本地的block index列表。

调用示例

from llm_datadist import *
...
cache_manager.pull_blocks(blocks_cache_key, cache, [0, 1], [2, 3])

返回值

正常情况下无返回值。

传入数据类型错误情况下会抛出TypeError或ValueError异常。

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

约束说明