一文从零部署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 得到了返回结果
相关推荐
草莓熊Lotso1 小时前
Linux 文件描述符与重定向实战:从原理到 minishell 实现
android·linux·运维·服务器·数据库·c++·人工智能
Coder_Boy_2 小时前
技术发展的核心规律是「加法打底,减法优化,重构平衡」
人工智能·spring boot·spring·重构
会飞的老朱4 小时前
医药集团数智化转型,智能综合管理平台激活集团管理新效能
大数据·人工智能·oa协同办公
聆风吟º6 小时前
CANN runtime 实战指南:异构计算场景中运行时组件的部署、调优与扩展技巧
人工智能·神经网络·cann·异构计算
Codebee8 小时前
能力中心 (Agent SkillCenter):开启AI技能管理新时代
人工智能
聆风吟º8 小时前
CANN runtime 全链路拆解:AI 异构计算运行时的任务管理与功能适配技术路径
人工智能·深度学习·神经网络·cann
uesowys8 小时前
Apache Spark算法开发指导-One-vs-Rest classifier
人工智能·算法·spark
AI_56788 小时前
AWS EC2新手入门:6步带你从零启动实例
大数据·数据库·人工智能·机器学习·aws
User_芊芊君子8 小时前
CANN大模型推理加速引擎ascend-transformer-boost深度解析:毫秒级响应的Transformer优化方案
人工智能·深度学习·transformer
未来侦察班9 小时前
一晃13年过去了,苹果的Airdrop依然很坚挺。
macos·ios·苹果vision pro