部署和微调Qwen1.5-7B

前言

小白微调部署笔记
系统:
图形化Ubuntu20.04
主要硬件:
RTX4090 24G
使用的工具:
Miniconda、pip、git等
Ubuntu系统初始化配置:
1.安装vim编辑器

sudo apt install vim

2.安装Miniconda
自行查找教程安装

一、部署

1.创建下载路径并切换到下载路径

mkdir modes
cd modes

2.下载Qwen1.5-7B源代码

git clone https://github.com/QwenLM/Qwen.git

3.养成好习惯,使用conda创建conda环境,然后激活创建的环境

conda create -n qwen1.5 python==3.10.1
conda activate qwen1.5

4.在conda环境中安装pytorch
在安装之前建议先升级pip版本

python -m pip install --upgrade pip

然后安装pytorch(这里需要根据自己的GPU来选择合适的pytorch版本)
新开一个终端使用命令查询支持的cuda版本

nvidia-smi

然后去官网:https://pytorch.org/get-started/locally/#/选择合适的版本下载即可
在这里插入图片描述

pip3 install torch torchvision torchaudio

没看懂的自行百度学习
5.使用pip安装模型运行的项目依赖

pip install -r requirements.txt

6.切换至模型源代码位置

cd Qwen

7.下载魔塔社区的权重模型
在下载权重模型前需要先安装git-lfs这个工具

sudo apt-get install git-lfs

然后就可以初始化git lfs并且下载权重模型

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

8.安装web UI的依赖包

pip install -r requirements_web_demo.txt

9.完成以上操作后就可以尝试运

### Qwen2-7B 模型本地部署微调方法 #### 一、Qwen2-7B 的本地部署 为了实现 Qwen2-7B 模型的本地部署,通常需要完成以下几个核心步骤: 1. **安装依赖库** 需要先确保环境中已安装必要的 Python 库。可以通过 `pip` 安装 Hugging Face 提供的相关工具包,例如 Transformers Accelerate[^1]。 ```bash pip install transformers accelerate torch safetensors ``` 2. **下载模型权重** 如果无法直接从 Hugging Face 下载模型,则可以选择国内镜像站点获取预训练模型权重文件[^2]。 3. **加载模型并初始化处理器** 使用以下代码片段来加载 Qwen2-7B 模型及其对应的处理器对象。此部分展示了如何通过指定本地路径加载模型实例。 ```python from transformers import AutoModelForCausalLM, AutoTokenizer model_path = "/path/to/local/model" tokenizer = AutoTokenizer.from_pretrained(model_path) model = AutoModelForCausalLM.from_pretrained( model_path, trust_remote_code=True, torch_dtype=torch.float16, device_map="auto" ) ``` 4. **验证部署效果** 可以编写简单的推理脚本来确认模型是否正常工作。例如输入一段文本让模型生成后续内容。 --- #### 二、Qwen2-7B 的微调流程 对于 Qwen2-7B 模型而言,微调可以帮助其更贴合特定应用场景的需求。以下是具体的实施方式: 1. **准备数据集** 数据应按照标准格式整理成 JSON 或 CSV 文件形式,并包含用于监督学习的任务标签或目标序列[^3]。 2. **定义超参数及优化器配置** 设置批量大小 (batch size)、学习率 (learning rate) 等关键参数,并选用适合当前任务类型的损失函数评估指标体系。 3. **构建训练循环逻辑** 基于 PyTorch 或其他深度学习框架设计完整的训练管线结构。下面给出了一种典型做法示例代码: ```python from datasets import load_dataset from peft import LoraConfig, get_peft_model from transformers import TrainingArguments, Trainer dataset = load_dataset("your_custom_dataset") lora_config = LoraConfig( r=8, lora_alpha=32, target_modules=["q_proj", "v_proj"], lora_dropout=0.05, bias="none", task_type="CAUSAL_LM" ) peft_model = get_peft_model(model, lora_config) training_args = TrainingArguments( output_dir="./results", num_train_epochs=3, per_device_train_batch_size=4, gradient_accumulation_steps=2, learning_rate=2e-5, logging_dir='./logs', save_strategy='epoch' ) trainer = Trainer( model=peft_model, args=training_args, train_dataset=dataset["train"], eval_dataset=dataset["validation"] ) trainer.train() ``` 4. **保存与导出微调后的模型** 训练完成后记得将更新过的参数持久化存储下来以便日后重复利用或者分享给他人使用。 --- #### 总结 通过对以上两部分内容的学习,能够较为全面地理解关于 Qwen2-7B 如何进行有效的本地部署以及高效的微调策略。这不仅有助于提升开发效率还能进一步挖掘大语言模型的实际价值所在。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值