Qwen2.5-7B-Instruct进行自我认知微调

使用镜像:

modelscope/ms-swift/swift_lora_qwen2:v1

数据集和模型下载:

数据集内容:

启动命令:
CUDA_VISIBLE_DEVICES=0 \
swift sft \
    --model Qwen/Qwen2.5-7B-Instruct \
    --train_type lora \
    --dataset 'AI-ModelScope/alpaca-gpt4-data-zh#500' \
              'AI-ModelScope/alpaca-gpt4-data-en#500' \
              'swift/self-cognition#500' \
    --torch_dtype bfloat16 \
    --num_train_epochs 1 \
    --per_device_train_batch_size 1 \
    --per_device_eval_batch_size 1 \
    --learning_rate 1e-4 \
    --lora_rank 8 \
    --lora_alpha 32 \
    --target_modules all-linear \
    --gradient_accumulation_steps 16 \
    --eval_steps 50 \
    --save_steps 50 \
    --save_total_limit 5 \
    --logging_steps 5 \
    --max_length 2048 \
    --output_dir output \
    --system 'You are a helpful assistant.' \
    --warmup_ratio 0.05 \
    --dataloader_num_workers 4 \
    --model_author swift \
    --model_name swift-robot

显存占用:

lora训练过程:

验证集:

可视化:

学习率:

inference:

CUDA_VISIBLE_DEVICES=0 \
swift infer \
    --adapters output/vx-xxx/checkpoint-xxx \
    --stream true \
    --temperature 0 \
    --max_new_tokens 2048

和Qwen进行沟通:

和Qwen沟通时需要的显存:

merge-lora:

CUDA_VISIBLE_DEVICES=0 \
swift infer \
    --adapters output/vx-xxx/checkpoint-xxx \
    --stream true \
    --merge_lora true \
    --infer_backend vllm \
    --max_model_len 8192 \
    --temperature 0 \
    --max_new_tokens 2048

tensorboard

 

 

 

 

 

### 对 Qwen2.5-7B-Instruct 模型进行微调 为了对 Qwen2.5-7B-Instruct 进行有效的微调,需遵循一系列特定的操作流程。这些操作不仅涉及环境配置还涉及到具体的数据准备以及训练过程。 #### 环境搭建与依赖项安装 确保已按照指导完成 Docker 安装并设置好开发环境[^3]。这一步骤对于后续顺利开展模型微调至关重要。通过Docker容器化技术可以有效隔离不同项目之间的依赖冲突,并提供稳定一致的运行环境。 #### 数据集准备 针对目标领域收集足够的标注数据用于监督学习下的参数调整。理想情况下,应选取那些能够代表实际应用场景特点且质量较高的语料库作为输入材料。高质量的数据有助于提升最终输出效果的质量。 #### 微调脚本编写 基于所选框架(如 Hugging Face Transformers),创建适合该预训练语言模型架构特性的自定义训练循环逻辑: ```python from transformers import AutoModelForCausalLM, Trainer, TrainingArguments # 加载基础模型 model_name_or_path = "/path/to/qwen2.5-7b-instruct" model = AutoModelForCausalLM.from_pretrained(model_name_or_path) # 设置训练参数 training_args = TrainingArguments( output_dir="./results", num_train_epochs=3, per_device_train_batch_size=8, save_steps=10_000, save_total_limit=2, ) trainer = Trainer( model=model, args=training_args, train_dataset=train_dataset, # 需预先准备好训练数据集对象 eval_dataset=val_dataset # 如果有验证集的话也一并传入 ) # 启动训练过程 trainer.train() ``` 上述代码片段展示了如何利用 `transformers` 库中的 API 来加载指定路径下的 Qwen2.5-7B-Instruct 并对其进行进一步优化处理[^1]。 #### 训练监控与评估 在整个过程中持续关注各项性能指标的变化趋势,及时发现潜在问题所在以便采取相应措施加以解决;同时也要定期保存阶段性成果防止意外丢失重要进展记录。 #### 结果分析与迭代改进 当一轮完整的周期结束后,仔细审查所得结论是否满足预期标准。如果不尽人意,则考虑重新审视整个工作流设计思路或是探索其他可能存在的瓶颈环节直至达到满意为止。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值