首页
/ 一文掌握BELLE数据集:从下载到应用的全流程指南

一文掌握BELLE数据集:从下载到应用的全流程指南

2026-02-04 04:59:47作者:范垣楠Rhoda

你是否还在为找不到高质量中文对话数据而烦恼?是否想快速上手大语言模型训练却卡在数据准备阶段?本文将带你全面了解BELLE开源数据集的结构特点、获取方式及实战应用,让你轻松解决中文指令微调的数据难题。读完本文,你将能够:掌握3种数据集获取方法、理解数据格式转换技巧、学会使用评估工具验证模型效果,并获取项目全部资源链接。

📊 BELLE数据集概述

BELLE(Be Everyone's Large Language model Engine)作为开源中文对话大模型项目,提供了丰富的指令训练数据集,助力开发者快速构建专属语言模型。项目数据集主要分为基础指令集和扩展数据集两大类别,覆盖单轮问答、多轮对话、特定领域任务等多种场景。

核心数据集介绍

BELLE数据集体系包含多个规模层级,满足不同训练需求:

所有数据集均通过HuggingFace Datasets平台开放,遵循DATA_LICENSE协议,仅用于研究目的。

🔍 数据集结构解析

BELLE数据集采用JSON格式存储,包含统一的字段定义,便于模型训练时直接解析。核心测试集eval_set.json结构如下:

{
  "question": "将以下句子翻译成英语:我想学一门新语言,法语听起来很有趣。",
  "class": "translation",
  "std_answer": "I want to learn a new language and French sounds interesting."
}

主要字段说明:

  • question: 指令文本
  • class: 类别标签(如translation、qa、generation等)
  • std_answer: 标准答案(部分类型如brainstorming可为空)

数据集分布特点

BELLE评估集涵盖12个指令类型,分布均衡且贴近真实应用场景。从类别分布来看,教育咨询、创作生成和信息查询类任务占比较高,反映了中文用户的核心需求。

指令类别分布

指令长度分布显示,大多数样本集中在50-200字符区间,适合模型快速学习基本指令模式,同时包含少量长文本指令(>500字符)以锻炼模型的上下文理解能力。

指令长度分布

📥 数据集获取方法

BELLE数据集提供多种获取途径,满足不同用户需求:

1. HuggingFace Datasets直接加载

推荐使用HuggingFace官方库获取,支持流式加载和自动缓存:

from datasets import load_dataset

# 加载3.5M带类别中文指令数据集
dataset = load_dataset("BELLE-2/train_3.5M_CN_With_Category")
print(dataset['train'][0])  # 查看第一条数据

2. Git仓库克隆

通过项目仓库获取完整数据集及处理脚本:

git clone https://gitcode.com/gh_mirrors/be/BELLE
cd BELLE/data/10M  # 进入数据集目录

3. 模型配套数据

部分微调模型已集成训练数据,如BELLE-Llama2-13B-chat-0.4M在训练过程中使用的40万高质量对话数据。

🔄 数据格式转换实战

BELLE提供专用脚本将原始数据转换为模型训练所需的对话格式。以convert_to_conv_data.py为例,可将Alpaca格式数据转换为多轮对话格式:

转换脚本使用方法

python train/scripts/convert_to_conv_data.py \
  --orig_data train_1M_CN.json \
  --write_data belle_conv_data.json \
  --dataset_name belle-1m

转换前后数据对比:

  • 原始格式:包含instruction、input、output字段
  • 转换后:生成带角色标识的对话结构
{
  "id": "belle-1m-1",
  "conversations": [
    {"from": "human", "value": "解释什么是区块链技术"},
    {"from": "assistant", "value": "区块链是一种分布式账本技术..."
  ]
}

✅ 数据集质量评估

BELLE项目提供完善的评估工具集,帮助用户验证数据质量和模型效果。eval目录包含1k+测试样本和自动评分工具,支持GPT-4/ChatGPT评分。

评估工具使用流程

  1. 生成评分网页:
cd eval && python generation_html.py
  1. 打开ChatGPT_Score.html,输入API_KEY即可对模型输出进行评分:

ChatGPT评分工具

评估指标包括相关性、准确性、流畅度等维度,满分为1分,可直观反映数据集训练效果。

🚀 数据集应用场景

BELLE数据集可广泛应用于各类中文语言模型训练任务:

基础指令微调

使用train/scripts/run_sft.sh脚本,基于BELLE-7B模型和1M数据集进行微调:

bash train/scripts/single_node/run_sft.sh \
  --model_path BelleGroup/BELLE-7B-2M \
  --data_path data/1.5M/train_1M_CN.json \
  --output_dir my_belle_model

特定任务增强

针对数学能力薄弱问题,可使用math_0.25M数据集进行LoRA微调:

bash train/scripts/single_gpu/run_LoRA.sh \
  --model_path my_belle_model \
  --data_path data/math_0.25M.json \
  --lora_rank 16

多模态模型训练

结合BELLE-VL多模态模型,可将文本指令数据扩展为图文交叉任务训练数据。

📚 项目资源汇总

  • 官方文档README.md
  • 数据集下载data/
  • 训练脚本train/scripts/
  • 评估工具eval/
  • 技术报告:[docs/Towards Better Instruction Following Language Models for Chinese.pdf](https://gitcode.com/gh_mirrors/be/BELLE/blob/645084d36454cdeb4e7f1ce9b2f3426bac39f1f9/docs/Towards Better Instruction Following Language Models for Chinese.pdf?utm_source=gitcode_repo_files)
  • 模型库models/

🔚 总结与展望

BELLE数据集通过科学的构建方法和丰富的场景覆盖,为中文大模型训练提供了高质量数据基础。随着项目持续迭代,未来将推出更多领域专项数据和多模态训练样本。建议开发者根据实际需求选择合适数据集规模,结合LoRA微调等高效训练方法,以较低成本获得良好效果。

如果觉得本文对你有帮助,欢迎点赞收藏本项目,并关注BELLE官方更新。下一期我们将带来"基于BELLE数据集的模型压缩实战",敬请期待!

登录后查看全文
热门项目推荐
相关项目推荐