本部分提供术语表、代码文件索引和参考资料,方便你在阅读过程中快速查阅。
1 - 术语表
术语表(Glossary)
本术语表按字母顺序列出了 vLLM 文档中使用的关键术语及其解释。
A
Activation(激活值)
神经网络中间层的输出张量。在推理过程中,激活值存储在 GPU 显存中,占用一定的显存空间。
AllGather(全收集)
分布式通信原语,将所有进程的数据收集到每个进程。用于张量并行中收集分片的输出。
AllReduce(全归约)
分布式通信原语,将所有进程的数据进行归约(如求和)并将结果分发到每个进程。是张量并行中最常用的通信操作。
Attention(注意力)
Transformer 架构的核心机制,用于计算序列中不同位置之间的关联性。通过 Query、Key、Value 三个矩阵计算注意力权重。
AWQ (Activation-aware Weight Quantization)
一种激活感知的权重量化方法,通过保护对输出影响大的通道来减少量化误差。
Async(异步)
vLLM 中的异步编程模式,允许在等待 I/O 或计算完成时处理其他任务,提高整体效率。
B
Batch Size(批大小)
同时处理的请求数量。更大的批大小通常能提高 GPU 利用率和吞吐量。
Block(块)
PagedAttention 中 KV Cache 的基本分配单位。每个块包含固定数量的 token 的 K 和 V 值。
Block Pool(块池)
管理所有物理块的组件,负责块的分配、释放和 LRU 驱逐。
Block Table(块表)
记录逻辑块到物理块映射关系的数据结构。类似于操作系统的页表。
BF16 (Brain Floating Point 16)
Google 开发的 16 位浮点格式,指数位与 FP32 相同,精度略低于 FP16 但动态范围更大。
C
Causal Mask(因果掩码)
在自回归生成中使用的掩码,防止模型看到未来的 token。也称为 Attention Mask。
Chunked Prefill(分块预填充)
将长输入分成多个小块进行处理的技术,可以与 Decode 阶段交错执行,降低延迟。
Continuous Batching(连续批处理)
vLLM 的核心调度策略,允许在每个迭代动态添加或移除请求,提高 GPU 利用率。
Copy-on-Write(写时复制)
内存管理技术,多个请求可以共享相同的 KV Cache 块,只在需要修改时才创建副本。
CUDA
NVIDIA 的并行计算平台和编程模型,用于 GPU 加速计算。
CUDA Graph
NVIDIA 的优化技术,将一系列 CUDA 操作捕获为图形,减少 kernel launch 开销。
D
Data Parallelism(数据并行)
分布式策略,将数据分配到多个设备,每个设备持有完整的模型副本。
Decode(解码阶段)
LLM 生成过程的第二阶段,逐个生成输出 token。特点是计算量小但依赖 KV Cache 读取。
Draft Model(草稿模型)
投机解码中使用的小型模型,快速生成候选 token 供目标模型验证。
E
EAGLE
一种高效的投机解码方法,利用目标模型的隐藏状态来预测 draft token。
Embedding(嵌入)
将离散的 token 映射到连续的向量空间的过程,或指嵌入向量本身。
EngineCore
vLLM V1 中的核心引擎组件,负责调度、执行和状态管理。
Executor(执行器)
负责管理 Worker 进程并协调模型执行的组件。
F
FFN (Feed-Forward Network)
Transformer 中的前馈网络层,通常由两个线性层和一个激活函数组成。
Flash Attention
一种 IO 优化的注意力计算方法,通过减少 GPU 内存访问显著提高效率。
FP8 (8-bit Floating Point)
8 位浮点数格式,有 E4M3 和 E5M2 两种变体,用于高效量化。
FP16 (16-bit Floating Point)
16 位浮点数格式,是 LLM 推理中常用的精度。
G
GELU (Gaussian Error Linear Unit)
一种激活函数,比 ReLU 更平滑,在 Transformer 中广泛使用。
GPTQ
一种基于二阶信息的后训练量化方法,可以将模型量化到 INT4 精度。
GPU Utilization(GPU 利用率)
GPU 计算资源的使用程度。Continuous Batching 的目标之一就是提高 GPU 利用率。
H
Head(头)
多头注意力中的一个注意力头。每个头独立计算注意力,捕获不同类型的关系。
Hidden Size(隐藏层大小)
Transformer 中间表示的维度,也称为模型维度(d_model)。
Hidden States(隐藏状态)
模型中间层的输出,在 EAGLE 等方法中用于指导 draft token 生成。
I
INT4/INT8
4 位或 8 位整数量化格式,用于减少模型显存占用和加速计算。
Iteration-Level Scheduling(迭代级调度)
每个推理迭代重新进行调度决策的策略,是 Continuous Batching 的基础。
K
Key(键)
注意力机制中的 Key 矩阵,与 Query 矩阵相乘计算注意力分数。
KV Cache
存储已计算的 Key 和 Value 的缓存,避免重复计算,是 LLM 推理优化的关键。
KVCacheManager
vLLM 中管理 KV Cache 分配和释放的组件。
L
Latency(延迟)
从请求发送到收到响应的时间。包括 TTFT(首 token 延迟)和 TPOT(单 token 延迟)。
LayerNorm(层归一化)
一种归一化技术,用于稳定训练和提高模型性能。
Linear Layer(线性层)
执行矩阵乘法和可选偏置加法的神经网络层。
LLM (Large Language Model)
大语言模型,通常指参数量在数十亿以上的语言模型。
LRU (Least Recently Used)
最近最少使用的缓存驱逐策略,用于 Block Pool 管理。
M
Marlin
一套高度优化的 CUDA 内核,用于 INT4/INT8 矩阵乘法加速。
Memory Bandwidth(内存带宽)
GPU 内存的数据传输速率,是 Decode 阶段的主要瓶颈。
MLP (Multi-Layer Perceptron)
多层感知机,在 Transformer 中通常指 FFN 层。
Multi-Head Attention(多头注意力)
将注意力分成多个头并行计算,捕获不同类型的依赖关系。
N
NCCL
NVIDIA Collective Communications Library,用于多 GPU 间高效通信。
num_heads(头数)
多头注意力中的头数量,影响模型的表达能力和计算量。
num_layers(层数)
Transformer 中的解码器层数量。
O
Output Processing(输出处理)
将模型输出转换为用户可读格式的过程,包括采样、去分词等。
P
PagedAttention
vLLM 的核心创新,将 KV Cache 分成固定大小的块进行非连续存储,减少显存碎片。
Pipeline Parallelism(流水线并行)
将模型的层分配到不同设备的并行策略,适用于多节点部署。
Position Encoding(位置编码)
向输入添加位置信息的方法,使模型能够理解序列顺序。
Preemption(抢占)
当内存不足时,暂停低优先级请求,释放资源给高优先级请求的机制。
Prefill(预填充阶段)
LLM 生成过程的第一阶段,并行处理所有输入 token 并初始化 KV Cache。
Prefix Caching(前缀缓存)
缓存相同前缀的 KV Cache,供后续请求复用,提高效率。
Q
Quantization(量化)
将高精度数值转换为低精度的技术,用于减少模型大小和加速计算。
Query(查询)
注意力机制中的 Query 矩阵,用于查询与其他位置的相关性。
R
Ray
分布式计算框架,vLLM 使用它进行多节点分布式推理。
Rejection Sampling(拒绝采样)
投机解码中验证 draft token 的方法,确保输出分布与只用目标模型一致。
Request(请求)
用户发送的推理请求,包含输入 prompt 和采样参数。
RMSNorm (Root Mean Square Normalization)
一种简化的归一化方法,计算效率比 LayerNorm 更高。
RoPE (Rotary Position Embedding)
旋转位置编码,通过旋转操作编码位置信息,支持长度外推。
S
Sampler(采样器)
根据模型输出的 logits 选择下一个 token 的组件。
Sampling Parameters(采样参数)
控制文本生成的参数,如 temperature、top_k、top_p 等。
Scale(缩放因子)
量化中用于映射浮点值和整数值的比例因子。
Scheduler(调度器)
决定哪些请求被执行、分配多少资源的核心组件。
Self-Attention(自注意力)
序列对自身进行注意力计算,捕获序列内部的依赖关系。
Sequence Length(序列长度)
输入或输出的 token 数量。
Slot Mapping(槽位映射)
将 token 位置映射到 KV Cache 存储位置的机制。
Softmax
将任意数值转换为概率分布的函数,在注意力计算中用于归一化。
Speculative Decoding(投机解码)
使用小模型预测、大模型验证的加速技术。
Streaming(流式输出)
边生成边返回结果的输出方式,降低用户感知延迟。
T
Temperature(温度)
采样参数,控制输出分布的平滑度。较高温度使输出更随机。
Tensor Parallelism(张量并行)
将模型的权重矩阵切分到多个设备的并行策略。
Throughput(吞吐量)
单位时间内处理的 token 数量,通常以 tokens/s 表示。
Token(词元)
文本的基本单位,由分词器生成。
Tokenization(分词)
将文本转换为 token 序列的过程。
Top-K Sampling
只从概率最高的 K 个 token 中采样的策略。
Top-P Sampling(Nucleus Sampling)
从累积概率达到 P 的 token 集合中采样的策略。
Transformer
基于注意力机制的神经网络架构,是现代 LLM 的基础。
TTFT (Time To First Token)
首 token 延迟,从请求发送到收到第一个输出 token 的时间。
V
Value(值)
注意力机制中的 Value 矩阵,根据注意力权重聚合信息。
vLLM
高效的大语言模型推理引擎,核心创新是 PagedAttention。
Vocab Size(词表大小)
模型支持的不同 token 数量。
W
Weight(权重)
模型的可学习参数,存储在模型文件中。
Worker
执行模型计算的工作进程,在分布式设置中运行在各个 GPU 上。
Z
Zero-Point(零点)
量化中的偏移值,用于非对称量化。
导航
2 - 代码文件索引
代码文件索引(Code Map)
本文档提供 vLLM 代码库的关键文件索引,帮助读者快速定位感兴趣的代码。
代码目录结构概览
vllm/
├── entrypoints/ # 入口点
│ ├── llm.py # Python API 入口
│ ├── cli/ # 命令行入口
│ └── openai/ # OpenAI 兼容 API
│
├── v1/ # V1 版本核心实现
│ ├── engine/ # 引擎相关
│ ├── core/ # 核心调度和内存管理
│ ├── worker/ # Worker 执行
│ ├── attention/ # 注意力实现
│ ├── sample/ # 采样器
│ └── spec_decode/ # 投机解码
│
├── model_executor/ # 模型执行
│ ├── models/ # 模型实现
│ └── layers/ # 层实现和量化
│
├── distributed/ # 分布式通信
│
├── config/ # 配置管理
│
└── csrc/ # CUDA 内核
└── attention/ # Attention CUDA 内核
入口点(Entry Points)
| 文件路径 | 说明 | 关键类/函数 |
|---|---|---|
vllm/entrypoints/llm.py | Python API 入口 | LLM, LLM.generate(), LLM.chat() |
vllm/entrypoints/cli/main.py | CLI 入口 | serve, bench 命令 |
vllm/entrypoints/openai/api_server.py | OpenAI API 服务 | API 端点定义 |
vllm/engine/arg_utils.py | 参数解析 | EngineArgs, create_engine_config() |
V1 引擎(Engine)
| 文件路径 | 说明 | 关键类/函数 |
|---|---|---|
vllm/v1/engine/llm_engine.py | LLM 引擎入口 | LLMEngine |
vllm/v1/engine/core.py | 引擎核心 | EngineCore, EngineCore.step() |
vllm/v1/engine/processor.py | 输入/输出处理 | InputProcessor, OutputProcessor |
vllm/v1/engine/async_llm.py | 异步引擎 | AsyncLLM |
核心调度(Core Scheduling)
| 文件路径 | 说明 | 关键类/函数 |
|---|---|---|
vllm/v1/core/sched/scheduler.py | 调度器 | Scheduler, Scheduler.schedule() |
vllm/v1/core/sched/request_queue.py | 请求队列 | FCFSRequestQueue, PriorityRequestQueue |
vllm/v1/core/kv_cache_manager.py | KV Cache 管理 | KVCacheManager, allocate_slots(), free() |
vllm/v1/core/block_pool.py | 块池管理 | BlockPool, FreeKVCacheBlockQueue |
vllm/v1/core/kv_cache_utils.py | KV Cache 工具 | KVCacheBlock, BlockHashToBlockMap |
请求处理(Request)
| 文件路径 | 说明 | 关键类/函数 |
|---|---|---|
vllm/v1/request.py | 请求数据结构 | Request, RequestStatus |
vllm/sampling_params.py | 采样参数 | SamplingParams |
vllm/outputs.py | 输出数据结构 | RequestOutput, CompletionOutput |
Worker 执行(Worker)
| 文件路径 | 说明 | 关键类/函数 |
|---|---|---|
vllm/v1/worker/gpu_worker.py | GPU Worker | GPUWorker |
vllm/v1/worker/gpu_model_runner.py | 模型执行 | GPUModelRunner, execute_model() |
vllm/v1/worker/gpu_input_batch.py | 输入批处理 | InputBatch, CachedRequestState |
Executor 执行器
| 文件路径 | 说明 | 关键类/函数 |
|---|---|---|
vllm/v1/executor/abstract.py | 执行器基类 | Executor |
vllm/v1/executor/uniproc_executor.py | 单进程执行器 | UniProcExecutor |
vllm/v1/executor/multiproc_executor.py | 多进程执行器 | MultiprocExecutor |
vllm/v1/executor/ray_distributed.py | Ray 分布式执行器 | RayDistributedExecutor |
注意力机制(Attention)
| 文件路径 | 说明 | 关键类/函数 |
|---|---|---|
vllm/v1/attention/ops/paged_attn.py | PagedAttention 接口 | PagedAttention |
vllm/v1/attention/backends/flash_attn.py | Flash Attention 后端 | FlashAttentionBackend |
vllm/v1/attention/backends/triton_attn.py | Triton Attention 后端 | TritonAttentionBackend |
vllm/attention/layer.py | Attention 层 | Attention |
采样(Sampling)
| 文件路径 | 说明 | 关键类/函数 |
|---|---|---|
vllm/v1/sample/sampler.py | 采样器 | Sampler, Sampler.forward() |
vllm/v1/sample/metadata.py | 采样元数据 | SamplingMetadata |
vllm/v1/sample/ops/penalties.py | 惩罚项计算 | apply_penalties() |
vllm/v1/sample/ops/topk_topp.py | Top-K/Top-P 采样 | apply_top_k_top_p() |
投机解码(Speculative Decoding)
| 文件路径 | 说明 | 关键类/函数 |
|---|---|---|
vllm/v1/spec_decode/eagle.py | EAGLE 基类 | SpecDecodeBaseProposer, EagleProposer |
vllm/v1/spec_decode/draft_model.py | Draft Model | DraftModelProposer |
vllm/v1/spec_decode/medusa.py | Medusa | MedusaProposer |
vllm/v1/worker/gpu/spec_decode/rejection_sample.py | 拒绝采样 | rejection_sample() |
模型实现(Models)
| 文件路径 | 说明 | 关键类/函数 |
|---|---|---|
vllm/model_executor/models/llama.py | LLaMA 模型 | LlamaForCausalLM |
vllm/model_executor/models/qwen2.py | Qwen2 模型 | Qwen2ForCausalLM |
vllm/model_executor/models/mixtral.py | Mixtral MoE | MixtralForCausalLM |
vllm/model_executor/models/deepseek_v2.py | DeepSeek V2 | DeepseekV2ForCausalLM |
vllm/model_executor/model_loader/loader.py | 模型加载 | get_model() |
量化(Quantization)
| 文件路径 | 说明 | 关键类/函数 |
|---|---|---|
vllm/model_executor/layers/quantization/__init__.py | 量化入口 | get_quantization_config() |
vllm/model_executor/layers/quantization/base_config.py | 量化基类 | QuantizationConfig |
vllm/model_executor/layers/quantization/fp8.py | FP8 量化 | Fp8Config |
vllm/model_executor/layers/quantization/awq.py | AWQ 量化 | AWQConfig |
vllm/model_executor/layers/quantization/gptq.py | GPTQ 量化 | GPTQConfig |
分布式通信(Distributed)
| 文件路径 | 说明 | 关键类/函数 |
|---|---|---|
vllm/distributed/parallel_state.py | 并行状态管理 | GroupCoordinator |
vllm/distributed/communication_op.py | 通信操作 | tensor_model_parallel_all_reduce() |
vllm/distributed/device_communicators/pynccl.py | NCCL 通信 | PyNcclCommunicator |
vllm/distributed/device_communicators/custom_all_reduce.py | 自定义 AllReduce | CustomAllReduce |
配置(Config)
| 文件路径 | 说明 | 关键类/函数 |
|---|---|---|
vllm/config/vllm.py | 总配置 | VllmConfig |
vllm/config/model.py | 模型配置 | ModelConfig |
vllm/config/parallel.py | 并行配置 | ParallelConfig |
vllm/config/scheduler.py | 调度器配置 | SchedulerConfig |
vllm/config/cache.py | 缓存配置 | CacheConfig |
CUDA 内核(CUDA Kernels)
| 文件路径 | 说明 |
|---|---|
csrc/attention/paged_attention_v1.cu | PagedAttention V1 内核 |
csrc/attention/paged_attention_v2.cu | PagedAttention V2 内核 |
csrc/quantization/ | 量化相关内核 |
csrc/moe/ | MoE 相关内核 |
关键函数速查
请求处理流程
# 1. 用户调用
LLM.generate() # vllm/entrypoints/llm.py
# 2. 引擎处理
LLMEngine.add_request() # vllm/v1/engine/llm_engine.py
EngineCore.step() # vllm/v1/engine/core.py
# 3. 调度
Scheduler.schedule() # vllm/v1/core/sched/scheduler.py
KVCacheManager.allocate_slots() # vllm/v1/core/kv_cache_manager.py
# 4. 执行
GPUModelRunner.execute_model() # vllm/v1/worker/gpu_model_runner.py
model.forward() # vllm/model_executor/models/*.py
# 5. 采样
Sampler.forward() # vllm/v1/sample/sampler.py
# 6. 输出
OutputProcessor.process() # vllm/v1/engine/processor.py
KV Cache 管理流程
# 分配
KVCacheManager.allocate_slots() # vllm/v1/core/kv_cache_manager.py
BlockPool.get_free_blocks() # vllm/v1/core/block_pool.py
# 释放
KVCacheManager.free() # vllm/v1/core/kv_cache_manager.py
BlockPool.free_blocks() # vllm/v1/core/block_pool.py
# 前缀缓存
KVCacheManager.get_computed_blocks() # vllm/v1/core/kv_cache_manager.py
调试建议
关键断点位置
| 功能 | 文件:行号 | 说明 |
|---|---|---|
| 请求添加 | v1/engine/llm_engine.py:add_request | 追踪请求入口 |
| 调度决策 | v1/core/sched/scheduler.py:schedule | 理解调度逻辑 |
| KV 分配 | v1/core/kv_cache_manager.py:allocate_slots | 内存分配 |
| 模型执行 | v1/worker/gpu_model_runner.py:execute_model | 前向传播 |
| 采样 | v1/sample/sampler.py:forward | Token 采样 |
日志配置
# 详细日志
export VLLM_LOGGING_LEVEL=DEBUG
# 函数追踪
export VLLM_TRACE_FUNCTION=1
# 调度器日志
export VLLM_LOG_SCHEDULER=1
导航
3 - 参考资料
参考资料(References)
本文档汇总了学习 vLLM 和 LLM 推理优化所需的关键参考资料。
官方资源
vLLM 官方
vLLM GitHub 仓库
- https://github.com/vllm-project/vllm
- 源代码、Issue 讨论、PR 贡献
vLLM 官方文档
- https://docs.vllm.ai/
- 安装指南、API 参考、最佳实践
vLLM 博客
- https://blog.vllm.ai/
- 技术文章、版本更新、性能分析
核心论文
PagedAttention
- Efficient Memory Management for Large Language Model Serving with PagedAttention
- 作者: Woosuk Kwon, Zhuohan Li, et al.
- 会议: SOSP 2023
- 链接: https://arxiv.org/abs/2309.06180
- 要点: vLLM 的核心创新,介绍分页注意力机制
Transformer 架构
- Attention Is All You Need
- 作者: Vaswani et al.
- 会议: NeurIPS 2017
- 链接: https://arxiv.org/abs/1706.03762
- 要点: Transformer 架构的原始论文
Flash Attention
FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness
- 作者: Tri Dao et al.
- 会议: NeurIPS 2022
- 链接: https://arxiv.org/abs/2205.14135
- 要点: IO 优化的注意力计算
FlashAttention-2: Faster Attention with Better Parallelism and Work Partitioning
- 作者: Tri Dao
- 链接: https://arxiv.org/abs/2307.08691
- 要点: Flash Attention 的改进版本
投机解码
Fast Inference from Transformers via Speculative Decoding
- 作者: Yaniv Leviathan et al.
- 会议: ICML 2023
- 链接: https://arxiv.org/abs/2211.17192
- 要点: 投机解码的原始论文
EAGLE: Speculative Sampling Requires Rethinking Feature Uncertainty
- 作者: Yuhui Li et al.
- 链接: https://arxiv.org/abs/2401.15077
- 要点: 利用隐藏状态的投机解码
Medusa: Simple LLM Inference Acceleration Framework with Multiple Decoding Heads
- 作者: Tianle Cai et al.
- 链接: https://arxiv.org/abs/2401.10774
- 要点: 多头预测投机解码
量化技术
AWQ: Activation-aware Weight Quantization for LLM Compression and Acceleration
- 作者: Ji Lin et al.
- 会议: MLSys 2024
- 链接: https://arxiv.org/abs/2306.00978
- 要点: 激活感知权重量化
GPTQ: Accurate Post-Training Quantization for Generative Pre-trained Transformers
- 作者: Elias Frantar et al.
- 会议: ICLR 2023
- 链接: https://arxiv.org/abs/2210.17323
- 要点: 基于 Hessian 的后训练量化
FP8 Formats for Deep Learning
- 作者: Paulius Micikevicius et al.
- 链接: https://arxiv.org/abs/2209.05433
- 要点: FP8 格式规范
分布式并行
Megatron-LM: Training Multi-Billion Parameter Language Models Using Model Parallelism
- 作者: Mohammad Shoeybi et al.
- 链接: https://arxiv.org/abs/1909.08053
- 要点: 张量并行和流水线并行
GPipe: Efficient Training of Giant Neural Networks using Pipeline Parallelism
- 作者: Yanping Huang et al.
- 链接: https://arxiv.org/abs/1811.06965
- 要点: 流水线并行训练
深度学习基础
书籍
Deep Learning (花书)
- 作者: Ian Goodfellow, Yoshua Bengio, Aaron Courville
- 链接: https://www.deeplearningbook.org/
- 要点: 深度学习理论基础
Dive into Deep Learning (动手学深度学习)
- 作者: Aston Zhang, Zachary C. Lipton, et al.
- 链接: https://d2l.ai/
- 要点: 实践导向的深度学习教程
在线课程
CS231n: Convolutional Neural Networks for Visual Recognition
- 学校: Stanford
- 链接: http://cs231n.stanford.edu/
- 要点: 神经网络基础
CS224n: Natural Language Processing with Deep Learning
- 学校: Stanford
- 链接: https://web.stanford.edu/class/cs224n/
- 要点: NLP 和 Transformer
GPU 和 CUDA
NVIDIA 官方
CUDA C++ Programming Guide
- 链接: https://docs.nvidia.com/cuda/cuda-c-programming-guide/
- 要点: CUDA 编程基础
NCCL Documentation
- 链接: https://docs.nvidia.com/deeplearning/nccl/
- 要点: 多 GPU 通信
cuBLAS Documentation
- 链接: https://docs.nvidia.com/cuda/cublas/
- 要点: GPU 矩阵运算
性能优化
- GPU Performance Background User’s Guide
- 链接: https://docs.nvidia.com/deeplearning/performance/index.html
- 要点: GPU 性能优化指南
相关项目
推理引擎
TensorRT-LLM
- GitHub: https://github.com/NVIDIA/TensorRT-LLM
- 说明: NVIDIA 官方 LLM 推理引擎
Text Generation Inference (TGI)
- GitHub: https://github.com/huggingface/text-generation-inference
- 说明: Hugging Face 的 LLM 推理服务
llama.cpp
- GitHub: https://github.com/ggerganov/llama.cpp
- 说明: CPU 推理优化
量化工具
AutoAWQ
- GitHub: https://github.com/casper-hansen/AutoAWQ
- 说明: AWQ 量化工具
AutoGPTQ
- GitHub: https://github.com/PanQiWei/AutoGPTQ
- 说明: GPTQ 量化工具
模型库
- Hugging Face Model Hub
- 链接: https://huggingface.co/models
- 说明: 预训练模型下载
技术博客
LLM 推理
The Illustrated Transformer
- 作者: Jay Alammar
- 链接: https://jalammar.github.io/illustrated-transformer/
- 要点: Transformer 可视化解释
LLM Inference Performance Engineering: Best Practices
- 来源: Databricks
- 要点: LLM 推理优化最佳实践
vLLM 相关
- vLLM: PagedAttention for 24x Faster LLM Inference
- 来源: vLLM Blog
- 链接: https://blog.vllm.ai/2023/06/20/vllm.html
- 要点: vLLM 介绍博客
社区资源
讨论论坛
vLLM Discord
- 链接: https://discord.com/invite/vllm
- 说明: 官方交流社区
Hugging Face Forums
- 链接: https://discuss.huggingface.co/
- 说明: 模型和推理讨论
GitHub Issues
- vLLM Issues
- 链接: https://github.com/vllm-project/vllm/issues
- 说明: Bug 报告和功能请求
学习路径建议
入门阶段
- 阅读《动手学深度学习》Transformer 章节
- 阅读 “The Illustrated Transformer”
- 了解 vLLM 基本使用
进阶阶段
- 阅读 PagedAttention 论文
- 阅读 Flash Attention 论文
- 学习 vLLM 源码中的核心模块
深入阶段
- 阅读量化相关论文(AWQ、GPTQ)
- 阅读投机解码论文(Speculative Decoding、EAGLE)
- 了解分布式并行(Megatron-LM)
导航