大模型笔记之-3090单卡推理Qwen1.5-32B-Chat-AWQ

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

随着大模型不断发展,各家推出的模型,指标越来越接近,推理成本也大幅降低(阿里Qwen,文心一言,智普 ChatGLM都在降价),个人玩家只需要找到一个最适合自己的开源模型部署即可,写了这么多篇大模型笔记了,今天写一Qwen32B-AWQ收个尾。

  • 先说结论Qwen1.5-32B-Chat-AWQ跑在3090上完全满足我的需求

一、模型下载

#使用魔搭下载,首先安装依赖
pip install modelscope 
#新建download.py 填入下面内容,注意!! 替换cache_dir 为你的工作目录,模型文件将下载至这个位置
from modelscope import snapshot_download 
model_dir = snapshot_download('qwen/Qwen1.5-32B-Chat-AWQ',cache_dir='/root/workspace')

二、使用vLLM推理

#1.此安装默认使用CUDA 12.1
pip install vllm
#2.您也可以使用环境变量指定安装版本。下面摘自vllm官方文档
# Install vLLM with CUDA 11.8.
export VLLM_VERSION=0.4.0
export PYTHON_VERSION=39
pip install https://github.com/vllm-project/vllm/releases/download/v${VLLM_VERSION}/vllm-${VLLM_VERSION}+cu118-cp${PYTHON_VERSION}-cp${PYTHON_VERSION}-manylinux1_x86_64.whl --extra-index-url https://download.pytorch.org/whl/cu118
#3.您还可以下载适合的安装包离线安装,
#地址https://github.com/vllm-project/vllm/releases
#下面这个安装包使用python3.10 和 cuda11.8
pip install vllm-0.4.1+cu118-cp310-cp310-manylinux1_x86_64.whl

三、运行模型

python -m vllm.entrypoints.openai.api_server \
--model /root/workspace/qwen/Qwen1.5-32B-Chat-AWQ \ 
--quantization=awq \
--enforce-eager \
--host 0.0.0.0 \
--port 8000 \
--served-model-name Qwen1.5-32B-Chat \
--max-model-len 5000 \
--gpu-memory-utilization 0.99

显存占用

在这里插入图片描述

请求测试

curl --location --request POST 'http://0.0.0.0:8000/v1/chat/completions' \
--header 'Content-Type: application/json' \
--data-raw '{ 
  "model": "Qwen1.5-32B-Chat",
  "messages": [
    { "role": "system", "content": "你的角色定位是双重的,首先你是一个高效的文本处理引擎,你的核心任务是依据用户的指令生成精确的输出。其次,你是一名专业的文案策划与编辑,你的职责是根据用户提供的文字主题,创作出一份详尽的文案大纲。这份大纲应包含以下结构:主要的\"heading\"(主标题),明确的\"sub\"(副标题),以及由六个部分组成的\"items\"(章节)。每个章节须有一个独特的\"title\"(章节标题),并 underneath 这个章节标题下,有四个详细的\"projects\"(项目)。请注意,这份大纲必须且只能以JSON格式提供,且务必符合预设的JSON schema,以保证信息的准确性和一致性。"},
    { "role": "user", "content": "制作咖啡<" }
  ]
}'

预期响应

{
    "id": "cmpl-5c0cd052a25e4b97a347760d31f0f8e4",
    "object": "chat.completion",
    "created": 1716282077,
    "model": "Qwen1.5-32B-Chat",
    "choices": [
        {
            "index": 0,
            "message": {
                "role": "assistant",
                "content": "```json\n{\n  \"heading\": \"咖啡制作艺术\",\n  \"sub\": \"从豆到杯的完美旅程\",\n  \"items\": [\n    {\n      \"title\": \"选择咖啡豆\",\n      \"projects\": [\n        {\n          \"name\": \"咖啡种类\",\n          \"description\": \"了解阿拉比卡、罗布斯塔和利比里卡咖啡豆的特性\",\n          \"steps\": [\n            \"研究不同种类咖啡豆的味道\",\n            \"购买高质量的咖啡豆\"\n          ],\n          \"resources\": [\n            \"咖啡豆品种指南\"\n          ]\n        },\n        {\n          \"name\": \"新鲜度\",\n          \"description\": \"确保咖啡豆的新鲜度,影响口感的关键\",\n          \"steps\": [\n            \"购买小包装,避免长期存储\",\n            \"购买后两周内使用完\"\n          ],\n          \"resources\": [\n            \"咖啡豆储存方法\"\n          ]\n        }\n      ]\n    },\n    {\n      \"title\": \"咖啡研磨\",\n      \"projects\": [\n        {\n          \"name\": \"研磨程度\",\n          \"description\": \"根据冲泡方式调整研磨粗细\",\n          \"steps\": [\n            \"了解法压壶、意式浓缩咖啡机等设备对应的研磨度\",\n            \"购买可调研磨机,调整研磨粒度\"\n          ],\n          \"resources\": [\n            \"咖啡研磨程度指南\"\n          ]\n        },\n        {\n          \"name\": \"研磨时机\",\n          \"description\": \"现磨咖啡豆,保留最大风味\",\n          \"steps\": [\n            \"冲泡前才研磨咖啡豆\",\n            \"避免长时间暴露在空气中\"\n          ],\n          \"resources\": [\n            \"研磨咖啡的最佳实践\"\n          ]\n        }\n      ]\n    },\n    {\n      \"title\": \"冲泡技巧\",\n      \"projects\": [\n        {\n          \"name\": \"水温控制\",\n          \"description\": \"理想的水温对提取咖啡风味至关重要\",\n          \"steps\": [\n            \"了解不同冲泡方式的适宜水温\",\n            \"使用温度计精准控制水温\"\n          ],\n          \"resources\": [\n            \"水温对咖啡冲泡的影响\"\n          ]\n        },\n        {\n          \"name\": \"水量与粉量\",\n          \"description\": \"找到最佳比例,展现咖啡最佳风味\",\n          \"steps\": [\n            \"实验不同比例,记录口感变化\",\n            \"找到个人偏好比例\"\n          ],\n          \"resources\": [\n            \"咖啡粉水比例指南\"\n          ]\n        }\n      ]\n    },\n    {\n      \"title\": \"设备维护\",\n      \"projects\": [\n        {\n          \"name\": \"咖啡机清洁\",\n          \"description\": \"保持设备清洁,保证咖啡口感\",\n          \"steps\": [\n            \"定期清洗咖啡机\",\n            \"使用专用清洁剂\"\n          ],\n          \"resources\": [\n            \"咖啡机清洁方法\"\n          ]\n        },\n        {\n          \"name\": \"设备保养\",\n          \"description\": \"延长设备寿命,保持最佳状态\",\n          \"steps\": [\n            \"参考设备说明进行定期维护\",\n            \"适时更换磨损零件\"\n          ],\n          \"resources\": [\n            \"咖啡设备保养指南\"\n          ]\n        }\n      ]\n    },\n    {\n      \"title\": \"品尝与调整\",\n      \"projects\": [\n        {\n          \"name\": \"咖啡品鉴\",\n          \"description\": \"学习如何品尝和评价咖啡\",\n          \"steps\": [\n            \"注意观察咖啡的色泽、香气和口感\",\n            \"记录咖啡的风味特征\"\n          ],\n          \"resources\": [\n            \"咖啡品鉴基础知识\"\n          ]\n        },\n        {\n          \"name\": \"个性化调整\",\n          \"description\": \"根据个人口味调整冲泡参数\",\n          \"steps\": [\n            \"根据品鉴结果微调水温、粉量等参数\",\n            \"尝试不同的冲泡方法\"\n          ],\n          \"resources\": [\n            \"个性化咖啡冲泡指南\"\n          ]\n        }\n      ]\n    },\n    {\n      \"title\": \"咖啡文化\",\n      \"projects\": [\n        {\n          \"name\": \"咖啡历史\",\n          \"description\": \"了解咖啡的起源和发展\",\n          \"steps\": [\n            \"阅读咖啡历史书籍\",\n            \"参观咖啡博物馆\"\n          ],\n          \"resources\": [\n            \"世界咖啡历史\"\n          ]\n        },\n        {\n          \"name\": \"咖啡社区\",\n          \"description\": \"加入咖啡爱好者社区,分享交流\",\n          \"steps\": [\n            \"参与线上咖啡论坛\",\n            \"参加线下咖啡聚会\"\n          ],\n          \"resources\": [\n            \"全球咖啡爱好者社区列表\"\n          ]\n        }\n      ]\n    }\n  ]\n}\n```"
            },
            "logprobs": null,
            "finish_reason": "stop",
            "stop_reason": null
        }
    ],
    "usage": {
        "prompt_tokens": 165,
        "total_tokens": 1129,
        "completion_tokens": 964
    }
}

总结

以上就是今天要讲的内容,本文详细记录了如何用一张3090 使用vLLM框架推理起Qwen1.5-32B-Chat-AWQ。本篇为大模型笔记的最后一篇!

彩蛋

  • Qwen2 就快要发布了
  • 大模型笔记10篇,完结撒花!
  • 文心一言免费开放两个模型
  • 使用ernie-4.0作为替代kimi API不能联网

欢迎移步我的Github仓库,https://github.com/Jun-Howie/erniebot-openai-api
本仓库使用飞桨星河社区接入ernie-4.0联网功能,如果你需要可以Fork我的仓库,还请给个Star让我知道

写在最后

感谢一年多以来,开源社区各路大佬对我的帮助,让我从一个Java民工转方向成为大模型资深小白,由于工作变动,后续还是会以Java应用方向为主。
在这里插入图片描述

  • 7
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Harvey-J

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值