跳转至

Score 编码器缓存管理器

Score 编码器缓存管理器使用 CPU 缓存层和基于分数的策略来管理多模态编码器输出。选择该管理器即可启用此功能;没有单独的 enabled 选项。

在线推理

vllm serve MODEL \
  --ec-manager-config '{
    "encoder_cache_manager_cls": "vllm_ascend.ec_manager.score_ec_manager.ScoreEncoderCacheManager",
    "manager_config": {
      "cpu_cache_slots": 100000,
      "max_clock": 15,
      "clock_decay_every": 64,
      "watermark": 0.2,
      "promote_percentile": 0.2
    }
  }'

离线推理

from vllm import LLM

llm = LLM(
    model="MODEL",
    ec_manager_config={
        "encoder_cache_manager_cls": (
            "vllm_ascend.ec_manager.score_ec_manager.ScoreEncoderCacheManager"
        ),
        "manager_config": {
            "cpu_cache_slots": 100000,
            "max_clock": 15,
            "clock_decay_every": 64,
            "watermark": 0.2,
            "promote_percentile": 0.2,
        },
    },
)

配置选项

名称 类型 默认值 描述
cpu_cache_slots int 100000 以编码器嵌入槽位为单位的最大 CPU 缓存容量。
max_clock int 15 老化策略使用的最大时钟值。
clock_decay_every int 64 两次时钟衰减步骤之间的请求数量。
watermark float 0.2 驱逐后需要保持空闲的 NPU 缓存槽位目标比例。
promote_percentile float 0.2 用于将 CPU 条目提升到 NPU 的分数百分位阈值。

自定义管理器通过完全限定类名进行选择。每个管理器定义自己的 manager_config 模式,并通过 create_manager 使用它。

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 vl/vllm-ascend