×
资讯活动

一步步将DeepSeek R1微调成一个Safety engineer(安全工程师) ​

发布时间:2025-07-02 来源:地知网


DeepSeek

DeepSeek 颠覆了 AI 领域,挑战 OpenAI 的主导地位,推出了一系列先进的推理模型。最令人兴奋的是?这些模型完全免费,且没有任何使用限制,人人都可以访问。

本教程将基于 DeepSeek-R1-Disti-Lama-88 模型,通过 Hugging Face 的安全领域数据集进行微调,让其具备安全工程师的能力。

 

什么是DeepSeek R1

DeepSeek-R1和DeepSeek-R1-Zer0 在数学、编程和逻辑推理任务上与OpenAl 的o1性能相当,且均为开源模型。DeepSeek-R1-Zero通过大规模强化学习训练,能独立探索思维链推理,但存在推理步骤重复、可读性差等问题。DeepSeek-R1则引入冷启动数据,多阶段训练使其在基准测试中表现出色,输出可读性和连贯性更好。此外,Deepseek的蒸馏模型参数范围1.5B-70B,保留强大推理能力,如DeepSeek-R1-Distil-Qwen-32B在多个基准测试中超越 OpenAl-o1-mini。

 

逐步微调DeepSeeksR1

1. 环境设置

选用 Kaggle 作为云 IDE,其提供免费 GPU 资源。启动新的 Kaggle notebook,添加 Hugging Face token 和 Weights & Biases token 为密钥。安装 unsloth Python 包提升微调效率,登录 Hugging Face CLI 用于下载数据集和上传模型,登录 Weights & Biases 并创建新项目跟踪实验进展。相关代码如下: 

image

2. 加载模型和 tokenizer

加载 Unsloth 版本的 DeepSeek-R1-Distil-Llama-88 模型,并以4-bit 量化方式加载优化内存和性能。代码如下:

image 

3. 微调前的模型推理

构建提示模板引导模型思考。示例问题为:“在建筑施工过程中,某施工现场频繁出现工人未正确佩戴安全帽的情况,作为安全工程师,你该采取哪些措施来解决这一问题并预防类似安全隐患?"即使未微调,模型能生成思维链和答室,但存在几长、格式不符等问题。代码如下:

image 

4. 加载和处理数据集

调整提示模板,为复杂思维链添加占位符。编写函数处理数据集,从 Hugging Face Hub 加载安全领域数据集

(假设Safetyintelligence/safety-engineer-reasoning-SFT)前 500 个样本,并映射处理。代码如下:

image 

5. 设置模型

向模型添加低秩适配器,设置训练参数和训练器。代码如下:

image 

6. 训练模型

执行训练,训练过程约 22 分钟,训练损失降低表明模型性能提升。可登录 Weights & Biases 查看评估报告。代码及训练结果如下:

image 

image 

7. 微调后的模型推理

用相同问题测试微调后的模型,结果显示思维链简洁,答案准确直接。代码如下:

image 

8. 本地保存模型

将适配器、模型和 tokenizer 保存到本地,方便后续项目使用。代码如下:

image 

9. 将模型推送到 Hugging Face Hub

把相关内容推送到 Hugging Face Hub,供 AI 社区使用。代码如下:

image 

总结

AI 开源社区蓬勃发展,微调开源 LLM 变得更易实现。本教程利用 DeepSeek R1 模型,通过微调使其能处理安全工程相关问题,有望应用于安全生产、风险隐患排查等领域。随着技术发展,此类模型将在更多场景发挥重要作用。