通义千问部署搭建

文章目录

  • 一、部署1
    • [1.1 打开通义千问-7B-预训练-模型库-选择资源](#1.1 打开通义千问-7B-预训练-模型库-选择资源)
    • [1.2 使用Netbook](#1.2 使用Netbook)
    • [2.1 运行](#2.1 运行)
    • [2.2 复制脚本](#2.2 复制脚本)
      • [2.2.1 问题1 :ImportError: This modeling file requires the following packages that were not found in your environment: transformers_stream_generator. Run `pip install transformers_stream_generator`](#2.2.1 问题1 :ImportError: This modeling file requires the following packages that were not found in your environment: transformers_stream_generator. Run pip install transformers_stream_generator)
    • [2.3 查看结果](#2.3 查看结果)
    • 3.其他作者的demo
    • [3.1 克隆代码](#3.1 克隆代码)
    • [3.2 加载依赖](#3.2 加载依赖)
    • [3.3 运行代码](#3.3 运行代码)
  • 二、部署2
    • [1.1 启动服务器](#1.1 启动服务器)
    • [1.2 使用官方提供的demo](#1.2 使用官方提供的demo)
    • [1.2 为了拉去大模型,更新LFS](#1.2 为了拉去大模型,更新LFS)
    • [2.1 拉千问模型文件](#2.1 拉千问模型文件)
    • [3.1 修改web.demo.py地址](#3.1 修改web.demo.py地址)
    • [4 运行](#4 运行)
    • [5 成功](#5 成功)
    • 5开启量化

部署参考视频

通义千问-7B-预训练-模型库

一、部署1

1.1 打开通义千问-7B-预训练-模型库-选择资源



1.2 使用Netbook

弹出新页面

2.1 运行

2.2 复制脚本

python 复制代码
from modelscope import AutoModelForCausalLM, AutoTokenizer
from modelscope import GenerationConfig
import datetime
print("启动时间:" + str(datetime.datetime.now()))
tokenizer = AutoTokenizer.from_pretrained("qwen/Qwen-7B-Chat", revision = 'v1.0.5',trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained("qwen/Qwen-7B-Chat", revision = 'v1.0.5',device_map="auto",offload_folder="offload_folder", trust_remote_code=True,fp16 = True).eval()
model.generation_config = GenerationConfig.from_pretrained("Qwen/Qwen-7B-Chat",revision = 'v1.0.5', trust_remote_code=True) # 可指定不同的生成长度、top_p等相关超参
model.float()

print("开始执行:" + str(datetime.datetime.now()))
response, history = model.chat(tokenizer, "你好", history=None)
print(response)
print("第一个问题处理完毕:" + str(datetime.datetime.now()))
response, history = model.chat(tokenizer, "浙江的省会在哪里?", history=history) 
print(response)
print("第二个问题处理完毕:" + str(datetime.datetime.now()))
response, history = model.chat(tokenizer, "它有什么好玩的景点", history=history)
print(response)
print("第三个问题处理完毕:" + str(datetime.datetime.now()))


2.2.1 问题1 :ImportError: This modeling file requires the following packages that were not found in your environment: transformers_stream_generator. Run pip install transformers_stream_generator

解决方法
pip install transformers_stream_generator



这就好了,重新运行下

ValueError: The current device_map had weights offloaded to the disk. Please provide an offload_folder for them. Alternatively, make sure you have safetensors installed if the model you are using offers the weights in this format.

参照这哥们的

https://zhuanlan.zhihu.com/p/649272911

2.3 查看结果

3.其他作者的demo

3.1 克隆代码

git clone https://gitee.com/JokerBao/Qwen-7B-FastWeb.git

3.2 加载依赖

bash 复制代码
pip install -r requirements.txt

3.3 运行代码

bash 复制代码
python Qwen_demo.py




二、部署2

1.1 启动服务器

1.2 使用官方提供的demo

拉代码

bash 复制代码
git clone https://github.com/QwenLM/Qwen-7B.git

1.2 为了拉去大模型,更新LFS

bash 复制代码
apt-get update


bash 复制代码
apt-get install git-lfs

2.1 拉千问模型文件

bash 复制代码
git clone https://www.modelscope.cn/qwen/Qwen-7B-Chat.git

初始化一下

2.1.1模型下载成功

2.1.2 安装依赖

为了方便我把模型移动到一开始的文件夹里面

bash 复制代码
pip install -r requirements.txt

也可以使用web依赖

bash 复制代码
pip install -r requirements_web_demo.txt

3.1 修改web.demo.py地址

然后ctrl+s 保存

4 运行

bash 复制代码
 python web_demo.py 

5 成功

5开启量化

bash 复制代码
pip install bitsandbytes

添加依赖

bash 复制代码
from transformers import BitsAndBytesConfig
import torch

添加

bash 复制代码
quantization_config = BitsAndBytesConfig(
            load_in_4bit=True,
            bnb_4bit_quant_type='nf4',
            bnb_4bit_compute_dtype=torch.bfloat16)


相关推荐
学测绘的小杨14 小时前
CompassFusion:一个从 GNSS 到 GNSS/INS 组合导航的独立工程包
python
zzzzzz31020 小时前
当产品经理说这个很简单:我用Python自动化处理奇葩需求的实战指南
python·pycharm·产品经理
雪隐21 小时前
个人电脑玩AI-06让5060 Ti给你打工——不光能画画,Qwen3-TTS还能学人说话,连我老板都信了!
人工智能·后端·python
兵慌码乱1 天前
面向桌面端的资产管理系统分层架构设计与核心模块实现
python·系统架构·sqlite·pyqt5·数据库设计·桌面应用开发·mvc架构
hboot1 天前
AI工程师第三课 - 机器学习基础
python·scikit-learn·kaggle
星始流年2 天前
从 Tool 到 Skill——基于 LangChain 的服务端Skill实现
前端·langchain·agent
顾林海2 天前
Agent入门阶段-编程基础-Python:流程控制
python·agent·ai编程
呱呱复呱呱2 天前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django
曲幽2 天前
刚部署的 LibreTranslate 频频翻车?我掏出了 20 年前的 StarDict 词典,用 FastAPI 搭了个本地词典翻译 API
python·fastapi·web·translate·goldendict·libretranslate·stardict·pystardict
荣码2 天前
用Streamlit给AI应用套个界面,10行代码出Web页面
java·python