10分钟完成情侣约会DeepSeek模型微调,从此告别情场小白

​点击上方“阿三先生”↑↑↑关注

模丨型丨微丨调

目录

背景介绍

Lora 微调

效果展示

环境安装

模型下载

微调数据准备

微调数据格式化

开始微调训练

设置lora相关的参数

设置TrainingArguments 参数

使用 Trainer 训练

微调模型保存

效果测试

微调模型使用

体验&完整代码获取


背景介绍

现存在的大模型已经很完善了,但在特殊场景下,他们的完成效果并不理想,也存在很多禁忌。主要体现在以下方面:

1、由于不可抗原因,对输出内容限制,对敏感内容禁止输出。

2、达不到理想的回复效果,忠实性不太理想,会天马行空。

3、想对产品做推广回复,在回复中要忠于产品,推广产品。

4、响应时长及稳定性问题

Lora 微调

      大模型的微调需要较多资源,lora用于解决训练资源匮乏时的模型微调。主要思路是,在原模型中增加低秩矩阵,对低秩矩阵进行训练,以达到对模型微调的目的。

     目前一般通过 peft 库来实现模型的 LoRA 微调。peft 库是 huggingface 开发的第三方库,其中封装了包括 LoRA、Adapt Tuning、P-tuning 等多种高效微调方法,可以基于此便捷地实现模型的 LoRA 微调。

这里介绍如何基于transformers、peft 等框架,对 DeepSeek-7B-chat 模型进行 Lora 微调。

效果展示

环境安装

在完成基本环境配置和本地模型部署的情况下,你还需要安装一些第三方库,包括但不限于如下:

pip install transformers==4.35.2pip install peft==0.4.0pip install datasets==2.10.1pip install accelerate==0.20.3pip install tiktokenpip install transformers_stream_generator

模型下载

### 对 DeepSeek-R1-671B 模型进行 Fine-Tune 为了对 DeepSeek-R1-671B 进行微调,可以遵循类似于较小版本模型(如 DeepSeek-R1-Distill-Qwen-1.5B)的方法。以下是具体实现过程: #### 准备环境和加载资源 首先需要安装必要的库并准备数据集。 ```bash pip install transformers datasets torch ``` 接着加载预训练的 Tokenizer 和模型实例化对象: ```python from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("DeepSeek-R1-671B") model = AutoModelForCausalLM.from_pretrained("DeepSeek-R1-671B") ``` #### 数据处理与Tokenization 定义函数来处理输入文本,并将其转换成适合喂给模型的形式: ```python def preprocess_function(examples): return tokenizer(examples["text"], truncation=True) tokenized_datasets = dataset.map(preprocess_function, batched=True) ``` 这里假设 `dataset` 是已经准备好并且包含了 `"text"` 字段的数据集对象[^2]。 #### 设置训练参数 配置 Trainer API 所需的各种超参数和其他设置项: ```python from transformers import TrainingArguments, Trainer training_args = TrainingArguments( output_dir="./results", evaluation_strategy="epoch", learning_rate=2e-5, per_device_train_batch_size=8, per_device_eval_batch_size=8, num_train_epochs=3, weight_decay=0.01, ) trainer = Trainer( model=model, args=training_args, train_dataset=tokenized_datasets["train"], eval_dataset=tokenized_datasets["validation"] ) ``` #### 开始Fine-Tuning 最后一步就是启动实际的训练流程: ```python trainer.train() ``` 完成上述步骤之后就可以开始对 DeepSeek-R1-671B 模型执行细粒度调整操作了。需要注意的是由于该模型规模较大,在硬件条件允许的情况下建议使用 GPU 或者 TPU 来加速整个过程。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

阿三先生

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

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

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

打赏作者

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

抵扣说明:

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

余额充值