<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>AI 与工程 on WitMinder</title>
        <link>https://witminder.com/categories/ai-%E4%B8%8E%E5%B7%A5%E7%A8%8B/</link>
        <description>Recent content in AI 与工程 on WitMinder</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>zh-CN</language>
        <lastBuildDate>Fri, 31 Jul 2026 12:00:00 +0800</lastBuildDate><atom:link href="https://witminder.com/categories/ai-%E4%B8%8E%E5%B7%A5%E7%A8%8B/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>AI Agent 的未来：聊天框之外的多 Agent 协作</title>
        <link>https://witminder.com/p/future-of-ai-agent/</link>
        <pubDate>Fri, 31 Jul 2026 12:00:00 +0800</pubDate>
        
        <guid>https://witminder.com/p/future-of-ai-agent/</guid>
        <description>&lt;p&gt;探索 Agent，就必须看到当前 Agent&amp;quot;长&amp;quot;什么样，考虑 AI Agent 的 UI 展示是否限制了什么。&lt;/p&gt;
&lt;h2 id=&#34;当前-agent-的通用做法&#34;&gt;&lt;a href=&#34;#%e5%bd%93%e5%89%8d-agent-%e7%9a%84%e9%80%9a%e7%94%a8%e5%81%9a%e6%b3%95&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;当前 Agent 的通用做法
&lt;/h2&gt;&lt;p&gt;用户输入一个 Prompt，做好了 Harness 的 Agent 加载 Skill、Prompt、Memory、Tool-config 给 AI LLM，然后由 LLM 处理：ReAct、Plan and Execute、Loop Engineering、申请权限、Tool-Calling。&lt;/p&gt;
&lt;p&gt;对于这种黑箱操作，各家方案不同：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;普遍采用的 Skills&lt;/strong&gt;：让 Agent 反问用户，总结生成更详细的 Prompt，以便 LLM 生成更个性化、贴近用户想象的结果&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Hermes 的 MOA&lt;/strong&gt;：多 Agent 协同——两个参考模型，一个负责发散，一个负责&amp;quot;准确&amp;quot;，一个统筹模型，负责在用户 Agent 端保存的&amp;quot;记忆&amp;quot;、Skills、Prompt、tool-config、上下文……范围内做比对、择优。最后主 Agent 负责编排与干活&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Codex 的方案&lt;/strong&gt;：同样提供 MOA 模式。Ultra 模式下，主模型负责任务拆解与编排，sub-Agent 负责干活、测试、审计，并且是并行计算。这得益于 OpenAI 对模型端到端的控制&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;KIMI 的 Agent 集群&lt;/strong&gt;：同样在模型接收侧调度主 Agent 进行分析、推理与调度，子 Agent 的数据互相隔离，即刻进入 GPU 集群计算，即刻返回主 Agent 循环反馈、读写 KV……&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Codex、KIMI 都是在模型侧实现了上下文极大的利用率，天生就比 Hermes MOA 的资源利用率高。&lt;/p&gt;
&lt;p&gt;从这个角度看，MOA 也应该做到：主模型分析后，拆解任务给多个 Agent 调度；子 Agent 只吃自己那部分 Skills、Tool-config、记忆，只做自己那部分工作、只交付自己的工作内容，循环与主 Agent 交互，实现最终结果。&lt;/p&gt;
&lt;h2 id=&#34;聊天框瀑布流-agent-是否框死了-agent-的上限&#34;&gt;&lt;a href=&#34;#%e8%81%8a%e5%a4%a9%e6%a1%86%e7%80%91%e5%b8%83%e6%b5%81-agent-%e6%98%af%e5%90%a6%e6%a1%86%e6%ad%bb%e4%ba%86-agent-%e7%9a%84%e4%b8%8a%e9%99%90&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;聊天框/瀑布流 Agent 是否框死了 Agent 的上限？
&lt;/h2&gt;&lt;p&gt;输入框是必要的，但是仅仅提供输入框交互是不够的。&lt;/p&gt;
&lt;p&gt;人的要求是很多又模糊的。AI 在做设计时，单个聊天框的瀑布式输入输出容易造成上下文臃肿，所以 Codex / KIMI 的 MOA 是对的：在端侧设计多个子 Agent、并行计算，减少一个聊天框内的上下文在单个 Agent 内部的循环，减少幻觉、遗忘、减少 KV Miss，提高输出效率。&lt;/p&gt;
&lt;p&gt;但是 MOA 在展示能力上仍然有优化空间：非常依赖主 Agent 的调度与设计。&lt;/p&gt;
&lt;p&gt;主 Agent 的设计除了要看模型，还要看 Agent Harness。在 Agent Harness 方面，&lt;strong&gt;控制子 Agent 的能力&lt;/strong&gt;也很重要：主 Agent 与子 Agent 的调度、安排之间应该加一道可操作控件。也就是说在瀑布式聊天之外，加一道 Agent 展示与协调窗口，用以实时控制子 Agent 的表现。&lt;/p&gt;
&lt;p&gt;问题是 Codex / KIMI 在做的事情是不断提升 LLM 能力与 Agent 调度表现：Codex 实现了端侧 6 个 Agent 协同并行计算，KIMI 则最多可以做到 4000 个 Agent。这样就很挑战在用户侧实现 Agent 工作可视化的操作。&lt;/p&gt;
&lt;p&gt;而 Claude Code 除了有自己的 Agent 设计，额外采取的做法是在 Agent 运行时，可以随时追加用户观察 + 及时反馈，也就是 &lt;strong&gt;Mid-Stream Interrupt 流式中途注入架构&lt;/strong&gt;，配套三大核心模块：会话状态机、异步消息队列、带断点的 KV 缓存快照。这是 Claude Code 为用户侧与模型侧共同设计打造的产品设计。&lt;/p&gt;
&lt;h2 id=&#34;企业视角绑定-llm-的-saas-之痛&#34;&gt;&lt;a href=&#34;#%e4%bc%81%e4%b8%9a%e8%a7%86%e8%a7%92%e7%bb%91%e5%ae%9a-llm-%e7%9a%84-saas-%e4%b9%8b%e7%97%9b&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;企业视角：绑定 LLM 的 SaaS 之痛
&lt;/h2&gt;&lt;p&gt;Codex、KIMI、Claude Code 的 Agent 设计与模型、客户端深度绑定、多侧协同，发挥自身最大价值。&lt;/p&gt;
&lt;p&gt;对于企业而言，这些软件的目标应该是成长为一种新的 SaaS，成为企业与个人的长久需求。但与 SaaS 不同的是，这些软件绑定自家 LLM，对企业而言最大的痛点就是&lt;strong&gt;数据外泄、模型 API 成本与收益问题&lt;/strong&gt;，这几乎无法避免。&lt;/p&gt;
&lt;p&gt;当然，企业自己追求部署最先进 AI 永远没有必要：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;企业的业务并不是随着 AI 版本更新的&lt;/li&gt;
&lt;li&gt;硬件成本很难做到与时俱进——模型更新速度一年两次大版本，企业过分追求 AI 是本末倒置&lt;/li&gt;
&lt;li&gt;AI 人力成本没必要：企业需要的是专职员工，为了使用独立大模型就成立一个模型部署与优化部门，实在没必要；懂 AI 的数据管理部门可能更重要&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;该如何做数据保护、数据脱敏、断网使用、摆脱单个模型依赖&lt;/strong&gt;——未来无论是哪一家模型胜出，都不影响自身业务价值，这才最重要。&lt;/p&gt;
&lt;h2 id=&#34;知识属于全人类&#34;&gt;&lt;a href=&#34;#%e7%9f%a5%e8%af%86%e5%b1%9e%e4%ba%8e%e5%85%a8%e4%ba%ba%e7%b1%bb&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;知识属于全人类
&lt;/h2&gt;&lt;p&gt;同时，这样的一个 Agent 要绑定普罗大众，就必须要做最通用、使用成本最低、效益最高、能够满足模型爆发、还能匹配模型能力的设计。&lt;/p&gt;
&lt;p&gt;生物的本能是传播基因，那么这样的 Agent 也应该能够&amp;quot;传播基因&amp;quot;，并且是像变色龙一样地传播——适配不同环境，如币圈的去中心化。我将之称为：&lt;strong&gt;知识属于全人类&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;LLM 是黑箱，Agent 不应该是。所以多 Agent 的操作流程，第一个特征就应该打破聊天式交互逻辑——在 LLM 动辄百万文本输入输出、代码脚本等用户无法耐心阅读的情况下，呈现出更直观的 Agent 运行状态。&lt;/p&gt;
&lt;p&gt;有一个值得关注的问题是：在未来，LLM API 会不会开放多 Agent 给 API 用户？也就是说多 Agent 的操作对用户仍然不可见，这可能也会成为趋势。看起来是开放的——KIMI 的 K2.6 等版本已经向 API Key 使用者开放了多 Agent 能力。&lt;/p&gt;
&lt;h2 id=&#34;agent-的知识破圈价值&#34;&gt;&lt;a href=&#34;#agent-%e7%9a%84%e7%9f%a5%e8%af%86%e7%a0%b4%e5%9c%88%e4%bb%b7%e5%80%bc&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;Agent 的知识破圈价值
&lt;/h2&gt;&lt;p&gt;如果想做知识平权，Agent 还应该担任起知识破圈的能力。&lt;/p&gt;
&lt;p&gt;众所周知，语言的边界就是知识/思想/经验的边界。用户的语言如果被知识、经验束缚，就不可能得到想象中的结果。LLM 对于人而言，始终都还是&lt;strong&gt;知识 + 经验 + LLM&lt;/strong&gt; 才能发挥最大作用，但往往 LLM 的上限被压制了。&lt;/p&gt;
&lt;p&gt;所以，Agent 最大的价值就是打破这种语言束缚，提供更多可能。&lt;/p&gt;
&lt;p&gt;当然，多可能并不意味着就好，多可能还可能意味着噪音，这不符合效率直觉：如果 LLM 引入的噪声太多，不如直接请人来做。&lt;/p&gt;
&lt;p&gt;所以，Agent 的价值还要框定在：&lt;strong&gt;比人做得好、做得快、做得准确、做得毫无保留、符合人性直觉&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;看起来，这既要符合人的经验要求，又要反人性：反人性中懒惰、疲倦、模糊、隐瞒、上下文管理问题、信息差问题……还得服从性拉满，而不是潦草敷衍。这涉及到 loop engineering：多轮催促 AI LLM 输出更多的知识，类似于老板把一个人当做几个人用的同时，还要让他们去读研、读博、评院士——并且除了多付出 token 资源，无需操心理解偏移、遗忘上下文等问题。&lt;/p&gt;
&lt;h2 id=&#34;agent-的显著职责&#34;&gt;&lt;a href=&#34;#agent-%e7%9a%84%e6%98%be%e8%91%97%e8%81%8c%e8%b4%a3&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;Agent 的显著职责
&lt;/h2&gt;&lt;p&gt;Agent 的显著职责是帮助人类解放双手，和部分脑子。人类需要可靠的 AI 帮助自己做：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;需要大量投入、学习、知识，才能做的专项工作&lt;/strong&gt;：比如写代码、做财务报表、医疗诊断/影像分析、设计师&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;一旦熟悉就有固定流程的工作&lt;/strong&gt;：比如数据分析、财务报表、人事工作、教师&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;信息差、黑箱、不能用显性知识描述的经验性工作&lt;/strong&gt;：涉及业务人员认知的内容；需要审核，但不特指容易产生技术性瑕疵的工作内容，比如财务分析师、市场分析师、咨询师——往往涉及信息差、解读角度的技巧性、经验性、挑战性内容&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;这些能力，最好由专职工作人员在使用 Agent 做过一次专项工作、由用户&amp;quot;签收&amp;quot;之后，迅速沉淀为 Agent 的个人知识、经验，形成 Agent 随用户自主进化的内容。该内容是可以闭环的：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;与 LLM 交互的过程交给 Harness 框架把控&lt;/li&gt;
&lt;li&gt;但 Agent 的工作过程&lt;strong&gt;应该可视化&lt;/strong&gt;，尤其是多 Agent：除了受到主 Agent 调配，还能够配合用户调度&lt;/li&gt;
&lt;li&gt;所做的工作结果是完全可视化的、可解读的、可形成固定资产的&lt;/li&gt;
&lt;li&gt;Bad Case 是可以调优的&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这样，Agent 的一切都是可解释的、可评测的，不需要用户的事前 + 事后管理，而是高度契合&lt;strong&gt;事中管理&lt;/strong&gt;的需要。&lt;/p&gt;
&lt;h2 id=&#34;最有价值的三个方向&#34;&gt;&lt;a href=&#34;#%e6%9c%80%e6%9c%89%e4%bb%b7%e5%80%bc%e7%9a%84%e4%b8%89%e4%b8%aa%e6%96%b9%e5%90%91&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;最有价值的三个方向
&lt;/h2&gt;&lt;p&gt;这里面的内容，最具有价值的是：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;数据脱敏 engineering&lt;/strong&gt;：让企业敢用、数据不出界&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;经验沉淀 engineering&lt;/strong&gt;：解决幻觉、上下文压缩、任务拆解逻辑、工具调用、用户选择&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Agent 过程可视化与可独立交互化的框架设计&lt;/strong&gt;：
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;如何打断主 Agent？&lt;/strong&gt; 显然，打断主 Agent 会打断所有 Agent 的流程，即使它们指向的是不同的模型。所以根据现状——所有 MOA 都只具有一个 Agent 通道——就应该在主 Agent 上下功夫&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;如何打断某个子 Agent？&lt;/strong&gt; 看起来，应该设计一个&amp;quot;用户 : 主 Agent : 多个子 Agent&amp;quot;的结构：用户与主 Agent 交互，主 Agent 控制子 Agent。这样更符合用户一直与 Agent 交互的逻辑，但不污染主 Agent 与子 Agent 的交互通道&lt;/li&gt;
&lt;li&gt;而且应该有灵活的 Agent 调度功能：当主 Agent 决定调用多个子 Agent 时，就有相应的窗口开启，允许用户查看、交互。当然，第一层永远是主 Agent——也就是说主 Agent 有 Claude Code 的 Mid-Stream Interrupt 流式中途注入架构的设计，且比它更清晰：&lt;strong&gt;控制主 Agent 还是子 Agent，可能更具可解释性&lt;/strong&gt;，在事中控制的价值上更具有发言权，降低 Bad Case 发生，更符合事中控制直觉&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;You Speak It, And We Do It!&lt;/p&gt;
&lt;h2 id=&#34;5w2h-与主-多-agent-设计灵感&#34;&gt;&lt;a href=&#34;#5w2h-%e4%b8%8e%e4%b8%bb-%e5%a4%9a-agent-%e8%ae%be%e8%ae%a1%e7%81%b5%e6%84%9f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;5W2H 与主-多 Agent 设计灵感
&lt;/h2&gt;&lt;p&gt;任何一个任务都可以用 5W2H 拆解：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;What&lt;/strong&gt;：做什么，事项、目标、内容、产出物&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Why&lt;/strong&gt;：为什么做，目的、价值、动机、必要性&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Who&lt;/strong&gt;：谁来做/面向谁，负责人、参与人、服务对象&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;When&lt;/strong&gt;：何时，起止时间、阶段时间、排期&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Where&lt;/strong&gt;：在哪里，执行场地、环境、线上/线下渠道&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;How&lt;/strong&gt;：怎么做，流程、方法、工具、操作步骤&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;How much&lt;/strong&gt;：成本、数量、预算、标准&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;语言是知识/思想的边界。由此给出的设计灵感：&lt;strong&gt;多 LLM Agent + 工作窗口&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;你与一个主 LLM Agent 交流，此主 LLM Agent 负责设计世界观，具体的实现交给其他子 LLM Agent。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;WHY&lt;/strong&gt;：现阶段主 LLM Agent 与多 LLM Agent 的矛盾之处在于——单个模型上下文过长，既要做规划、又要做任务、又要做 debug……loop engineering 做的就是解决这个问题，但仍然是压榨同一个模型/LLM Agent 的同一个 temperature。&lt;/p&gt;
&lt;p&gt;主-多 LLM Agent 要做的是满足用户的&amp;quot;创世者思维&amp;quot;：针对用户的问题提出主要矛盾，由子 LLM Agent 负责根据局部矛盾行事。这么做的价值是开阔思维与思路，保证主 LLM Agent 思路的一致性——即使用户随时修改主旨、意见，主 LLM Agent 仍然能够顾全大局，及时发现问题与方案，螺旋上升。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;解决的是主体矛盾与局部矛盾的问题&lt;/strong&gt;：所谓&amp;quot;众人拾柴火焰高&amp;quot;，而不是&amp;quot;左右脑互搏&amp;quot;&amp;ldquo;左脚踩右脚&amp;rdquo;。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;矛盾点&lt;/strong&gt;：是否存在过度设计？显然，这需要主 Agent 与子 Agent 在 loop communication 中实现更佳方案，实时输出、与用户交互。用户-主 Agent-子 Agent 的多窗口设计，保证用户的幻想哲学得到主 Agent 的把控与落地，子 Agent 实现。&lt;/p&gt;
&lt;p&gt;多 Agent 做得好不好，需要经过测量——&lt;strong&gt;窗口可视化、可修改就实现了实时监测&lt;/strong&gt;。如此设计是为了应对用户随意修改主体/局部的议题：实时更新主旨、修改局部/保护局部设置。&lt;/p&gt;
&lt;h2 id=&#34;结尾可视化的-why&#34;&gt;&lt;a href=&#34;#%e7%bb%93%e5%b0%be%e5%8f%af%e8%a7%86%e5%8c%96%e7%9a%84-why&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;结尾：可视化的 WHY
&lt;/h2&gt;&lt;p&gt;Agent 的思路与工作的可视化，设计思路还在于：&lt;/p&gt;
&lt;p&gt;企业追求投入产出比。AI 的提升能力如果不可以被描述、测量、直观感受，数据如果不可以被保护，企业会认为这是 Bad 设计——除非盈利显著到接受这种黑箱。&lt;/p&gt;
</description>
        </item>
        <item>
        <title>LLM 推理全链路：从提问文本到输出 Token</title>
        <link>https://witminder.com/p/llm-inference-path/</link>
        <pubDate>Fri, 31 Jul 2026 12:00:00 +0800</pubDate>
        
        <guid>https://witminder.com/p/llm-inference-path/</guid>
        <description>&lt;p&gt;LLM 用户提问的完整流程：&lt;strong&gt;文本 → Embedding → 模型计算 → 输出&lt;/strong&gt;。这篇文章拆开每一步，并补充工程与硬件层面的细节。&lt;/p&gt;
&lt;h2 id=&#34;极简流程&#34;&gt;&lt;a href=&#34;#%e6%9e%81%e7%ae%80%e6%b5%81%e7%a8%8b&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;极简流程
&lt;/h2&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;ln&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;cl&#34;&gt;用户提问文本
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;ln&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;cl&#34;&gt;→ Tokenizer → token ids
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;ln&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;cl&#34;&gt;→ 查表得到 FP16/BF16 高维 Token Embedding 向量 + 位置编码
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;ln&#34;&gt;4&lt;/span&gt;&lt;span class=&#34;cl&#34;&gt;→ CPU → GPU 显存 → 送入 SM 计算单元循环多层 Decoder
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;ln&#34;&gt;5&lt;/span&gt;&lt;span class=&#34;cl&#34;&gt;→ 输出隐藏特征向量 → LM Head 映射为词表概率 logits
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;ln&#34;&gt;6&lt;/span&gt;&lt;span class=&#34;cl&#34;&gt;→ 采样选出 token，循环自回归生成
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;ln&#34;&gt;7&lt;/span&gt;&lt;span class=&#34;cl&#34;&gt;→ token 序列解码 → 可读文字输出
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;一你的提问会被转换成什么向量embedding&#34;&gt;&lt;a href=&#34;#%e4%b8%80%e4%bd%a0%e7%9a%84%e6%8f%90%e9%97%ae%e4%bc%9a%e8%a2%ab%e8%bd%ac%e6%8d%a2%e6%88%90%e4%bb%80%e4%b9%88%e5%90%91%e9%87%8fembedding&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;一、你的提问会被转换成什么向量（Embedding）
&lt;/h2&gt;&lt;p&gt;这里有两套完全不同的向量，不要混淆：&lt;strong&gt;输入 Token Embedding（LLM 原生）&lt;/strong&gt;、&lt;strong&gt;检索 Embedding（RAG 配套）&lt;/strong&gt;。&lt;/p&gt;
&lt;h3 id=&#34;1-llm-原生输入向量推理必走每轮对话都有&#34;&gt;&lt;a href=&#34;#1-llm-%e5%8e%9f%e7%94%9f%e8%be%93%e5%85%a5%e5%90%91%e9%87%8f%e6%8e%a8%e7%90%86%e5%bf%85%e8%b5%b0%e6%af%8f%e8%bd%ae%e5%af%b9%e8%af%9d%e9%83%bd%e6%9c%89&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;1. LLM 原生输入向量（推理必走，每轮对话都有）
&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;1）先分词（Tokenizer）&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;你的句子切为 token id（数字，如 你=123，好=456）。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2）Token Embedding 层（模型第一层权重矩阵）&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;矩阵尺寸：&lt;code&gt;[词表大小 V, 隐藏维度 d_model]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;举例常见模型：
&lt;ul&gt;
&lt;li&gt;LLaMA2 / Qwen：d_model=4096 / 8192，向量是 FP16/BF16（极少 FP32）&lt;/li&gt;
&lt;li&gt;小参数量开源模型：d_model=768 / 1024 / 2048&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;每个 token id 查表取出一行，得到 d_model 维浮点数向量&lt;/li&gt;
&lt;li&gt;向量含义：语言语义；位置信息会叠加位置编码（RoPE/ALiBi）&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;重点：这不是检索向量，是 Transformer 底层特征向量，维度极高（4k+），不用于向量库检索。&lt;/p&gt;&lt;/blockquote&gt;
&lt;h3 id=&#34;2-rag-检索用-embedding只有知识库场景才会生成&#34;&gt;&lt;a href=&#34;#2-rag-%e6%a3%80%e7%b4%a2%e7%94%a8-embedding%e5%8f%aa%e6%9c%89%e7%9f%a5%e8%af%86%e5%ba%93%e5%9c%ba%e6%99%af%e6%89%8d%e4%bc%9a%e7%94%9f%e6%88%90&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;2. RAG 检索用 Embedding（只有知识库场景才会生成）
&lt;/h3&gt;&lt;p&gt;如果带文档检索，你的提问会单独丢给专用 Embedding 模型（bge、e5、all-MiniLM）：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;维度低：384 / 768 维&lt;/li&gt;
&lt;li&gt;存储格式：FP16 / INT8 / INT4 量化压缩&lt;/li&gt;
&lt;li&gt;用途：去向量库做相似度匹配召回文档，不进大 LLM 主 Transformer 计算&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;3-存储精度&#34;&gt;&lt;a href=&#34;#3-%e5%ad%98%e5%82%a8%e7%b2%be%e5%ba%a6&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;3. 存储精度
&lt;/h3&gt;&lt;p&gt;线上推理几乎全部：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Token Embedding：BF16 / FP16（显存减半，速度翻倍）&lt;/li&gt;
&lt;li&gt;只有训练、高精度微调才用 FP32&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;二向量如何进入模型计算区域gpu显存流转全过程&#34;&gt;&lt;a href=&#34;#%e4%ba%8c%e5%90%91%e9%87%8f%e5%a6%82%e4%bd%95%e8%bf%9b%e5%85%a5%e6%a8%a1%e5%9e%8b%e8%ae%a1%e7%ae%97%e5%8c%ba%e5%9f%9fgpu%e6%98%be%e5%ad%98%e6%b5%81%e8%bd%ac%e5%85%a8%e8%bf%87%e7%a8%8b&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;二、向量如何进入模型计算区域（GPU/显存流转全过程）
&lt;/h2&gt;&lt;h3 id=&#34;阶段-1cpu-预处理&#34;&gt;&lt;a href=&#34;#%e9%98%b6%e6%ae%b5-1cpu-%e9%a2%84%e5%a4%84%e7%90%86&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;阶段 1：CPU 预处理
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;用户文字 → token ids（CPU 内存）&lt;/li&gt;
&lt;li&gt;查表取出 embedding 向量、叠加位置编码（CPU 或 GPU）&lt;/li&gt;
&lt;li&gt;组装输入张量：&lt;code&gt;[batch_size, seq_len, d_model]&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;比如单条提问长度 2048 token，d_model=4096 → 张量 shape &lt;code&gt;[1, 2048, 4096]&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;阶段-2数据搬运进-gpu-计算区&#34;&gt;&lt;a href=&#34;#%e9%98%b6%e6%ae%b5-2%e6%95%b0%e6%8d%ae%e6%90%ac%e8%bf%90%e8%bf%9b-gpu-%e8%ae%a1%e7%ae%97%e5%8c%ba&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;阶段 2：数据搬运进 GPU 计算区
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;CPU 内存张量通过 PCIe 拷贝到 GPU 显存（Global Memory）&lt;/li&gt;
&lt;li&gt;推理框架（vLLM / TensorRT / Transformers）做内存优化：
&lt;ul&gt;
&lt;li&gt;连续内存排布、padding 合并、KV 缓存预分配&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;计算调度：
&lt;ul&gt;
&lt;li&gt;显存向量分批送入 SM 流多处理器（计算核心）&lt;/li&gt;
&lt;li&gt;向量数据先缓存到 L2 Cache → 片上共享内存/寄存器（高速计算区）&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;核心：真正矩阵乘法（Attention、FFN）全部在 GPU 寄存器/片上缓存完成，显存只做存储交换。&lt;/p&gt;&lt;/blockquote&gt;
&lt;h3 id=&#34;阶段-3transformer-多层循环计算核心区域&#34;&gt;&lt;a href=&#34;#%e9%98%b6%e6%ae%b5-3transformer-%e5%a4%9a%e5%b1%82%e5%be%aa%e7%8e%af%e8%ae%a1%e7%ae%97%e6%a0%b8%e5%bf%83%e5%8c%ba%e5%9f%9f&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;阶段 3：Transformer 多层循环计算（核心区域）
&lt;/h3&gt;&lt;p&gt;输入向量逐层穿过 N 层 Decoder：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;多头 Self-Attention&lt;/strong&gt;：输入向量 × Q/K/V 权重矩阵 → 注意力分数 → 加权融合特征向量&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;FFN 前馈网络&lt;/strong&gt;：特征升维映射、激活、降维回原维度&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;LayerNorm、残差连接&lt;/strong&gt;：每层输出依然是同维度 &lt;code&gt;[seq_len, d_model]&lt;/code&gt; 向量，逐层更新语义特征&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;关键缓存kv-cache生成必备&#34;&gt;&lt;a href=&#34;#%e5%85%b3%e9%94%ae%e7%bc%93%e5%ad%98kv-cache%e7%94%9f%e6%88%90%e5%bf%85%e5%a4%87&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;关键缓存：KV Cache（生成必备）
&lt;/h3&gt;&lt;p&gt;每轮提问的 key/value 向量会存入显存 KV 缓存，后续生成新 token 不用重复计算历史输入，大幅提速。&lt;/p&gt;
&lt;h2 id=&#34;三模型如何输出文字向量--可读文本&#34;&gt;&lt;a href=&#34;#%e4%b8%89%e6%a8%a1%e5%9e%8b%e5%a6%82%e4%bd%95%e8%be%93%e5%87%ba%e6%96%87%e5%ad%97%e5%90%91%e9%87%8f--%e5%8f%af%e8%af%bb%e6%96%87%e6%9c%ac&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;三、模型如何输出文字（向量 → 可读文本）
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;步骤 1：最后一层输出隐藏向量&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Decoder 最后一层输出依旧是 &lt;code&gt;[seq_len, d_model]&lt;/code&gt; 高维特征向量。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;步骤 2：LM Head 线性投影（关键输出层）&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;权重矩阵 &lt;code&gt;[d_model, V 词表大小]&lt;/code&gt;，做矩阵乘法：高维语义向量 → 长度等于词表 V 的 logits 向量（几万维）。例：Qwen 词表 151936，logits 维度=151936。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;步骤 3：采样生成单个 token&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;logits 做 Softmax，转为每个 token 的概率分布&lt;/li&gt;
&lt;li&gt;根据采样策略（greedy / top-p / top-k）选出概率最高的 token id&lt;/li&gt;
&lt;li&gt;把这个 token id 追加到输入序列，重新走一轮前向计算（自回归生成）&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;步骤 4：循环直到终止&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;不断生成新 token，直到产出终止符 &lt;code&gt;&amp;lt;/s&amp;gt;&lt;/code&gt;，停止迭代。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;步骤 5：解码输出文本&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;收集所有生成的 token id，送入 Tokenizer 反向解码，转回自然语言，返回给用户。&lt;/p&gt;
&lt;h2 id=&#34;四完整九步链路含工程与硬件细节&#34;&gt;&lt;a href=&#34;#%e5%9b%9b%e5%ae%8c%e6%95%b4%e4%b9%9d%e6%ad%a5%e9%93%be%e8%b7%af%e5%90%ab%e5%b7%a5%e7%a8%8b%e4%b8%8e%e7%a1%ac%e4%bb%b6%e7%bb%86%e8%8a%82&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;四、完整九步链路（含工程与硬件细节）
&lt;/h2&gt;&lt;h3 id=&#34;1-用户提问文本输入&#34;&gt;&lt;a href=&#34;#1-%e7%94%a8%e6%88%b7%e6%8f%90%e9%97%ae%e6%96%87%e6%9c%ac%e8%be%93%e5%85%a5&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;1. 用户提问文本输入
&lt;/h3&gt;&lt;p&gt;用户原始自然语言（中文/英文混合），包含空格、标点、特殊符号。额外前置操作：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;预处理清洗&lt;/strong&gt;：剔除不可见控制字符、统一换行/空格格式、截断超长文本（不超过模型上下文窗口上限，如 8k / 32k tokens）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;拼接完整 Prompt&lt;/strong&gt;：系统提示词 + 历史对话上下文 + 当前用户 Query&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;2-tokenizer-分词编码--得到-token-ids&#34;&gt;&lt;a href=&#34;#2-tokenizer-%e5%88%86%e8%af%8d%e7%bc%96%e7%a0%81--%e5%be%97%e5%88%b0-token-ids&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;2. Tokenizer 分词编码 → 得到 Token IDs
&lt;/h3&gt;&lt;p&gt;使用模型配套 BPE / SentencePiece 分词器处理完整 Prompt：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;按训练时的词表规则切分为最小子词单元（token），中文会单字/词语混合拆分&lt;/li&gt;
&lt;li&gt;映射每个 token 为唯一整数 Token ID&lt;/li&gt;
&lt;li&gt;补充特殊标记：句首 &lt;code&gt;&amp;lt;bos&amp;gt;&lt;/code&gt;、句尾 &lt;code&gt;&amp;lt;eos&amp;gt;&lt;/code&gt;、填充 &lt;code&gt;&amp;lt;pad&amp;gt;&lt;/code&gt;，生成一维 ID 数组&lt;/li&gt;
&lt;li&gt;输出 CPU 内存上的 &lt;code&gt;[batch, seq_len]&lt;/code&gt; 整型张量（batch=1 单轮对话）&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;3-查表获取-token-embedding--叠加位置编码&#34;&gt;&lt;a href=&#34;#3-%e6%9f%a5%e8%a1%a8%e8%8e%b7%e5%8f%96-token-embedding--%e5%8f%a0%e5%8a%a0%e4%bd%8d%e7%bd%ae%e7%bc%96%e7%a0%81&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;3. 查表获取 Token Embedding + 叠加位置编码
&lt;/h3&gt;&lt;p&gt;两者均为模型内置权重矩阵，常驻 CPU，推理时拷贝至 GPU 显存：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Embedding 查表&lt;/strong&gt;：权重矩阵 shape &lt;code&gt;[词表总量, 隐藏层维度]&lt;/code&gt;（例如 152k × 4096）；根据所有 Token ID 索引矩阵对应行，取出每个 token 的 FP16/BF16 高维向量，得到张量 &lt;code&gt;[1, seq_len, hidden_dim]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;位置编码融合&lt;/strong&gt;：LLM 无法感知文字顺序，预计算正弦余弦/可学习位置向量，shape 与 Embedding 完全一致；向量逐元素相加融合，携带时序位置信息&lt;/li&gt;
&lt;li&gt;此时得到完整输入特征张量，仍存在 CPU 内存&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;4-cpu-张量拷贝至-gpu-全局显存&#34;&gt;&lt;a href=&#34;#4-cpu-%e5%bc%a0%e9%87%8f%e6%8b%b7%e8%b4%9d%e8%87%b3-gpu-%e5%85%a8%e5%b1%80%e6%98%be%e5%ad%98&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;4. CPU 张量拷贝至 GPU 全局显存
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;执行 CUDA 内存拷贝（cudaMemcpy），将融合后的 Embedding 张量从主机内存搬运至显卡全局显存&lt;/li&gt;
&lt;li&gt;配套分配显存空间：提前预分配 KV Cache 缓存区（Decoder 推理核心，存储每一层历史注意力 key/value 向量，大幅减少重复计算）&lt;/li&gt;
&lt;li&gt;同步 CPU/GPU 指令流，等待拷贝完成后才启动计算&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;5-调度张量送入-gpu-sm循环执行多层-decoder&#34;&gt;&lt;a href=&#34;#5-%e8%b0%83%e5%ba%a6%e5%bc%a0%e9%87%8f%e9%80%81%e5%85%a5-gpu-sm%e5%be%aa%e7%8e%af%e6%89%a7%e8%a1%8c%e5%a4%9a%e5%b1%82-decoder&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;5. 调度张量送入 GPU SM，循环执行多层 Decoder
&lt;/h3&gt;&lt;p&gt;一张 NVIDIA GPU 由数十个 SM 并行组成，调度器分片分发张量至所有 SM 协同计算：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;单块 SM 内部硬件：CUDA Core（通用浮点运算）、Tensor Core（AI 矩阵乘法专用加速单元，LLM 核心算力）、片上高速 Shared Memory&lt;/li&gt;
&lt;li&gt;逐层循环执行 N 层 Decoder（如 32 层、40 层），每层固定流程：
&lt;ul&gt;
&lt;li&gt;多头自注意力：读取 KV Cache，计算 Query-Key 相似度，Softmax 归一化权重，加权融合 Value 向量&lt;/li&gt;
&lt;li&gt;FFN 前馈网络：高维向量升维、激活函数、降维&lt;/li&gt;
&lt;li&gt;残差连接 + 层归一化 LN&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;中间计算数据优先存放 SM 片上 Shared Memory（读写速度远高于全局显存），仅中间结果写回显存更新 KV Cache&lt;/li&gt;
&lt;li&gt;全部层计算完成，输出序列末尾的隐藏特征向量（自回归仅取最后一个 token 特征用于预测下一词）&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;6-lm-head-线性层映射输出词表概率-logits&#34;&gt;&lt;a href=&#34;#6-lm-head-%e7%ba%bf%e6%80%a7%e5%b1%82%e6%98%a0%e5%b0%84%e8%be%93%e5%87%ba%e8%af%8d%e8%a1%a8%e6%a6%82%e7%8e%87-logits&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;6. LM Head 线性层映射，输出词表概率 Logits
&lt;/h3&gt;&lt;p&gt;LM Head 是一个线性权重矩阵，存储在 GPU 显存：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;输入：单层 Decoder 输出的末尾隐藏向量 &lt;code&gt;[1, hidden_dim]&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;矩阵乘法映射至词表维度，输出 &lt;code&gt;[1, vocab_size]&lt;/code&gt; 的原始得分 Logits&lt;/li&gt;
&lt;li&gt;可选预处理：对 Logits 做温度缩放、Top-P / Top-K 截断，屏蔽 &lt;code&gt;&amp;lt;pad&amp;gt;&lt;/code&gt; 等无效 token 得分&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;7-采样算法选出单个新-token-id自回归核心循环&#34;&gt;&lt;a href=&#34;#7-%e9%87%87%e6%a0%b7%e7%ae%97%e6%b3%95%e9%80%89%e5%87%ba%e5%8d%95%e4%b8%aa%e6%96%b0-token-id%e8%87%aa%e5%9b%9e%e5%bd%92%e6%a0%b8%e5%bf%83%e5%be%aa%e7%8e%af&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;7. 采样算法选出单个新 Token ID（自回归核心循环）
&lt;/h3&gt;&lt;p&gt;对 Logits 概率分布采样，两种主流方案：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;贪心采样&lt;/strong&gt;：直接取分数最高的 token&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;随机采样（TopP / TopK）&lt;/strong&gt;：筛选高分 token 后随机选取，回答更有创造性&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;输出单个整数 Token ID。&lt;/p&gt;
&lt;h3 id=&#34;8-循环推理关键迭代生成整段回复&#34;&gt;&lt;a href=&#34;#8-%e5%be%aa%e7%8e%af%e6%8e%a8%e7%90%86%e5%85%b3%e9%94%ae%e8%bf%ad%e4%bb%a3%e7%94%9f%e6%88%90%e6%95%b4%e6%ae%b5%e5%9b%9e%e5%a4%8d&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;8. 循环推理（关键：迭代生成整段回复）
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;将刚生成的 Token ID 追加到原始输入序列尾部&lt;/li&gt;
&lt;li&gt;仅对新增的 1 个 token 重复步骤 3~7（复用历史 KV Cache，不用重新计算整段上下文，大幅提速）&lt;/li&gt;
&lt;li&gt;循环迭代，直到采样出 &lt;code&gt;&amp;lt;eos&amp;gt;&lt;/code&gt; 终止标记，停止生成&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;9-token-id-序列解码--可读自然文字&#34;&gt;&lt;a href=&#34;#9-token-id-%e5%ba%8f%e5%88%97%e8%a7%a3%e7%a0%81--%e5%8f%af%e8%af%bb%e8%87%aa%e7%84%b6%e6%96%87%e5%ad%97&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;9. Token ID 序列解码 → 可读自然文字
&lt;/h3&gt;&lt;ol&gt;
&lt;li&gt;收集全部生成的 Token ID 序列，送入 Tokenizer 反向解码逻辑&lt;/li&gt;
&lt;li&gt;根据词表映射 ID 还原子词，拼接合并为完整句子&lt;/li&gt;
&lt;li&gt;自动清理分词产生的特殊分隔符、空白冗余字符，输出人类可读回答&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;五容易被混淆的区分&#34;&gt;&lt;a href=&#34;#%e4%ba%94%e5%ae%b9%e6%98%93%e8%a2%ab%e6%b7%b7%e6%b7%86%e7%9a%84%e5%8c%ba%e5%88%86&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;五、容易被混淆的区分
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;LLM 内部 Token Embedding&lt;/strong&gt;：维度极高（4096+）、FP16/BF16，只给 Transformer 计算，不存向量库&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;RAG 检索 Embedding&lt;/strong&gt;：低维（384/768），专门相似度计算，不进大模型主干&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;内存占用举例&lt;/strong&gt;（2048 上下文，d_model=4096，FP16）：单条输入向量 &lt;code&gt;1 × 2048 × 4096 × 2B = 16,777,216 B = 16MB&lt;/code&gt;，换成 FP32 直接翻倍 32MB&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;关键工程点&#34;&gt;&lt;a href=&#34;#%e5%85%b3%e9%94%ae%e5%b7%a5%e7%a8%8b%e7%82%b9&#34; class=&#34;header-anchor&#34;&gt;&lt;/a&gt;关键工程点
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;KV Cache&lt;/strong&gt;：Decoder 自回归推理性能的核心——没有它每一轮都要重算全部上下文，速度暴跌几十倍&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;硬件分层差异&lt;/strong&gt;：全局显存（低速，存全部权重/KV 缓存）→ SM 共享内存（高速，临时计算），向量读写存在明显的层级速度差距&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;精度细节&lt;/strong&gt;：BF16 多用于模型权重存储，FP16 多用于中间计算，两者算力、数值范围有区分&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Batch 逻辑&lt;/strong&gt;：多用户并发时会批量拼接多个 Prompt 送入 GPU，单轮对话 batch=1&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;计算与 IO 阻塞&lt;/strong&gt;：CPU-GPU 数据拷贝会占用耗时，大维度向量（如 4096 维）传输开销不可忽略&lt;/li&gt;
&lt;/ol&gt;
</description>
        </item>
        
    </channel>
</rss>
