Qwen-7B-Chat大模型安装训练推理-helloworld

2024-09-04 02:12

本文主要是介绍Qwen-7B-Chat大模型安装训练推理-helloworld,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

初始大模型之helloworld编写

开发环境:modelscope GPU版本上测试的,GPU免费36小时

ps:可以不用conda直接用环境自带的python环境使用

魔搭社区

  1. 安装conda
    1. wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

1.2 bash Miniconda3-latest-Linux-x86_64.sh

需要多次确认 按enter或者输入yes

no change     /root/miniconda3/condabin/conda

no change     /root/miniconda3/bin/conda

no change     /root/miniconda3/bin/conda-env

no change     /root/miniconda3/bin/activate

no change     /root/miniconda3/bin/deactivate

no change     /root/miniconda3/etc/profile.d/conda.sh

no change     /root/miniconda3/etc/fish/conf.d/conda.fish

no change     /root/miniconda3/shell/condabin/Conda.psm1

no change     /root/miniconda3/shell/condabin/conda-hook.ps1

no change     /root/miniconda3/lib/python3.12/site-packages/xontrib/conda.xsh

no change     /root/miniconda3/etc/profile.d/conda.csh

安装成功后设置环境变量

1.3 source ~/.bashrc

最后查看是否安装成功

Thank you for installing Miniconda3!

root@dsw-637832-67644985ff-l2r6g:/mnt/workspace# source ~/.bashrc

(base) root@dsw-637832-67644985ff-l2r6g:/mnt/workspace# conda --version

conda 24.7.1

1.4 创建conda虚拟环境

conda create -n myenv python=3.10 -y

1.5 激活环境

conda activate myenv

1.6 查看生效版本

conda env list

1.7 pip list 查看安装的依赖包

1.8 添加清华源

conda config --add channels Index of /anaconda/pkgs/main/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

  1. 基于conda,安装依赖
  1. 新建文件requirements.txt,内容如下

transformers>=4.32.0,<4.38.0

accelerate

tiktoken

einops

transformers_stream_generator==0.0.4

scipy

vllm

  1. pip install -r requirements.txt

或者逐个安装

  1. 下载大模型

modelscope download --model qwen/Qwen-7B-Chat

   有多种方式可以下载

这种方式下载到了/home/admin/workspace/.cache/modelscope/hub/qwen/Qwen-7B-Chat ,可以通过find / -name Qwen-7B-Chat 找到位置

其他下载方式

通过pip list查看所有已经安装的依赖

4. 输入命令 python进入python脚本开发

from modelscope import AutoModelForCausalLM, AutoTokenizer

from modelscope import GenerationConfig

#这里可以写下载好的路径

tokenizer = AutoTokenizer.from_pretrained("./qwen/Qwen-7B-Chat", trust_remote_code=True)

model = AutoModelForCausalLM.from_pretrained("./qwen/Qwen-7B-Chat", device_map="auto", trust_remote_code=True).eval()

response, history = model.chat(tokenizer, "你好", history=None)

print(response)

#可以开始不停的输入问题了,要想记住会话,就写history=history

response, history = model.chat(tokenizer, "你好", history=None)

print(response)

#history不能无限次的计住的,达到一定限制就会删除部分历史了

response, history = model.chat(tokenizer, "如果借款10W,年利息3点,算复利,3年本息共计多少", history=None)

print(response)

总结:这几步骤是运行大模型通用且必须的

from modelscope import AutoModelForCausalLM, AutoTokenizer

from modelscope import GenerationConfig

#这里可以写下载好的路径

tokenizer = AutoTokenizer.from_pretrained("./qwen/Qwen-7B-Chat", trust_remote_code=True)

model = AutoModelForCausalLM.from_pretrained("./qwen/Qwen-7B-Chat", device_map="auto", trust_remote_code=True).eval()

推理

from modelscope import AutoModelForCausalLM, AutoTokenizer

from modelscope import GenerationConfig

#这里可以写下载好的路径

tokenizer = AutoTokenizer.from_pretrained("./qwen/Qwen-7B-Chat", trust_remote_code=True)

model = AutoModelForCausalLM.from_pretrained("./qwen/Qwen-7B-Chat", device_map="auto", trust_remote_code=True).eval()

device = "cuda"

prefix = "北京是中国的首都"

model_inputs = tokenizer([prefix], return_tensors="pt").to(device)

generated_ids = model.generate(

  model_inputs.input_ids,

  max_new_tokens=400,

  repetition_penalty=1.15

)

generated_ids = [

  output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)

]

response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]

print(response)

这篇关于Qwen-7B-Chat大模型安装训练推理-helloworld的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1134709

相关文章

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Java调用Python脚本实现HelloWorld的示例详解

《Java调用Python脚本实现HelloWorld的示例详解》作为程序员,我们经常会遇到需要在Java项目中调用Python脚本的场景,下面我们来看看如何从基础到进阶,一步步实现Java与Pyth... 目录一、环境准备二、基础调用:使用 Runtime.exec()2.1 实现步骤2.2 代码解析三、

Python库 Django 的简介、安装、用法入门教程

《Python库Django的简介、安装、用法入门教程》Django是Python最流行的Web框架之一,它帮助开发者快速、高效地构建功能强大的Web应用程序,接下来我们将从简介、安装到用法详解,... 目录一、Django 简介 二、Django 的安装教程 1. 创建虚拟环境2. 安装Django三、创

linux安装、更新、卸载anaconda实践

《linux安装、更新、卸载anaconda实践》Anaconda是基于conda的科学计算环境,集成1400+包及依赖,安装需下载脚本、接受协议、设置路径、配置环境变量,更新与卸载通过conda命令... 目录随意找一个目录下载安装脚本检查许可证协议,ENTER就可以安装完毕之后激活anaconda安装更

Jenkins的安装与简单配置过程

《Jenkins的安装与简单配置过程》本文简述Jenkins在CentOS7.3上安装流程,包括Java环境配置、RPM包安装、修改JENKINS_HOME路径及权限、启动服务、插件安装与系统管理设置... 目录www.chinasem.cnJenkins安装访问并配置JenkinsJenkins配置邮件通知

Win10安装Maven与环境变量配置过程

《Win10安装Maven与环境变量配置过程》本文介绍Maven的安装与配置方法,涵盖下载、环境变量设置、本地仓库及镜像配置,指导如何在IDEA中正确配置Maven,适用于Java及其他语言项目的构建... 目录Maven 是什么?一、下载二、安装三、配置环境四、验证测试五、配置本地仓库六、配置国内镜像地址

Python安装Pandas库的两种方法

《Python安装Pandas库的两种方法》本文介绍了三种安装PythonPandas库的方法,通过cmd命令行安装并解决版本冲突,手动下载whl文件安装,更换国内镜像源加速下载,最后建议用pipli... 目录方法一:cmd命令行执行pip install pandas方法二:找到pandas下载库,然后

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方