基本信息

来源摘要/节选

公开展示已截断至最多 800 个字符;请访问原始来源查看完整上下文。

  1. 简介 LLM:就是大语言模型,指参数量较大且具有较强生成能力的语言模型。 vLLM:功能完备的生产级大语言模型推理引擎。 nano-vllm:是vLLM的极简教学版实现,代码只有1200行左右。 作为算法和infra小白,希望通过nano-vllm的学习,学习了解大模型infra的相关知识。
  2. 大模型推理过程 大语言模型的推理过程基本如上所示,大致分为四个阶段: 输入阶段: 用户输入一段文本,系统将这段文字分解为Token,每个Token可以映射到一个整数ID,一串Token就变成了模型可以处理的整数ID序列。 预填充阶段: 对整段输入做第一次完整的计算,生成首个输出Token。经过embedding,位置编码,attention,MLP,softmax等layer的处理,得到最终模型输出的logits。这个logits就是个概率分布,一般而言选取概率最大的预测token,当然这和设置的temperature有关。 自回归解码阶段: 每一次推理过程都是选取下一个token,然后拼接到已有序列的组成新的序列,作为下一次推理的输入,直到达到最大token限制或者生成特殊的 <eos> 结束符号。 输出阶段: 将模型输出的token ID转换为文字,返回给用户。当然,可以在第3步的解码阶段,每生成一个Token就进行一次 输出阶段 ,以实现流式输出的效果,让用户可以直观感受模型的推理进展。 1.1 相关耗时指标 1.1.1 TTFT (Time To First Token) TTFT其实就是 大模型说话前的思考时间 。模型进行 一次完整的、并行的前向传播 。它需要为提示词中的 每一个token 计算其隐藏状态,并尤其关键的是,需要为 每一个token 计算并缓存其Key和Value向量,即初始化 KV Cache 。…

来源说明

当前只保存了公开页面节选,不代表原文全文。请以原始来源为准。

本页只呈现已做哈希绑定的来源证据,不包含基于旧正文或缺失原文的扩展推断。