一文从零部署vLLM+qwen0.5b(mac本地版,不可以实操GPU单元)

第一步:下载anaconda for mac

https://zhuanlan.zhihu.com/p/350828057 知乎保姆级教程

https://www.anaconda.com/docs/getting-started/anaconda/install#macos-linux-installation 下载地址

第二步:部署vllm的虚拟环境

https://www.53ai.com/news/OpenSourceLLM/2025040116542.html

注意⚠️ vllm不支持python 3.13及以上版本,所以配置时得指定

https://docs.vllm.ai/en/latest/getting_started/installation/gpu.html

conda create -n usingvllm python=3.10 jupyter

conda activate usingvllm

git clone https://github.com/vllm-project/vllm.git 已经clone

pip install torch torchvision

一次性安装所有 vLLM 的依赖

pip install -e .

如果报了error可能是没有install成功。

检查

du -sh ~/.cache/huggingface/hub/models--tiiuae--falcon-7b-instruct

删除

rm -rf ~/.cache/huggingface/hub/models--tiiuae--falcon-7b-instruct

第三步:从offline_inference+qwen3入手

快速开始:本地推理从examples/offline_inference/basic/basic.py开始

● LLM 是用于运行 vLLM 引擎离线推理的主类。

● SamplingParams 指定了采样过程的参数。

sampling_params = SamplingParams(temperature=0.8, top_p=0.95)

● 采样温度(输出的随机程度):越小越保守(0.1),越高越创造性(1.0-1.2)

● 核心采样概率top_p(nucleus sampling):采样时候选词概率总和,表示模型会从累计概率为前 95% 的候选词中选一个(对比top-k 选前k个词)

llm = LLM(model="facebook/opt-125m")

● 模型从https://huggingface.co/Qwen/Qwen3-0.6B

在线服务从examples/online_serving/openai_completion_client.py开始

第四步:本地跑serve出错及解决

Load and run the model:

vllm serve "Qwen/Qwen3-0.6B"

● 解决------不选择默认的=4,调整最大maxlen:

export VLLM_CPU_KVCACHE_SPACE=8

vllm serve "Qwen/Qwen3-0.6B" --max-model-len 2048

已上在vsc部署成功(约等于把自己电脑当成服务器了)

另起终端

//Call the server using curl:

curl -X POST "http://localhost:8000/v1/chat/completions"

-H "Content-Type: application/json"

--data '{

"model": "Qwen/Qwen3-0.6B",

"messages": [

{

"role": "user",

"content": "What is the capital of France?"

}

]

}'

输出:

对应"服务器"输出:即为部署成功。

分析:

  1. WARNING cpu.py:248 Pin memory is not supported on CPU.使用的是 CPU 环境(Mac M3 Pro 无 CUDA),这个警告是预期的,不会影响结果,只是说不能做 pinned memory 提速(只有 GPU 可用)。
  2. INFO metrics.py:417 Avg prompt throughput: 3.0 tokens/s
    INFO metrics.py:417 Avg generation throughput: 10.5 tokens/s
    模型每秒处理平均 3 个 prompt token,生成 token 平均 10.5 个/s,对于 Mac CPU 跑的模型来说,这个速度是完全合理的(0.6B 的 Qwen 模型)
  3. INFO: 127.0.0.1:58210 - "POST /v1/chat/completions HTTP/1.1" 200 OK
    响应状态码 200,说明接口调用完全成功,用 curl 或 Python requests.post() 调用的 API 得到了返回结果
相关推荐
老金带你玩AI1 小时前
ChatGPT dots,到底能替你操多少心?
人工智能
AliCloudROS2 小时前
计算巢 X DeepSeek Harness — 云端智能体工作台
人工智能·阿里云
深蓝AI2 小时前
GitHub的Push一年涨4.9倍:AI Agent为什么逼它重做Git存储?
人工智能·github
stereohomology2 小时前
大模型的观点谨:StoryTold 「Crafting Apps」四件套 · 深度总览
人工智能·llm
运维行者_3 小时前
网络性能监控怎么做?从自动发现到根因分析的4个环节
运维·服务器·网络·人工智能·支持向量机
Su米苏3 小时前
Spring AI 中MCP 与普通 @Tool的区别
java·人工智能·spring
美狐美颜sdk3 小时前
直播APP源码可以直接接入视频美颜sdk吗?技术方案详解
android·人工智能·音视频·美颜sdk·直播美颜sdk
问商十三载3 小时前
AI引擎生成式优化实践:刑事辩护律师团队IP构建
大数据·人工智能
冬奇Lab3 小时前
LLM 驱动的自动化测试系列(08):移动端自动化(四)——AppAgent:解析树与视觉特征的结合
人工智能·测试