--- title: "Shadow Calling (影子调用)" created: 2026-05-29 updated: 2026-05-29 type: concept tags: ["distributed-systems", "caching", "optimization", "LLM"] sources: ["https://mp.weixin.qq.com/s/MUWV7eug14bktUMlqsxfQw"] --- # Shadow Calling (影子调用) **Shadow Calling** 是 [[active-cache-warmup]] 的核心机制:向目标 LLM 节点发送一个特殊的"预热请求",其目的不是获取推理结果,而是让 LLM 服务端为指定的前缀上下文提前开辟内存缓存区。 ## 三个严苛的工程特征 1. **`max_tokens=1`**:告诉模型不需要生成长篇大论,只需消化前缀并吐出 1 个 Token 2. **显式 `cache_control`**:在预热断点处强行打上缓存标记 3. **零输出下游拦截**:返回结果直接在网络层丢弃(Drop),不触发任何业务状态流转 ## 与普通 API 调用的区别 | 特性 | 普通调用 | Shadow Calling | |------|----------|----------------| | 目的 | 获取推理结果 | 填充缓存 | | max_tokens | 正常值(如 4096) | 1 | | 结果处理 | 注入业务逻辑 | 直接丢弃 | | 触发时机 | 按需 | 预测性提前触发 | ## 效果 影子调用成功后,目标节点在真实请求到达时,其前缀已 100% 处于热态,响应延迟从秒级降至百毫秒级。 ## 相关 - [[active-cache-warmup]] — 包含 Shadow Calling 的预热流水线 - [[cache-cold-start]] — Shadow Calling 消除的问题 - [[distributed-prompt-caching]] — 分布式缓存体系