微信扫码
添加专属顾问
我要投稿
探索大模型部署的多种选择,了解Ollama、vLLM和LMDeploy的不同优势。 核心内容: 1. 介绍Ollama、vLLM和LMDeploy三款大模型部署工具 2. 分析它们的适用场景和核心功能 3. 比较企业级部署中vLLM和LMDeploy的活跃度和优势
一、Ollama、vLLM 和 LMDeploy介绍
Ollama、vLLM 和 LMDeploy 都是与大语言模型相关的工具或框架,以下是它们的具体介绍:
Ollama
简介:一个轻量级的模型托管框架,可在本地环境中运行和管理 LLM 模型。基于 Go 语言开发,集成了模型管理与交互界面,采用 MIT 许可。
适用场景:适用于个人开发者测试、教育场景以及轻量应用,比如在 MacBook Pro(M3 芯片)等移动设备上调试,快速构建原型应用,或者在树莓派 5 + 外置 GPU 扩展坞等低功耗场景下使用。
vLLM
简介4:高效的大型语言模型推理和部署框架,由加州大学伯克利分校开发,采用 Apache 2.0 许可,以 Python/PyTorch 为基础,优化了显存管理与批处理。
适用场景:适用于高并发在线服务,如智能客服、批量生成等场景,以及单节点多 GPU 推理或中小规模云原生部署,对社区模型(如 LLaMA 系列)兼容性更优。
LMDeploy
LMDeploy 是一个高效且友好的 LLMs 模型部署工具箱,功能涵盖了量化、推理和服务。上海一家企业开发。LMDeploy 工具箱提供以下核心功能:
高效的推理: LMDeploy 开发了 Persistent Batch(即 Continuous Batch),Blocked K/V Cache,动态拆分和融合,张量并行,高效的计算 kernel等重要特性。推理性能是 vLLM 的 1.8 倍
可靠的量化: LMDeploy 支持权重量化和 k/v 量化。4bit 模型推理效率是 FP16 下的 2.4 倍。量化模型的可靠性已通过 OpenCompass 评测得到充分验证。
便捷的服务: 通过请求分发服务,LMDeploy 支持多模型在多机、多卡上的推理服务。
有状态推理: 通过缓存多轮对话过程中 attention 的 k/v,记住对话历史,从而避免重复处理历史会话。显著提升长文本多轮对话场景中的效率。
卓越的兼容性: LMDeploy 支持 KV Cache 量化, AWQ 和 Automatic Prefix Caching 同时使用。
二、Ollama部署大模型
ollama一般是在个人电脑、服务器显存等配置较低的环境中,部署量化后的大模型。部署简单,但大模型都是量化后的(阉割版),其效果不怎么好。所以,一般来说,企业中不会采用Ollama部署大模型。
下载和安装
下载地址:https://ollama.com/
服务器环境:支持windows,Linux,MacOS 。Linux服务器首推 Ubuntu 。
windows环境的部署方法请看文章《DeepSeek本地安装太简单了,人人都会操作》
三、vLLM部署大模型
vLLM和LMDeploy是企业级部署大模型最常用的。 社区都很活跃。vLLM对服务器显存版本有很高的要求。
官网文档:
https://docs.vllm.ai/en/latest/
中文文档(非官方):
https://vllm.hyper.ai/docs/getting-started/installation
cuda要求
vLLM contains pre-compiled C++ and CUDA (12.1) binaries.
软件环境要求
OS: Linux
Python: 3.9 – 3.12
GPU: compute capability 7.0 or higher (e.g., V100, T4, RTX20xx, A100, L4, H100, etc.)
创建Python环境
#Create a new conda environment.conda create -n vllm python=3.12 -yconda activate vllm
安装vLLM
#Install vLLM with CUDA 12.4.pip install vllm # If you are using pip.
运行本地大模型
1、下载NLP大模型。
推荐大模型 qwen,llama,glm 。我们拿qwen2.5-0.5b来做测试。使用python语言调用模塔社区的大模型。
大模型网址:
https://modelscope.cn/models/Qwen/Qwen2.5-0.5B-Instruct/
# pip install modelscope#模型下载到本地。from modelscope import snapshot_downloadmodel_dir = snapshot_download('Qwen/Qwen2.5-0.5B-Instruct',cache_dir="/root/autodl-tmp/llm")
cache_dir一定要指定绝对路径。
2、vLLM运行大模型
sh命令:
vllm serve /root/autodl-tmp/llm/Qwen/Qwen2.5-0.5B-Instruct
测试:
from openai import OpenAIclient = OpenAI( base_url="http://localhost:8000/v1", api_key="token-abc123",)completion = client.chat.completions.create( model="/root/autodl-tmp/llm/Qwen/Qwen2.5-0.5B-Instruct", messages=[ {"role": "user", "content": "请使用java编写冒泡排序!"} ])print(completion.choices[0].message)
其中vLLM的端口号是8000,model的值为模型的绝对路径。
四、LMDeploy部署大模型
LMDeploy是后起之秀,个人非常推荐这款软件。功能全面强大,符合国人使用习惯。对硬件的要求比vLLM低。
github地址:
https://github.com/InternLM/lmdeploy
官方文档:
https://lmdeploy.readthedocs.io/zh-cn/latest/
安装LMDeploy
conda create -n lmdeploy python=3.8 -yconda activate lmdeploypip install lmdeploy
运行本地大模型
sh命令:
pip install partial_json_parser
lmdeploy serve api_server /root/autodl-tmp/llm/Qwen/Qwen2.5-0.5B-Instruct --server-port 23333
--server-port 23333 指明端口号是23333 ,大模型路径要是绝对路径。
api_server 启动时的参数可以通过命令行lmdeploy serve api_server -h查看。 比如,--tp 设置张量并行,--session-len 设置推理的最大上下文窗口长度,--cache-max-entry-count 调整 k/v cache 的内存使用比例等等。
五、使用远程算力服务器
一般来说,我们都会使用算力云服务器进行部署大模型,以及训练、微调大模型。而本地的开发工具一般推荐使用VSCode 。VSCode有一个特强好用的端口转发功能,方便将服务器上的端口映射到本地。
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2025-04-02
一文看懂预训练、微调和上下文学习
2025-04-02
将复杂HTML变成AI易读Markdown | MCP精选集
2025-04-02
我让DeepSeek设计了一个智能运维平台 -- 如何做数据准备和模型训练
2025-04-02
微调大模型!ModelScope 算力,实现Qwen2.5微调模型
2025-04-01
Cursor是越来越难用了!逼着我写mdc文档比代码还多
2025-04-01
Docker部署Dify+RAGFlow避坑指南
2025-04-01
大型语言模型如何高效微调量化?答案就是 QLoRA!
2025-04-01
LLaMA Factory微调后的大模型在vLLM框架中对齐对话模版
2025-02-04
2025-02-04
2024-09-18
2024-07-11
2024-07-09
2024-07-11
2024-07-26
2025-02-05
2025-01-27
2025-02-01
2025-04-01
2025-03-31
2025-03-20
2025-03-16
2025-03-16
2025-03-13
2025-03-13
2025-03-11