国外程序员拼命逆向Deepseek-R1中

admin 2025年2月7日15:09:11评论7 views字数 1913阅读6分22秒阅读模式

DeepSeek-R1的出现引发了全球AI行业的关注,其性能和成本优势对现有AI 模型构成了竞争压力。国外程序员和企业通过复刻,能够跟上行业发展的潮流,避免在AI技术竞争中落后。DeepSeek-R1虽然公开了模型权重,但用于训练的数据集和代码没有提供。Open-R1旨在填补这一空白,系统性地重构 DeepSeek-R1的数据集及其训练流程,验证相关技术成果,让整个研究和行业社区都可以利用这些资源构建类似或更好的模型。

open-r1是一个旨在完全开放复现 DeepSeek-R1 的仓库,目前仍在开发中。

地址:https://github.com/huggingface/open-r1

国外程序员拼命逆向Deepseek-R1中

主要目标

国外程序员拼命逆向Deepseek-R1中
国外程序员拼命逆向Deepseek-R1中

此仓库的目标是构建R1管道中缺失的部分,以便每个人都能够复现并在此基础上进行开发。

国外程序员拼命逆向Deepseek-R1中

 计划

国外程序员拼命逆向Deepseek-R1中
国外程序员拼命逆向Deepseek-R1中

以DeepSeek-R1技术报告为指导,大致可分为三个主要步骤:

步骤 1:从DeepSeek-R1中提取高质量语料库来复制R1-Distill模型。

步骤 2:复制DeepSeek用于创建R1-Zero的纯RL管道。这可能涉及为数学、推理和代码整理新的大规模数据集。

步骤 3:展示我们可以通过多阶段训练从基础模型转向RL调整。

国外程序员拼命逆向Deepseek-R1中

国外程序员拼命逆向Deepseek-R1中

目录结构

国外程序员拼命逆向Deepseek-R1中
国外程序员拼命逆向Deepseek-R1中

- `.gitignore`、`LICENSE`、`setup.cfg`、`setup.py`:用于管理项目的版本控制、许可证、配置和打包等方面。

- `Makefile`:包含R1管道中每个步骤的易于运行的命令,这些命令利用了 `src/open_r1`中的脚本。

- `README.md`:项目的说明文档,包含项目概述、安装步骤、训练模型、评估模型、数据生成等方面的信息。

- `assets/`:存放项目的一些资源文件,如plan-of-attack.png图片。

- `.github/`:包含GitHub相关的配置文件,如`dependabot.yml`和工作流配置文件。

- `recipes/`:可能包含一些项目的配置文件或示例脚本。

- `slurm/`:包含一些SLURM脚本,如`eval_callback.slurm`、`evaluate.slurm`等,用于在集群上运行任务。

- `src/open_r1/`:包含训练和评估模型以及生成合成数据的脚本,具体脚本包括:

-`grpo.py`:使用GRPO算法在给定数据集上训练模型。

-`sft.py`:对模型在数据集上进行简单的监督微调(SFT)。

-`evaluate.py`:在R1基准上评估模型。

-`generate.py`:使用 [Distilabel](https://github.com/argilla-io/distilabel) 从模型中生成合成数据。

- `scripts/`:包含一些额外的脚本,如 `run_benchmarks.py`。      

国外程序员拼命逆向Deepseek-R1中

主要功能模块

国外程序员拼命逆向Deepseek-R1中
国外程序员拼命逆向Deepseek-R1中

训练模型

支持使用DDP或DeepSpeed(ZeRO-2 和 ZeRO-3)训练模型。可以通过更改 `configs` 中 `accelerate` 的 YAML 配置文件路径来切换训练方法。

- SFT(监督微调):可以在从DeepSeek-R1提炼的带有推理痕迹的数据集(如 [Bespoke-Stratos-17k](https://huggingface.co/datasets/bespokelabs/Bespoke-Stratos-17k))上运行SFT。

- GRPO:使用GRPO算法在给定数据集上训练模型。      

评估模型

使用 `evaluate.py` 脚本在R1基准上评估模型。        

数据生成

使用`generate.py` 脚本,借助 [Distilabel](https://github.com/argilla-io/distilabel) 从模型中生成合成数据,包括从小型提炼的 R1 模型或 DeepSeek-R1 中生成数据。         

复现评估结果

尝试复现Deepseek在MATH-500上的评估结果。

国外程序员拼命逆向Deepseek-R1中

安装步骤

国外程序员拼命逆向Deepseek-R1中
国外程序员拼命逆向Deepseek-R1中

1. 创建虚拟环境:使用 `uv` 创建 Python 虚拟环境,并激活该环境,同时升级 `pip`。

2. 安装 vLLM:安装 vLLM 并确保安装的 PyTorch 版本为 `v2.5.1`,因为 vLLM 二进制文件是针对此版本编译的。

3. 安装依赖项:根据具体使用情况,使用 `pip install -e .[LIST OF MODES]` 安装剩余的依赖项,推荐使用 `pip install -e ".[dev]"`。

4. 登录账户:登录 Hugging Face 和 Weights and Biases 账户。

5. 检查 Git LFS:检查系统是否安装了 Git LFS,若未安装则进行安装。  

原文始发于微信公众号(安全红蓝紫):国外程序员拼命逆向Deepseek-R1中

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年2月7日15:09:11
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   国外程序员拼命逆向Deepseek-R1中https://cn-sec.com/archives/3708422.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息