Open-Instruct: 开放指令语言模型训练项目

RayRay
模型微调语言模型开源项目AI训练评估基准Github

Open-Instruct:开放指令语言模型训练项目

Open-Instruct是由Allen人工智能研究所(AI2)发起的一个开源项目,旨在探索如何利用公开可用的数据集对预训练语言模型进行指令微调,以提高模型遵循指令的能力。该项目的主要目标是推动指令微调技术的发展,并为研究社区提供有价值的资源。

项目概述

Open-Instruct项目的核心内容包括:

  1. 提供统一格式的指令数据集和最新的微调技术,用于对语言模型进行指令微调。
  2. 开发一套全面的评估基准,用于测试语言模型在不同能力方面的表现。
  3. 发布经过指令微调的模型检查点和其他有用的资源。

该项目的代码库可在GitHub上公开访问: https://github.com/allenai/open-instruct

主要特点

Open-Instruct项目具有以下几个突出特点:

  1. 开放性: 项目采用开源方式,鼓励社区参与和贡献。
  2. 统一性: 将各种指令数据集统一为相同的格式,便于使用和比较。
  3. 全面性: 涵盖了从数据准备、模型微调到评估的完整流程。
  4. 前沿性: 持续跟踪和整合最新的指令微调技术。

核心组件

Open-Instruct项目包含以下几个核心组件:

  1. 数据准备: 提供脚本用于下载和处理各种公开可用的指令数据集。
  2. 模型微调: 支持对多种预训练语言模型进行指令微调,包括全参数微调和参数高效微调(如LoRA和QLoRA)。
  3. 评估基准: 开发了一套全面的评估基准,涵盖了多个任务和能力维度。
  4. 模型发布: 定期发布经过指令微调的模型检查点,如Tülu系列模型。

Tülu logo

Tülu(一种混合骆驼)代表了Open-Instruct项目开发的一系列经过全参数微调的LLaMA模型

数据集和微调

Open-Instruct项目整合了多个公开可用的指令数据集,包括:

  • FLAN V2
  • Chain-of-Thought (CoT)
  • Dolly
  • Open Assistant
  • GPT4-Alpaca
  • Code-Alpaca
  • ShareGPT

这些数据集被统一处理为相同的对话格式,便于模型训练。研究人员可以使用提供的脚本轻松下载和准备这些数据集。

在微调方面,Open-Instruct支持多种技术:

  1. 全参数微调: 适用于计算资源充足的情况,可以获得最佳性能。
  2. LoRA(Low-Rank Adaptation): 一种参数高效的微调方法,只更新少量参数。
  3. QLoRA(Quantized LoRA): 在LoRA的基础上引入了量化技术,进一步降低了内存需求。

这些微调方法使得研究人员可以根据自己的计算资源和需求选择合适的训练策略。

评估基准

Open-Instruct项目开发了一套全面的评估基准,用于测试语言模型在多个方面的能力。这些基准包括:

  • MMLU(多任务语言理解)
  • GSM(年级数学)
  • BBH(Big-Bench Hard)
  • TydiQA(多语言问答)
  • Codex HumanEval(代码生成)
  • AlpacaFarm(指令遵循评估)
  • ToxiGen(毒性检测)
  • TruthfulQA(真实性评估)

这些基准覆盖了语言理解、数学推理、代码生成、多语言能力、安全性等多个方面,为模型性能的全面评估提供了基础。

模型发布

Open-Instruct项目定期发布经过指令微调的模型检查点。其中最引人注目的是Tülu系列模型,这是一组基于LLaMA架构、经过全参数指令微调的模型。Tülu模型在多个基准测试中表现出色,展示了开放资源指令微调的潜力。

目前,Open-Instruct发布的模型包括:

  • Tülu v1系列模型
  • Tülu v2系列模型
  • OLMo 7B SFT和Instruct模型

这些模型可在Hugging Face上获取,为研究人员提供了高质量的开源指令微调模型。

最新进展

Open-Instruct项目持续更新,跟踪指令微调领域的最新进展。近期的一些重要更新包括:

  1. 发布了新论文《Unpacking DPO and PPO: Disentangling Best Practices for Learning from Preference Feedback》,探讨了基于偏好反馈学习的最佳实践。
  2. 支持LLaMA 2模型的微调。
  3. 引入了新的指令数据集,如LIMA、WizardLM和Open-Orca。
  4. 增加了对ToxiGen和TruthfulQA的评估支持。

这些更新反映了项目团队致力于保持Open-Instruct在指令微调研究前沿的努力。

使用和贡献

研究人员和开发者可以通过以下方式使用和贡献Open-Instruct项目:

  1. 克隆GitHub仓库并按照说明设置环境。
  2. 使用提供的脚本下载和准备训练数据。
  3. 利用项目提供的代码对自己的模型进行指令微调。
  4. 使用评估脚本对模型进行全面测试。
  5. 贡献新的数据集、微调技术或评估方法。

项目欢迎社区成员提交Pull Request,报告问题或提出建议,以共同推动开放指令微调研究的发展。

许可和引用

Open-Instruct项目采用Apache 2.0许可证。使用该项目的代码或模型时,请遵守相应的许可条款。对于发布的模型,V1版本模型采用特定的许可条款,而V2版本模型则采用AI2的低风险ImpACT许可证。

如果您在研究中使用了Open-Instruct项目,请引用相关论文:

@misc{wang2023far,
   title={How Far Can Camels Go? Exploring the State of Instruction Tuning on Open Resources}, 
   author={Yizhong Wang and Hamish Ivison and Pradeep Dasigi and Jack Hessel and Tushar Khot and Khyathi Raghavi Chandu and David Wadden and Kelsey MacMillan and Noah A. Smith and Iz Beltagy and Hannaneh Hajishirzi},
   year={2023},
   eprint={2306.04751},
   archivePrefix={arXiv},
   primaryClass={cs.CL}
}

总结

Open-Instruct项目为指令微调研究提供了一个强大而灵活的平台。通过整合多个数据集、实现最新的微调技术,并提供全面的评估基准,该项目为推动指令跟随语言模型的发展做出了重要贡献。随着项目的不断更新和社区的积极参与,Open-Instruct有望继续在这一重要研究领域发挥关键作用。

无论您是研究人员、开发者还是对指令微调感兴趣的爱好者,Open-Instruct项目都为您提供了宝贵的资源和工具,帮助您探索和推进这一激动人心的技术前沿。我们期待看到更多基于Open-Instruct的创新成果,共同推动人工智能向着更智能、更可靠的方向发展。

编辑推荐精选

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

Hunyuan3D-2

Hunyuan3D-2

高分辨率纹理 3D 资产生成

Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。

3FS

3FS

一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关项目。

3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。

TRELLIS

TRELLIS

用于可扩展和多功能 3D 生成的结构化 3D 潜在表示

TRELLIS 是一个专注于 3D 生成的项目,它利用结构化 3D 潜在表示技术,实现了可扩展且多功能的 3D 生成。项目提供了多种 3D 生成的方法和工具,包括文本到 3D、图像到 3D 等,并且支持多种输出格式,如 3D 高斯、辐射场和网格等。通过 TRELLIS,用户可以根据文本描述或图像输入快速生成高质量的 3D 资产,适用于游戏开发、动画制作、虚拟现实等多个领域。

ai-agents-for-beginners

ai-agents-for-beginners

10 节课教你开启构建 AI 代理所需的一切知识

AI Agents for Beginners 是一个专为初学者打造的课程项目,提供 10 节课程,涵盖构建 AI 代理的必备知识,支持多种语言,包含规划设计、工具使用、多代理等丰富内容,助您快速入门 AI 代理领域。

AEE

AEE

AI Excel全自动制表工具

AEE 在线 AI 全自动 Excel 编辑器,提供智能录入、自动公式、数据整理、图表生成等功能,高效处理 Excel 任务,提升办公效率。支持自动高亮数据、批量计算、不规则数据录入,适用于企业、教育、金融等多场景。

UI-TARS-desktop

UI-TARS-desktop

基于 UI-TARS 视觉语言模型的桌面应用,可通过自然语言控制计算机进行多模态操作。

UI-TARS-desktop 是一款功能强大的桌面应用,基于 UI-TARS(视觉语言模型)构建。它具备自然语言控制、截图与视觉识别、精确的鼠标键盘控制等功能,支持跨平台使用(Windows/MacOS),能提供实时反馈和状态显示,且数据完全本地处理,保障隐私安全。该应用集成了多种大语言模型和搜索方式,还可进行文件系统操作。适用于需要智能交互和自动化任务的场景,如信息检索、文件管理等。其提供了详细的文档,包括快速启动、部署、贡献指南和 SDK 使用说明等,方便开发者使用和扩展。

Wan2.1

Wan2.1

开源且先进的大规模视频生成模型项目

Wan2.1 是一个开源且先进的大规模视频生成模型项目,支持文本到图像、文本到视频、图像到视频等多种生成任务。它具备丰富的配置选项,可调整分辨率、扩散步数等参数,还能对提示词进行增强。使用了多种先进技术和工具,在视频和图像生成领域具有广泛应用前景,适合研究人员和开发者使用。

爱图表

爱图表

全流程 AI 驱动的数据可视化工具,助力用户轻松创作高颜值图表

爱图表(aitubiao.com)就是AI图表,是由镝数科技推出的一款创新型智能数据可视化平台,专注于为用户提供便捷的图表生成、数据分析和报告撰写服务。爱图表是中国首个在图表场景接入DeepSeek的产品。通过接入前沿的DeepSeek系列AI模型,爱图表结合强大的数据处理能力与智能化功能,致力于帮助职场人士高效处理和表达数据,提升工作效率和报告质量。

Qwen2.5-VL

Qwen2.5-VL

一款强大的视觉语言模型,支持图像和视频输入

Qwen2.5-VL 是一款强大的视觉语言模型,支持图像和视频输入,可用于多种场景,如商品特点总结、图像文字识别等。项目提供了 OpenAI API 服务、Web UI 示例等部署方式,还包含了视觉处理工具,有助于开发者快速集成和使用,提升工作效率。

下拉加载更多