avatar
文章
599
标签
109
分类
29
首页
归档
分类
标签
关于
xhj的博客
首页
归档
分类
标签
关于

xhj的博客

vLLM 学习笔记|Guided Decoding
发表于2025-10-10|LLM
vLLM 学习笔记|Guided Decoding一、引言目前,在大模型推理领域中,Guided Decoding 技术广泛用于生成一些特定格式的输出,如:SQL、JSON 等。本文将基于 vLLM 以及 Outlines 后端,深入解析 Guided Decoding 背后的技术原理。 二、什么是 Guided Decoding?一般来说,LLM 的输出通常是一段符合人类表达习惯的文本序列,这让我们可以利用 LLM 来回答问题或是创作内容。然而,当我们需要 LLM 的输出符合特定的格式(如:JSON、SQL、正则表达式等)时——例如希望 LLM 根据我们的需求生成查询数据库的 SQL 语句,通过微调的方法通常很难达到我们预期的效果。这时,就需要用到 Guided Decoding 技术,它可以通过影响模型输出层的 Logits 分布(施加 Mask 过滤不满足要求的 Token)来达到规范模型输出格式的效果。 🌰 举个例子: 我们可以向 LLM 输入一个 Prompt 以及对应的格式数据: 12345678910111213141516171819# Guided decod...
vLLM 学习笔记|Guided Decoding (V1)
发表于2025-10-09|LLM
vLLM 学习笔记|Guided Decoding (V1)一、引言Guided Decoding,又叫 Structured Output,是大模型推理领域中非常重要的一个特性,主要用于引导大模型输出符合某种特定格式(如:SQL、Json)的结果,以便更好地将大模型落地到具体的应用场景中。 在我的上一篇文章中,简要地介绍了 Guided Decoding 的原理,并详细分析了 vLLM 中相关代码的实现(V0),文章链接如下:link。 自从 vLLM v0.8.x 之后,V1 Engine 将作为 vLLM 启动时的默认选项。关于 V1 Engine 的系统设计以及具体的优化点,我将会在之后逐步梳理并分享出来(如果有空的话)。而在本文中,我将针对 V1 Engine,分享 Structured Output 模块的整体设计与具体实现。 二、V1 Engine 整体架构在介绍 Structured Output 模块的设计之前,让我们先来看下 vLLM V1 Engine 的整体架构。在 V1 中,vLLM 将不同类型的 CPU 密集型操作拆分到了两个相互独立的进程中,以便能够...
vLLM 多模态推理|卷积计算加速
发表于2025-10-08|LLM
vLLM 多模态推理|卷积计算加速一、引言卷积运算是 VL 等多模态模型在处理图像、视频等数据时的核心步骤之一,使用 img2col 算法可以将输入数据和卷积核展平为两个大的矩阵,并通过一次高效的矩阵乘法得到卷积结果,从而极大地提升计算的效率。本文将详细讲解 img2col 算法的基本原理和代码实现,并对 vLLM 中的卷积算子进行介绍。 二、卷积的基本原理在讲解 img2col 算法之前,我们先简单介绍下什么是卷积运算(Convolution)。 简单来说,卷积运算就是一个小窗口(一般称为“卷积核”或“滤波器”)在一个大的输入数据(如图片)上滑动,并在每个位置计算点积,最终生成一个新的、更精炼的特征图的过程。其中,卷积核一般使用正方形,比如在下图中,使用的就是一个 3 x 3 的卷积核(卷积核的通道数 = 输入的通道数,一般为 3,代表图像的红、绿、蓝三种颜色)。 卷积的计算过程: 属于同一输入通道的卷积核在对应的图像数据上进行滑动,并在每一个位置处计算这 9 个数据的点积和; 将每个输入通道的计算结果在每个位置上进行相加,得到形状为 (1, 3, 3) 的输出;...
vLLM 多模态推理|ViT 性能优化
发表于2025-10-07|LLM
vLLM 多模态推理|ViT 性能优化一、引言在多模态处理的 Pipeline 中,ViT(Vision Transformer)和 DiT(Diffusion Transformer)是最常见的处理模块。其中,ViT 在多模态模型中的角色类似于自然语言建模中的 Tokenizer 组件,负责对图像进行视觉特征编码,产出图像的特征序列,只不过 ViT 的编码过程本身也采用了 Transformer 模型结构。 目前,以 vLLM 和 SGLang 为首的开源推理框架针对纯语言模型的特性和优化已愈发完善,而随着多模态模型的快速发展,涌现出了诸如 VL、Omni、TTS 以及 Diffusion 等各式各样的多模态模型,这些开源推理框架针对多模态理解和生成的推理技术还有待完善。 本文将以 vLLM 为例,分享我在工作中学习并积累到的一些针对 ViT 模块的性能优化手段。 二、多模态推理概述2.1 多模态模型的分类目前,根据模型输入和输出所支持的模态,多模态模型可以分为: 多模态理解模型:输入为“文本/图像/视频/音频”,输出为“文本”,模型的任务是理解...
vLLM V1 整体流程|从请求到算子执行
发表于2025-10-06|LLM
vLLM V1 整体流程|从请求到算子执行一、引言vLLM V1 是 vLLM 团队基于 V0 的实践经验并参考工业界其它相关工作提出的最新架构,从 vLLM 0.8.x 版本开始,V1 Engine 将作为 vLLM 启动时的默认选项。 相比于 V0,vLLM V1 具有以下优势: 可读性:代码更加简洁易懂、更加模块化; 高性能:提供更好的推理性能,使用双进程异步处理不同的 CPU 操作,极大地降低了推理的时延和开销; 易扩展:可以轻松集成多样化的特性; 易用性:简化了配置,会默认开启一些特性,以提供更好的性能和体验。 下面,本文将揭秘 vLLM V1 从接收请求到算子执行的推理全流程(附超长流程图,画图不易,欢迎点赞 & 收藏~)。 二、整体概览在深入具体细节之前,让我们先从整体上认识下 V1 Engine 的推理流程。 下面是 vLLM 官方博客中提供的 V1 Engine 在线推理架构图。在 V1 中,vLLM 将不同类型的 CPU 密集型操作拆分到了两个相互独立的进程中,以便能够异步执行不同的 CPU 操作,减少了不同步骤之间相互等待的时间,因此能够更好地压...
vLLM MEMO
发表于2025-10-05|LLM
vLLM MEMO开发常用123456789101112131415161718192021222324# init envcd ~/github/vllm/source .venv/bin/activateexport VLLM_USE_MODELSCOPE=Falseexport HF_ENDPOINT="https://hf-mirror.com"# export VLLM_USE_MODELSCOPE=Truepre-commit install# def run_qwen2_5_vl# /home/sss/.cache/modelscope/hub/models/Qwen/Qwen2.5-VL-7B-Instructpython examples/offline_inference/vision_language.py -m qwen2_5_vl# def run_qwen3_vl# /home/sss/.cache/modelscope/hub/models/Qwen/Qwen3-VL-4B-Instruct# /home/sss/.cache/m...
NVIDIA GPU 硬件架构入门
发表于2025-10-04|LLM
NVIDIA GPU 硬件架构入门一、概述随着大模型产业的发展,AI 训练 & 推理对算力的需求越来越大,AI 的计算也越来越离不开 GPU 的支持。 目前,用于 AI 计算的芯片可以分为: CPU(通用处理器); GPU(通用图形处理器); NPU / TPU(AI 专用处理器)。 那么 CPU 和 GPU 有什么区别呢? 从硬件设计上来看,GPU 的 DRAM 时延(数据搬运、指令执行的延迟)远高于 CPU,但 GPU 的线程数远高于 CPU(有非常多的线程,为大量大规模任务并行而去设计的)。 关注重点: CPU:降低延迟、并发(Concurrency,能够处理多个任务的功能,但不一定是同时); GPU:最大化吞吐量、并行度(Parallelism,同时可以执行多少任务)。 总结: CPU:希望在一个线程里完成所有的工作(串行,优化线程的执行速率和效率); GPU:利用多线程对循环进行展开,来提高硬件整体的利用率(并行,用足够多的线程去解决延迟的问题)。 参考资料:AI System (chenzomi12.github.io)。 二、GPU...
MEMO
发表于2025-10-03|LLM
MEMO环境搭建 Preparation Dockerfile Init env script Linux123456789101112131415161718192021222324252627282930313233343536373839404142434445# 安装 sudoapt-get updateapt-get install sudo# 安装 curlsudo apt updatesudo apt upgradesudo apt install curl# 将自己的 SSH 公钥配置到远程服务器上ssh user@IP -p port# 将 id_rsa.pub 公钥放在服务器上的 authorized_keys 文件中vim /root/.ssh/authorized_keys# 安装 SSH 服务sudo apt updatesudo apt install openssh-client -y# 将 SSH 公钥配置到 GitHub 上ssh-keygen -t ed25519 -C "467638484@qq.com"eval &qu...
Ascend NPU 硬件架构入门
发表于2025-10-02|LLM
Ascend NPU 硬件架构入门一、概述昇腾 NPU 是专门用于 AI 训练/推理计算的 AI 专用处理器,其中的 AI Core 能够在很大程度上提高 AI 计算的效率。 本文将主要介绍 ASCEND NPU 的硬件架构 & 工作原理、AI Core 的计算模式以及异构计算平台 CANN 等内容。 二、NPU 硬件架构2.1 NPU SOC 架构2.1.1 Ascend 310 架构 AI Core:计算核心,负责执行矩阵、向量、标量计算密集的算子任务,采用达芬奇架构; AI CPU:承担非矩阵类复杂计算,即负责执行不适合跑在 AI Core 上的算子; TS Core:作为任务调度器(Task Scheduler,TS),以实现计算任务在 AI Core 上的高效分配和调度(专门服务于 AI Core 和 AI CPU,不承担任何其它的工作); ARM CPU:控制芯片整体运行; DVPP:数字视觉预处理子系统,完成图像视频编解码; Cache & Buffer。 2.1.2 Ascend 910 架构 AI Core:32 个,上下各 16 ...
AI训练&推理常用依赖库
发表于2025-10-01|LLM
AI 训练 & 推理常用依赖库PyTorchtorch…… torchaudiotorchaudio 是 PyTorch 官方用于处理音频数据和进行音频相关深度学习任务的工具包,提供了音频数据的加载和保存、频谱分析、预训练的音频模型(支持音频分类、语音识别等任务)、与 PyTorch 的数据集和数据加载器集成等功能。 torchaudio.load() 是 torchaudio 库中的一个函数,用于加载音频文件并返回音频数据及其采样率。它可以方便地将音频文件加载到 PyTorch 的张量中,以便进行后续的音频处理和深度学习任务。 具体功能包括: 读取音频文件:支持多种音频格式(如 WAV、MP3 等); 返回数据和采样率:返回两个值:音频信号的张量表示(通常是浮点数)和音频的采样率(Hz),方便后续处理和分析。 torchaudio.functional.resample(y, orig_freq=xxx, new_freq=xxx) 是用于对音频信号进行重采样的函数。该函数适用于需要调整音频采样率的场景,如匹配不同音频源的采样频率或准备音频数据以供模型训练。 具体功...
1…242526…60
avatar
xhj
相关学习笔记
文章
599
标签
109
分类
29
Follow Me
公告
欢迎来到我的博客
最新文章
14-FastAPI接口与项目闭环2026-10-14
13-主智能体搭建与异步执行2026-10-13
12-RAGFlow子智能体与知识库准备2026-10-12
11-数据库查询子智能体与MySQL工具2026-10-11
10-网络搜索子智能体与Tavily工具2026-10-10
分类
  • AI Agent101
  • Algorithm20
  • Backend Dev74
  • Big Data2
  • C/C++2
  • Claude Code118
  • Computer Basics18
  • Computer Network2
标签
JDBC Semaphore Hadoop Kafka HBOS Process Backend Dev Gradient Descent GCN Cross validation Trie Docker MLP Isolation Forest Gradient descent PyOD NMF Tornado TwoPointer Math Algorithm RabbitMQ OLSE dijkstra Filter Bayesian optimization PCA Wapper Git MonotoneStack List Dubbo Linux JVM Architecture JVM Redis JVM Performance Monitoring Embedding TCP/IP Stream API
归档
  • 十月 2026 14
  • 九月 2026 17
  • 八月 2026 30
  • 七月 2026 24
  • 六月 2026 26
  • 五月 2026 25
  • 四月 2026 16
  • 三月 2026 20
网站信息
文章数目 :
599
本站访客数 :
本站总浏览量 :
最后更新时间 :
© 2025 - 2026 By xhj框架 Hexo 8.1.2|主题 Butterfly 5.5.4