通义千问部署搭建

文章目录

  • 一、部署1
    • 1.1 打开通义千问-7B-预训练-模型库-选择资源
    • 1.2 使用Netbook
    • 2.1 运行
    • 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.3 查看结果
    • 3.其他作者的demo
    • 3.1 克隆代码
    • 3.2 加载依赖
    • 3.3 运行代码
  • 二、部署2
    • 1.1 启动服务器
    • 1.2 使用官方提供的demo
    • 1.2 为了拉去大模型,更新LFS
    • 2.1 拉千问模型文件
      • 2.1.1模型下载成功
      • 2.1.2 安装依赖
    • 3.1 修改web.demo.py地址
    • 4 运行
    • 5 成功
    • 5开启量化

部署参考视频

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

一、部署1

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

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.2 使用Netbook

在这里插入图片描述
弹出新页面
在这里插入图片描述

2.1 运行

在这里插入图片描述

2.2 复制脚本

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 加载依赖

pip install -r requirements.txt

在这里插入图片描述

3.3 运行代码

python Qwen_demo.py

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、部署2

1.1 启动服务器

在这里插入图片描述

1.2 使用官方提供的demo

拉代码

git clone https://github.com/QwenLM/Qwen-7B.git

在这里插入图片描述

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

apt-get update

在这里插入图片描述
在这里插入图片描述

apt-get install git-lfs

在这里插入图片描述

2.1 拉千问模型文件

git clone https://www.modelscope.cn/qwen/Qwen-7B-Chat.git

初始化一下
在这里插入图片描述

2.1.1模型下载成功

在这里插入图片描述

2.1.2 安装依赖

为了方便我把模型移动到一开始的文件夹里面
在这里插入图片描述

pip install -r requirements.txt

在这里插入图片描述
也可以使用web依赖

pip install -r requirements_web_demo.txt

3.1 修改web.demo.py地址

在这里插入图片描述
然后ctrl+s 保存

4 运行

 python web_demo.py 

5 成功

在这里插入图片描述

5开启量化

在这里插入图片描述

pip install bitsandbytes

在这里插入图片描述

添加依赖

from transformers import BitsAndBytesConfig
import torch

在这里插入图片描述
添加

quantization_config = BitsAndBytesConfig(load_in_4bit=True,bnb_4bit_quant_type='nf4',bnb_4bit_compute_dtype=torch.bfloat16)

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/63410.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

系统架构技能之设计模式-抽象工厂模式

一、上篇回顾 上篇我们主要讲述了简单工厂模式和工厂模式。并且分析了每种模式的应用场景和一些优缺点,我们现在来回顾一下: 简单工厂模式:一个工厂负责所有类型对象的创建,不支持无缝的新增新的类型对象的创建。 工厂模式&…

【Go 基础篇】Go语言结构体详解:打开自定义类型的大门

嗨,Go语言学习者们!在编程的世界里,数据是核心,而结构体(Struct)是一种能够帮助我们更有组织地存储和操作数据的重要工具。在本篇博客中,我们将深入探讨Go语言中结构体的概念、定义、初始化、嵌…

设计模式行为型-模板模式

文章目录 一:模板方法设计模式概述1.1 简介1.2 定义和目的1.3 关键特点1.4 适用场景 二:模板方法设计模式基本原理2.1 抽象类2.1.1 定义和作用2.1.2 模板方法2.1.3 具体方法 2.2 具体类2.2.1 定义和作用2.2.2 实现抽象类中的抽象方法2.2.3 覆盖钩子方法 …

爬虫--爬取自己想去的目的的车票信息

前言: 本篇文章主要作为一个爬虫项目的小练习,来给大家进行一下爬虫的大致分析过程以及来帮助大家在以后的爬虫编写中有一个更加清晰的认识。 一:环境配置 Python版本:3.7 IDE:PyCharm 所需库:requests&#xff0…

Mysql数据库事务隔离级别造成死锁

场景:如下代码,获取数据库连接,删除权限的时候,会造成数据库死锁. 代码 日志: 数据库: SHOW OPEN TABLES where In_use > 0; 问题分析:测试环境Centos7操作系统,Mysql5.7.40版本程序运行正常,开发环境Windows操…

O2OA(翱途)开发平台 V8.1正式发布

尊敬的O2OA(翱途)平台合作伙伴、用户以及亲爱的开发小伙伴们,平台 V8.1版本已正式发布。正值8月的最后一周,我们以更安全、更高效、更好用的崭新面貌迎接9月的到来。 O2OA开发平台v8.1版本更注重于对系统级别的安全防护。其中重大的更新,是对…

ELK安装、部署、调试(四)KAFKA消息队列的安装和部署

1.简介 Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。 这些数据通常是由于吞吐量的要求而通…

Nginx 部署 配置

一.概述 什么是nginx? Nginx (engine x) 是一款轻量级的Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 什么是反向代理? 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求…

【代码随想录day23】不同路径

题目 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。 问总共有多少条不同的路径? 示…

Mysql高级语句

高级语句 1.按关键字排序 SELECT column1, column2, ... FROM table_name ORDER BY column1, column2, ... ASC|DESC ASC 是按照升序进行排序的,是默认的排序方式,即 ASC 可以省略。 SELECT 语句中如果没有指定具体的排序方式,则默认按 ASC…

AP51656 PWM和线性调光 LED车灯电源驱动IC 兼容替代PT4115 PT4205

产品描述 AP51656是一款连续电感电流导通模式的降压恒流源 用于驱动一颗或多颗串联LED 输入电压范围从 5V 到 60V,输出电流 可达 1.5A 。根据不同的输入电压和 外部器件, 可以驱动高达数十瓦的 LED。 内置功率开关,采用高端电流采样设置 …

Ubuntu入门05——磁盘管理与备份压缩

1.检查磁盘空间占用情况 2.统计目录或文件所占磁盘空间大小 3.压缩 3.1 zip、unzip和zipinfo 运行时发现上面命令不成功,换成: (将文件lkw放入压缩文件lkw01.zip中) sudo zip -m lkw01.zip lkw 解压文件: 实操&…

css学习7(盒子模型)

1、盒子模型图&#xff1a; Margin(外边距) - 清除边框外的区域&#xff0c;外边距是透明的。Border(边框) - 围绕在内边距和内容外的边框。Padding(内边距) - 清除内容周围的区域&#xff0c;内边距是透明的。Content(内容) - 盒子的内容&#xff0c;显示文本和图像。 <!DO…

Vue框架--Vue中的数据代理

下面,我们一起来说以下Vue中的数据代理。 1.Object.defineProperty()方法回顾 * Object.defineProperty()方法基本配置项 * value:指定设置对象内容的属性值 * enumerable:true, //控制属性是否可以枚举(也就是是否可以被遍历),默认值是false * writable:true, //控制属性是…

three.js(四):react + three.js

绘制多个立方体 1.搭建reactts 项目 npx create-react-app basics-demo --template typescriptreactts 的用法可参考此链接&#xff1a; https://react-typescript-cheatsheet.netlify.app/docs/basic/setup 2.安装three依赖 npm install three types/three --save3.安装路…

Anaconda Prompt输入jupyter lab无反应

问题&#xff1a;Anaconda Prompt界面输入指令无反应 原因&#xff1a;公司电脑勒索病毒防御工具阻止了进程 解决&#xff1a;找到黑名单恢复进程

Android 1.2 开发环境搭建

目录 1.2 开发环境搭建 1.JDK安装与配置 2.开发工具二选一 3.相关术语的解析 4.ADB命令行的一些指令 5.APP程序打包与安装的流程&#xff1a; 6.APP的安装过程&#xff1a; 7.本节小结 1.2 开发环境搭建 现在主流的Android开发环境有: ①Eclipse ADT SDK ②Android Stu…

Kafka3.0.0版本——手动调整分区副本示例

目录 一、服务器信息二、启动zookeeper和kafka集群2.1、先启动zookeeper集群2.2、再启动kafka集群 三、手动调整分区副本3.1、手动调整分区副本的前提条件3.2、手动调整分区副本的示例需求3.3、手动调整分区副本的示例 一、服务器信息 四台服务器 原始服务器名称原始服务器ip节…

【算法与数据结构】617、LeetCode合并二叉树

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引&#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析&#xff1a;采用递归的方式遍历二叉树&#xff0c;【算法与数据结构】144、94、145LeetCode二叉树的前中后遍历&am…

Debian12搭建Nextcloud最新版并frp到二级域名

起因&#xff1a;因为台风的原因&#xff0c;要居家办公&#xff0c;但正值公司业务最要紧的时刻&#xff0c;所以需要搭建远程共享&#xff0c;结果发现基于原有的经验&#xff0c;已经难以适应版本更新带来的问题&#xff0c;所以就解决方法&#xff0c;进行了一次重新总结&a…