当前位置: 首页 > ai >正文

一文从零部署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 得到了返回结果
http://www.xdnf.cn/news/20008.html

相关文章:

  • 为什么要用VR全景?5个答案告诉你
  • 用户眼中的VR自来水厂之旅
  • 【Android】Room数据库的使用
  • Linux系统TCP/IP网络参数优化
  • 在Unity中实现DTLN-AEC处理音频文件的功能
  • 【论文阅读】Security of Language Models for Code: A Systematic Literature Review
  • 深度学习篇---pytorch数据集
  • 【Python】数据可视化之核密度
  • 【RNN-LSTM-GRU】第二篇 序列模型原理深度剖析:从RNN到LSTM与GRU
  • 关于Spring的八股
  • vector 题目练习 算法代码分析 代码实现
  • 鸿蒙NEXT交互机制解析:从输入设备到手势响应的全面指南
  • 深度学习-----修改学习率来优化模型的几个方法
  • redis的hash表如何扩容
  • Web与Nginx网站服务
  • 2025数学建模国赛高教社杯A题思路代码文章助攻
  • 【CS32L015C8T6】配置单片机PWM输出(内附完整代码及注释)
  • rh134第二章复习总结
  • 0904 类的继承
  • 【前端:Html】--5.进阶:APIs
  • 遇享会—金湾读书会—第四期—你好,陌生人——20250823
  • 【FPGA】单总线——DS18B20
  • 单向链表的一些基本操作(Java)
  • Python可视化93阅兵武器进化
  • Git常用命令大全:高效开发必备
  • 基于SpringBoot的家政保洁预约系统【2026最新】
  • CSDN 与 掘金 高效学习指南
  • 微信支付--在线支付实战,引入Swagger,定义统一结果,创建并连接数据库
  • [Linux] Linux标准块设备驱动详解:从原理到实现
  • 2025年数学建模国赛E题超详细解题思路