<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>推理优化 on AI 拾遗笔记</title><link>https://bloge.oya.moe/tags/%E6%8E%A8%E7%90%86%E4%BC%98%E5%8C%96/</link><description>Recent content in 推理优化 on AI 拾遗笔记</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Wed, 15 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://bloge.oya.moe/tags/%E6%8E%A8%E7%90%86%E4%BC%98%E5%8C%96/index.xml" rel="self" type="application/rss+xml"/><item><title>大模型推理优化的几个关键技术点</title><link>https://bloge.oya.moe/posts/llm-inference-optimization/</link><pubDate>Wed, 15 Apr 2026 00:00:00 +0000</pubDate><guid>https://bloge.oya.moe/posts/llm-inference-optimization/</guid><description>&lt;h2 id="为什么推理优化越来越重要"&gt;为什么推理优化越来越重要&lt;/h2&gt;
&lt;p&gt;训练一次大模型成本高，但跑起来之后每天都要服务大量用户，长期来看推理成本远高于训练成本。一个 70B 模型如果用 FP16 直接跑，单卡 A100 80G 都装不下，更不用说提供低延迟服务。所以&lt;strong&gt;推理优化不是锦上添花，而是落地的前提&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;下面整理几个工程上最常用、收益最显著的优化方向。&lt;/p&gt;
&lt;h2 id="1-kv-cache-是性能的核心"&gt;1. KV Cache 是性能的核心&lt;/h2&gt;
&lt;p&gt;Transformer 自回归生成时每生成一个 token 都要重新计算所有历史 token 的 K 和 V，这是 O(n²) 的浪费。&lt;strong&gt;KV Cache&lt;/strong&gt; 把之前算过的 K/V 缓存下来，每步只算新 token 的 K/V，复杂度降到 O(n)。&lt;/p&gt;
&lt;p&gt;但 KV Cache 本身会吃巨量显存：一个 13B 模型、序列长度 4K、batch 16，KV Cache 就要十几 GB。所以衍生出一系列优化：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;PagedAttention&lt;/strong&gt;（vLLM 提出）：把 KV Cache 按&amp;quot;页&amp;quot;管理，避免连续显存碎片化，吞吐能提 2-4 倍&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;GQA / MQA&lt;/strong&gt;：让多个 Query Head 共享同一组 K/V Head，KV Cache 大小直接砍几倍，Llama 3 就用了 GQA&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;量化 KV Cache&lt;/strong&gt;：把 KV Cache 从 FP16 量化到 INT8 甚至 INT4，显存减半但精度损失很小&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="2-量化用精度换显存和速度"&gt;2. 量化：用精度换显存和速度&lt;/h2&gt;
&lt;p&gt;权重量化的核心思路是：模型权重是 FP16 (16 bit)，但实际有效信息可能只需要 4 bit 就能表达。常见方案：&lt;/p&gt;</description></item></channel></rss>