前言

圈子里有人去字节面试,被问了一道看起来简单、实际很容易答浅的题:

👔 你们线上推理为啥用 vLLM 不用 Ollama?

他想了想,答:“因为 vLLM 性能强,大家用的多。”

面试官没说话,接着追问:“优势在哪?短板在哪?PagedAttention 解决了什么?什么场景反而不该选 vLLM?”

他顿时有点懵。

这道题的坑在于,它不是一道"比谁强"的题,而是一道场景判断题。 面试官想听的,不是你背一句"vLLM 性能好",而是你能不能结合业务场景做选型判断——什么场景该选 vLLM,什么场景 Ollama 更合适,各自的边界在哪。

读完这篇文章,你能搞明白:

  • 为什么这道题是场景题不是性能题

    ——选型的核心是业务匹配度

  • Ollama 的设计边界

    ——轻量优先的代价是高并发能力缺失

  • vLLM 的核心优势

    ——PagedAttention + 连续批处理 + 生态兼容

  • PagedAttention 到底解决了什么

    ——KV Cache 碎片化问题

  • 同类推理框架横向对比

    ——TGI、TensorRT-LLM、SGLang 各自定位

  • 面试话术三层模板

    ——60 分答法和 90 分答法的差距在哪

不管你是做 LLM 推理服务部署的工程师,还是需要在面试里讲清推理框架选型的开发者,这道题都值得提前想清楚。开拆!

一、这道题的坑:不是比谁强,是看场景判断

先说清楚这道面试题的本质。它根本不是让你单纯说哪个工具更好——很多人都容易踩这个坑,张嘴就是"vLLM 大家用的多,而且性能好"。这么浅的回答很难让面试官满意。

核心是看你能不能结合业务场景做判断

判断逻辑其实很明确:

  • 面向外部用户、要保障 SLA 稳定的线上生产服务

    → 优先选 vLLM

  • 只是本地开发调试、跑 Demo 做验证、公司内部小范围使用

    → Ollama 完全够用,而且更省心

二者谈不上谁碾压谁,只是适配的使用场景不一样。Ollama 主打"帮你快速把模型跑起来",满足日常开发自用;vLLM 是"扛住高并发、稳住线上服务"的靠谱选择。选型从来不是单纯比工具性能,更多还是看自身业务的流量规模、稳定性要求,匹配最合适的方案就够了。

二、Ollama:轻量优先,牺牲高并发

Ollama 最大的亮点就是上手门槛极低,敲一条命令就能拉起大模型,日常本地测试、快速验证想法真的特别方便。

但它也有自己的设计局限:

  • 调度逻辑偏顺序执行

    ,没有专门为高并发做批处理优化。

  • 显存管理做得比较粗放

    ,没有精细的分页机制。

  • 一旦并发请求多起来,等待队列很快就会积压,响应延迟直接从毫秒级涨到秒级。

  • 情况严重的时候还会出现 OOM 内存溢出。

这不能算它的缺点,只能说是产品本身的设计边界——主打轻便就牺牲了高并发能力。Ollama 的目标用户是开发者和研究者,不是线上服务运维,拿它扛生产流量是用错了场景。

三、vLLM 的核心优势:PagedAttention 与连续批处理

vLLM 大概是 2023 年伯克利团队推出来的,相关论文发在了系统顶会 SOSP 上,最核心的亮点就是 PagedAttention——很多面试都会深挖这个知识点。

简单解释下,它借鉴了操作系统虚拟内存的分页思路,用非连续分页的方式管理 KV Cache,从根源上缓解了显存碎片化的难题。也正是靠着这个基础,实现了连续批处理和动态批处理——不同长度、不同状态的请求可以放在同一批次并行处理。

实际落地感受下来(差距真的挺明显),同等硬件配置下,vLLM 的吞吐量能翻几倍甚至十几倍,延迟波动也更小,整体服务稳定性靠谱很多。

此外,vLLM 原生兼容 OpenAI 接口规范,支持流式输出、多模型调度,还能无缝对接 K8s、Prometheus 这些云原生组件,正式上线的部署成本也不算高。这也是为什么大多数线上推理服务首选 vLLM——它不只是一个推理引擎,而是一套完整的生产级推理基础设施。

四、同类框架对比:TGI、TensorRT-LLM、SGLang

面试时经常会被追问:"除了 vLLM 还有哪些生产级推理框架?"这里提一嘴 TGI 就很加分。

TGI(Text Generation Inference) 是 Hugging Face 出的,同样是主打生产部署,和 HuggingFace 自家模型库适配得更紧密。相对来说,vLLM 在超长上下文显存调度、GPTQ、AWQ 这类量化推理的更新迭代上更主动,社区更新和讨论热度也会更高一些。TGI 本身也很成熟,只是侧重点不一样。

其他常见的推理框架:

  • TensorRT-LLM

    :NVIDIA 官方出品,基于 TensorRT 做了大模型推理优化,极致性能但配置门槛高,和 NVIDIA 硬件绑定深。

  • llama.cpp

    :C++ 实现的轻量推理引擎,主打 CPU/GPU 混合推理,适合没有高端 GPU 的场景,和 Ollama 定位类似但更底层。

  • SGLang

    :新兴框架,在结构化生成和复杂 prompting 场景下有独特优势,社区活跃度上升很快。

选型时不要只盯着 vLLM,根据团队技术栈和硬件资源横向对比。面试官提一句"还有 TGI、TensorRT-LLM、SGLang 等选项",立刻从"只知道一个工具"升级到"了解整个推理框架生态"。

五、PagedAttention 到底解决了什么

面试官深挖 PagedAttention 时,核心想听的是你对"它到底解决了什么问题"的理解。

传统推理框架分配 KV Cache 时,都要提前预留连续显存空间。但不同请求的文本长度差异很大,很容易产生大量显存碎片,硬件利用率一直上不去。

PagedAttention 的解法是把 KV Cache 拆成固定大小的内存页,按需分配调用,逻辑和电脑虚拟内存管理差不多。这样做有两个直接好处:

  1. 显存利用率大幅提升

    :不再需要为每个请求预留一大块连续空间,碎片化问题从根本上缓解。

  2. 为动态批处理打下基础

    :因为 KV Cache 是分页管理的,不同请求的 KV Cache 可以灵活地在显存里"拼贴",这才让连续批处理和动态批处理成为可能——不同长度、不同状态的请求可以放在同一批次并行处理。

弄懂这个原理,面试基本就稳了。PagedAttention 不是"一个加速技巧",而是"一套显存管理范式的改变"——从"预分配连续空间"到"按需分页管理",这个范式转变才是 vLLM 性能优势的根基。

六、什么情况不选 vLLM

vLLM 算不上完美,配置起来比 Ollama 复杂不少,高度依赖 CUDA 环境,低配机器启动速度偏慢,出问题后的调试链路也更繁琐。

以下场景,我更推荐用 Ollama 而不是 vLLM:

  • 单机低并发的内部工具

    :只有几个内部用户用,并发量个位数,vLLM 的批处理优势根本发挥不出来,反而增加部署复杂度。

  • 临时做原型快速验证

    :今天搭起来明天可能就拆了,Ollama 一条命令拉起比 vLLM 配半天高效得多。

  • 没有 GPU 的开发环境

    :vLLM 高度依赖 CUDA,纯 CPU 环境下跑不起来或性能极差;Ollama 支持 CPU 推理,虽然慢但能用。

  • 团队运维人手不足,不想维护复杂部署链路

    :vLLM 涉及 GPU 驱动、CUDA 版本、模型量化、显存调优等一系列运维知识,人手不足的团队维护成本高。

这种场景下,Ollama 的成本和使用体验性价比更高。用对场景比用对工具更重要。

七、选型决策树:按四个维度做判断

把前面的分析整理成一个选型决策树,按四个维度做判断:

维度一:流量规模。

  • 高并发(>10 QPS)、面向外部用户 → vLLM
  • 低并发(<5 QPS)、内部使用 → Ollama
  • 中等并发、看情况 → 先 Ollama 跑着,流量上来再迁 vLLM

维度二:稳定性要求。

  • SLA 敏感(延迟 P99 < 500ms、可用性 > 99.9%) → vLLM,连续批处理保障延迟稳定
  • 容忍波动(延迟不敏感、可用性 95% 就行) → Ollama 够用

维度三:硬件资源。

  • 有 NVIDIA GPU(A100/H100/L40S 等) → vLLM,PagedAttention 需要 CUDA
  • 只有消费级 GPU(4090 等) → vLLM 能跑但要调参,或用 Ollama
  • 纯 CPU 环境 → Ollama,llama.cpp 也行

维度四:团队能力。

  • 有专职运维、懂 GPU/CUDA/K8s → vLLM,能发挥全部优势
  • 运维人手紧张、不想碰底层 → Ollama,省心
  • 有运维但想逐步上 → 先 Ollama 上线,同时让运维学 vLLM,择机迁移

这个决策树的核心思路是:先看流量和稳定性要求决定"要不要上生产级框架",再看硬件和团队能力决定"能不能上"。 两个维度都满足才选 vLLM,任何一个不满足就先用 Ollama 兜着。

八、从架构师视角看推理框架选型的几个工程取舍

讲完框架对比和选型决策树,从架构师视角看几个推理框架选型的工程取舍。

取舍一:vLLM vs TensorRT-LLM——开源生态 vs 极致性能。 vLLM 开源、社区活跃、迭代快,适合想跟最新研究进展的团队;TensorRT-LLM 是 NVIDIA 官方出品,在 NVIDIA 硬件上性能极致,但配置门槛高、和硬件绑定深。选 vLLM 是选"生态和灵活性",选 TensorRT-LLM 是选"在 NVIDIA 硬件上榨干性能"。如果团队全是 A100/H100 且追求极致吞吐,TensorRT-LLM 值得评估;否则 vLLM 的综合性价比更高。

取舍二:量化方案——GPTQ vs AWQ vs FP16。 vLLM 支持 GPTQ 和 AWQ 两种主流量化方案。GPTQ 是训练后量化,精度损失稍大但通用性强;AWQ 是激活感知量化,精度保持更好但需要校准数据。FP16 不量化,精度最高但显存占用最大。工程上,显存紧张选 AWQ(精度和体积平衡),显存充裕选 FP16(不折腾),GPTQ 作为兜底。面试提一句"vLLM 在量化推理的更新迭代上比 TGI 主动",是加分项。

取舍三:部署模式——单机 vs 分布式。 vLLM 单机部署简单,但扛不住大规模流量;分布式部署(多节点 + 负载均衡)能扛高并发但运维复杂度高。判断标准:QPS < 50 单机够用(一张 A100 跑 7B 模型能扛 30-50 QPS);QPS > 100 必须分布式。分布式部署的关键不是 vLLM 本身,而是前面的负载均衡策略——按请求长度路由(短请求走一批节点,长请求走另一批)比简单 round-robin 更高效。

取舍四:Ollama 作为开发环境 vs vLLM 作为生产环境——双轨制。 很多团队的做法是:开发用 Ollama(快、省心),生产用 vLLM(稳、扛并发)。这种双轨制的好处是开发效率和生产稳定性都能兼顾,但要注意一个坑:开发环境(Ollama)和生产环境(vLLM)的模型行为可能有细微差异(量化精度、批处理行为、并发处理),上线前必须在 vLLM 环境做回归测试,不能只信 Ollama 上的测试结果。

取舍五:vLLM 的版本迭代节奏——追新 vs 稳定。 vLLM 社区更新极快,几乎每周都有新版本。追新能用到最新优化(新量化方案、新采样策略),但也可能踩坑(新版本引入的 regression);稳定(锁版本不更新)安全但错过性能优化。工程上建议:生产环境锁版本(每季度评估一次升级),开发环境追新(提前发现兼容性问题)。

取舍六:vLLM 的 GPU 利用率调优——默认参数 vs 精调。 vLLM 的默认参数(gpu_memory_utilization=0.9、max_num_seqs=256)对大多数场景够用,但特定场景需要精调。比如长上下文场景需要调低 max_num_seqs(否则显存不够),高吞吐短请求场景可以调高 max_num_seqs(提高批处理并行度)。调优的核心是监控 GPU 利用率——如果利用率低于 70% 说明批处理不够,高于 95% 说明快到瓶颈要注意 OOM 风险。

九、面试话术:考官想听的是什么

回到面试场景。这道题考的不是"你知不知道 vLLM",而是"你能不能结合场景做选型判断"。

常见错误回答一:无脑吹 vLLM。 “vLLM 性能强,大家都在用,Ollama 不行。”——这是零分。面试官想听的是场景判断,不是站队。

常见错误回答二:只讲优势不讲短板。 把 vLLM 夸一通,完全不提它的配置复杂度、CUDA 依赖、调试难度。面试官会觉得你对工具边界没认知。

高分答题模板:三层结构。

第一层(抛本质):“这道题的核心不是比谁强,是看场景。面向外部用户的线上服务选 vLLM,本地开发和内部工具选 Ollama,两者不是替代关系而是互补关系。”

第二层(讲优势+短板):“vLLM 的核心优势是 PagedAttention——借鉴 OS 虚拟内存的分页思路管理 KV Cache,解决了显存碎片化,在这基础上实现了连续批处理和动态批处理,同等硬件吞吐量翻几倍。它还原生兼容 OpenAI 接口,能对接 K8s 和 Prometheus。短板是配置复杂、高度依赖 CUDA、低配机器启动慢。”

第三层(升华):“选型看四个维度:流量规模(高并发选 vLLM)、稳定性要求(SLA 敏感选 vLLM)、硬件资源(有 NVIDIA GPU 选 vLLM)、团队能力(有运维选 vLLM)。四个维度都满足才选 vLLM,否则 Ollama 兜着。同类框架还有 TGI、TensorRT-LLM、SGLang,根据技术栈横向对比。”

60 分 vs 90 分对比:

追问点 60 分回答 90 分回答
“PagedAttention 解决了什么?” “管理显存” “KV Cache 碎片化——传统框架预留连续空间浪费大,PagedAttention 用分页管理按需分配,显存利用率提升+为动态批处理打基础”
“vLLM 有什么短板?” “配置复杂” “配置复杂、高度依赖 CUDA、低配机启动慢、调试链路繁琐;没 GPU 或运维人手不足时不如 Ollama”
“什么情况不选 vLLM?” “小项目” “单机低并发内部工具、临时原型验证、纯 CPU 环境、运维人手不足——这四个场景 Ollama 性价比更高”
“还有哪些推理框架?” “不知道” “TGI(HuggingFace)、TensorRT-LLM(NVIDIA 极致性能)、llama.cpp(CPU 轻量)、SGLang(结构化生成新秀)”

加分项提示: 如果你能主动提到"开发用 Ollama、生产用 vLLM 的双轨制,但上线前必须在 vLLM 环境做回归测试,因为两个环境的模型行为有细微差异",面试官会认为你有真实部署经验,而不是只读过文档。

总结

回到开头那道面试题。“为啥用 vLLM 不用 Ollama”——这道题之所以是大厂推理岗的高频题,是因为它一道题能考察三个层次:对工具边界认知、对核心原理(PagedAttention)的理解、对场景选型的判断力。

  • 这道题是场景题不是性能题

    :选型的核心是业务匹配度,不是工具性能排名。

  • Ollama 的设计边界

    :轻量优先,代价是高并发能力缺失——顺序调度、显存管理粗放、并发一多就 OOM。

  • vLLM 的核心优势

    :PagedAttention(分页管理 KV Cache)+ 连续批处理 + 动态批处理,吞吐量翻几倍到十几倍,原生兼容 OpenAI 接口,对接云原生生态。

  • PagedAttention 是显存管理范式的改变

    :从"预分配连续空间"到"按需分页管理",这才是 vLLM 性能优势的根基。

  • 选型决策树四维度

    :流量规模、稳定性要求、硬件资源、团队能力。两个维度都满足才选 vLLM。

  • 同类框架

    :TGI(HuggingFace)、TensorRT-LLM(NVIDIA 极致性能)、llama.cpp(CPU 轻量)、SGLang(结构化生成新秀)。

  • 面试话术三层结构

    :抛本质(场景题)→ 讲优势+短板 → 升华(四维度决策树)。60 分和 90 分的差距在短板和选型框架的具体度。

Ollama 主打帮你快速把模型跑起来,满足日常开发自用;vLLM 则是扛住高并发、稳住线上服务的靠谱选择。选型从来不是单纯比工具性能,更多还是看自身业务的流量规模、稳定性要求,匹配最合适的方案就够了。

学AI大模型的正确顺序,千万不要搞错了

🤔2026年AI风口已来!各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇直接摆在眼前!

有往AI方向发展,或者本身有后端编程基础的朋友,直接冲AI大模型应用开发转岗超合适!

就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋

在这里插入图片描述

📝给大家整理了超全最新的AI大模型应用开发学习清单和资料,手把手帮你快速入门!👇👇

学习路线:

✅大模型基础认知—大模型核心原理、发展历程、主流模型(GPT、文心一言等)特点解析
✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑
✅开发基础能力—Python进阶、API接口调用、大模型开发框架(LangChain等)实操
✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用
✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代
✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经

以上6大模块,看似清晰好上手,实则每个部分都有扎实的核心内容需要吃透!

我把大模型的学习全流程已经整理📚好了!抓住AI时代风口,轻松解锁职业新可能,希望大家都能把握机遇,实现薪资/职业跃迁~

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

Logo

免费领 150 小时云算力,进群参与显卡、AI PC 幸运抽奖

更多推荐