alignment-handbook

GitHub
5.6k 480 较难 1 次阅读 昨天Apache-2.0开发框架语言模型
AI 解读 由 AI 自动生成,仅供参考

alignment-handbook 是由 Hugging Face 推出的开源项目,旨在提供一套稳健的“食谱”,帮助开发者将语言模型与人类及 AI 的偏好进行对齐。在 ChatGPT 引发大模型热潮后,虽然许多团队能通过监督微调让模型学会遵循指令,但如何进一步提升模型的有用性与安全性仍是行业难题。该项目正是为了解决这一痛点,填补了从数据收集、训练策略到评估指标全流程公开资源的空白。

它非常适合希望构建高质量聊天机器人或代码助手的研究人员与工程开发者使用。无论是从零开始继续预训练,还是进行监督微调(SFT),alignment-handbook 都提供了完整的脚本支持。其技术亮点在于涵盖了多种先进的偏好对齐算法,包括经典的 DPO(直接偏好优化)、ORPO 以及基于宪法 AI 的对齐方法,并支持 DeepSpeed ZeRO-3 分布式训练及 LoRA/QLoRA 高效微调。通过复现 Zephyr、SmolLM 等知名模型的训练路径,用户能够轻松掌握让大模型更“懂人心”的关键技术,低成本打造属于自己的智能助手。

使用场景

某初创团队希望基于开源基座模型,快速构建一个既懂医疗知识又符合安全规范的智能问诊助手。

没有 alignment-handbook 时

  • 技术门槛极高:团队需从零摸索 RLHF、DPO 等复杂的对齐算法,缺乏成熟的代码参考,研发周期长达数月。
  • 数据准备困难:不知道如何收集或构建高质量的偏好数据集(如“好回答”与“坏回答”的对比),导致模型训练效果不稳定。
  • 训练资源浪费:缺乏优化的分布式训练配置,显存占用高且容易报错,多次尝试均因显存溢出或收敛失败而中止。
  • 安全性无法保障:仅靠指令微调(SFT)无法有效抑制模型幻觉和有害输出,直接部署存在严重的合规风险。

使用 alignment-handbook 后

  • 开箱即用流程:直接复用项目中成熟的 DPO 和 ORPO 训练脚本,几天内即可完成从基座模型到对齐模型的完整流水线。
  • 优质数据支持:利用其提供的"No Robots"等高质量人类标注数据集作为基准,快速构建出符合医疗场景的偏好数据。
  • 高效稳定训练:内置 DeepSpeed ZeRO-3 和 QLoRA 配置,显著降低显存需求,确保在有限算力下也能稳定收敛。
  • 显著提升安全性:通过标准的偏好对齐步骤,模型不仅回答更准确,还大幅减少了胡编乱造和不当建议,满足上线标准。

alignment-handbook 将原本高深莫测的对齐技术转化为标准化的“烹饪食谱”,让开发者能低成本、高效率地打造出安全可控的专用大模型。

运行环境要求

操作系统
  • Linux
GPU

必需 NVIDIA GPU,需安装 Flash Attention 2 (v2.7.4.post1),指定 CUDA 12.6 (cu126) 版本的 PyTorch

内存

未说明

依赖
notes建议使用 uv 工具管理虚拟环境和依赖;PyTorch 版本必须严格为 2.6.0 以确保复现性;需登录 Hugging Face 账户;需安装 Git LFS 以上传模型;支持 DeepSpeed ZeRO-3 分布式训练及 LoRA/QLoRA 参数高效微调。
python3.11
torch==2.6.0
flash-attn==2.7.4.post1
huggingface-cli
git-lfs
alignment-handbook hero image

快速开始

🤗 模型与数据集 | 📃 技术报告

对齐手册

用于继续预训练以及将语言模型与人类和AI偏好对齐的稳健方法。

这是什么?

就在一年前,聊天机器人还不流行,大多数人甚至从未听说过通过人类反馈强化学习(RLHF)等技术来使语言模型与人类偏好对齐的方法。随后,OpenAI凭借ChatGPT引爆了互联网,Meta也紧随其后发布了Llama系列语言模型,这使得机器学习社区能够构建属于自己的强大聊天机器人。由此催生了一个丰富的数据集和模型生态系统,这些资源大多专注于通过监督微调(SFT)来教会语言模型遵循指令。

然而,从InstructGPTLlama2这两篇论文中我们可以了解到,通过结合人类(或AI)偏好来增强SFT,可以在帮助性和安全性方面取得显著提升。与此同时,将语言模型与一组偏好对齐仍是一个相对较新的概念,目前公开可用的关于如何训练这些模型、收集哪些数据以及使用何种指标来衡量下游性能的最佳实践资源仍然十分有限。

《对齐手册》旨在填补这一空白,为社区提供一系列覆盖整个流程的稳健训练方案。

新闻 🗞️

  • 2025年7月24日:我们发布了SmolLM3-3B背后的完整后训练配方,这是一种最先进的混合推理模型 💭
  • 2024年11月21日:我们发布了微调SmolLM2-Instruct的配方
  • 2024年8月18日:我们发布了SmolLM-Instruct v0.2,并附带了微调小型LLM的配方 💻
  • 2024年4月12日:我们与Argilla和Kaist AI合作发布了Zephyr 141B (A35B),并附带了使用ORPO微调Mixtral 8x22B的配方 🪁
  • 2024年3月12日:我们发布了StarChat2 15B,并附带了训练高效编码助手的配方 🌟
  • 2024年3月1日:我们发布了Zephyr 7B Gemma,这是一个全新的配方,用于将Gemma 7B与RLAIF对齐 🔥
  • 2024年2月1日:我们发布了一种将开源LLM与宪章式AI对齐的配方 📜!详情请参阅配方博客文章
  • 2024年1月18日:我们发布了一系列DPO、KTO和IPO的评估结果,详情请参阅配方博客文章
  • 2023年11月10日:我们发布了所有用于复现Zephyr-7b-β的训练代码 🪁!同时,我们还发布了No Robots,这是一个全新的数据集,包含1万条由熟练的人类标注者完全手工编写的指令和演示。

链接 🔗

如何浏览该项目 🧭

本项目设计简洁,主要由以下部分组成:

  • scripts:用于训练和评估模型的脚本。包括四个步骤:继续预训练、面向对话的监督微调(SFT)、使用DPO进行偏好对齐,以及结合偏好对齐的ORPO监督微调。每个脚本都支持使用DeepSpeed ZeRO-3进行全模型权重的分布式训练,或者使用LoRA/QLoRA进行参数高效的微调。
  • recipes:用于复现Zephyr 7B等模型的配方。每个配方以YAML文件的形式呈现,包含了单次训练运行的所有参数。此外,还提供了一个gpt2-nl配方,用以说明如何利用本手册进行语言或领域适应,例如在不同语言上继续预训练,然后进行SFT和DPO调优。

我们还在编写一系列指南,解释诸如直接偏好优化(DPO)等方法的工作原理,以及在实际收集人类偏好过程中所获得的经验教训。要开始使用,我们建议您按照以下步骤操作:

  1. 按照安装说明设置您的环境等。
  2. 按照配方说明复现Zephyr-7b-β。

如果您希望使用自己的数据集来训练聊天模型,我们建议您参考此处的数据集格式化说明。

目录

手册的初始版本将重点介绍以下技术:

  • 继续预训练:使语言模型适应新的语言或领域,或者仅仅通过在新数据集上进行因果语言建模的继续预训练来提升模型性能。
  • 监督微调:教导语言模型遵循指令,并提供有关如何收集和整理训练数据集的技巧。
  • 奖励建模:教会语言模型根据人类或AI偏好来区分不同的模型响应。
  • 拒绝采样:一种简单但强大的技术,可显著提升SFT模型的性能。
  • 直接偏好优化(DPO):一种强大且前景广阔的PPO替代方案。
  • 几率比偏好优化(ORPO):一种结合SFT和DPO于一体的技术,用于以人类偏好为目标对语言模型进行微调。

安装说明

要运行本项目中的代码,首先使用例如 uv 创建一个 Python 虚拟环境:

uv venv handbook --python 3.11 && source handbook/bin/activate && uv pip install --upgrade pip

[!TIP] 若要安装 uv,请按照 UV 安装指南 进行操作。

接下来,安装 PyTorch v2.6.0

uv pip install torch==2.6.0 --index-url https://download.pytorch.org/whl/cu126

请注意,精确的版本号对于实验的可重复性非常重要!由于这与硬件相关,我们还建议您参考 PyTorch 安装页面

然后,您可以按如下方式安装其余的包依赖项:

uv pip install .

此外,您还需要安装 Flash Attention 2,可以通过以下命令完成:

uv pip install "flash-attn==2.7.4.post1" --no-build-isolation

接下来,请按照以下步骤登录您的 Hugging Face 账户:

huggingface-cli login

最后,安装 Git LFS,以便将模型推送到 Hugging Face Hub:

sudo apt-get install git-lfs

现在,您可以查看 scriptsrecipes 目录,了解如何训练一些模型的说明 🪁!

项目结构

├── LICENSE
├── Makefile                    <- 包含诸如 `make style` 等命令的 Makefile
├── README.md                   <- 面向开发者的顶级 README 文件
├── recipes                     <- 配置文件、加速配置和 Slurm 脚本
├── scripts                     <- 用于训练和评估聊天模型的脚本
├── setup.cfg                   <- 安装配置(主要用于配置代码质量和测试)
├── setup.py                    <- 使项目可通过 pip 安装(pip install -e .),从而可以导入 `alignment`
├── src                         <- 本项目中使用的源代码
└── tests                       <- 单元测试

引用

如果您在工作中觉得本仓库的内容有所帮助,请通过 \usepackage{biblatex} 按照以下格式引用:

@software{Tunstall_The_Alignment_Handbook,
  author = {Tunstall, Lewis and Beeching, Edward and Lambert, Nathan and Rajani, Nazneen and Huang, Shengyi and Rasul, Kashif and Bartolome, Alvaro, and M. Patiño, Carlos and M. Rush, Alexander and Wolf, Thomas},
  license = {Apache-2.0},
  title = {{The Alignment Handbook}},
  url = {https://github.com/huggingface/alignment-handbook},
  version = {0.4.0.dev0}
}

常见问题

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|4天前
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|5天前
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

149.5k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

108.3k|★★☆☆☆|今天
开发框架图像Agent

gemini-cli

gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。

100.8k|★★☆☆☆|昨天
插件Agent图像

markitdown

MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器

93.4k|★★☆☆☆|4天前
插件开发框架