更新时间:2025-07-30 GMT+08:00
分享

使用数据工程构建图像问答大模型数据集

多模态大模型支持接入的数据集类型

盘古多模态大模型支持接入图片类数据集,不同场景所需数据见表2,数据集格式要求请参见图片类数据集格式要求

表1 多模态大模型

类别

模型

简介

多模态大模型

Pangu-MM-M2-Img2Txt-16K-V5.0.4.2

盘古多模态理解百亿级大模型,可以对图像、文本多模态信息进行综合理解和分析,支持16K序列,支持预训练、微调、在线推理。

表2 训练多模态大模型数据集类型要求

基模型

训练场景

文件类型

文件内容

文件格式

文件样例

多模态大模型

预训练

图片

图片+Caption

lmdb(jpg)+jsonl文件

图片以tar包格式存储,图片描述文本的类型为jsonl,示例如下:

{"image_name":"a.jpg","tar_name": "001.tar",  "caption"="一段描述"}
  • image_name:图片名称,图片名称需要与tar包内的图片名一致。
  • tar_name:图片压缩包名称。
  • caption:图片的描述文本。

微调

图片

图片+QA对

lmdb(jpg)+jsonl文件

图片以tar包格式存储,图片描述文本的类型为jsonl,示例如下:

{"tar_name":"images_0.tar","image_name":"100110.jpg","conversations":[{"question":"问题1","answer":"回答1"},{"question":"问题2","answer":"回答2"}] }
  • tar_name:图片压缩包名称。
  • image_name:图片名称,图片名称需要与tar包内的图片名一致。
  • conversations:图片的描述文本,数组结构。内容为问答对,即基于图片内容进行提问并给出回答,问答对可以是多个。

训练多模态大模型所需数据量

使用数据工程构建盘古多模态大模型数据集进行模型训练时,所需数据量见表3

表3 多模态数据大小说明

训练类型

最小数据量(图文对数据)

推荐数据量(图文对数据)

预训练

1000万对

3000万对

微调

20~30万对

100万对

多模态训练数据为tar+jsonl构成训练文件,单个tar包大小不超过500MB,文件总大小不超过100GB。

评测多模态大模型所需数据量

评测多模态大模型需要使用图片+QA对格式的数据,建议评测数据量在1000条以下。

构建多模态大模型数据集流程

在ModelArts Studio平台中,使用数据工程构建盘古多模态大模型数据集流程见使用数据工程构建图像问答大模型数据集

表4 盘古多模态大模型数据集构建流程

流程

子流程

说明

操作指导

导入数据至盘古平台

创建导入任务

将存储在OBS服务或本地的数据导入至平台统一管理,用于后续加工或发布操作。

导入数据至盘古平台

加工图片类数据集

加工图片类数据集

通过专用的加工算子对数据进行预处理,确保数据符合模型训练的标准和业务需求。不同类型的数据集使用专门设计的算子,例如去除噪声、冗余信息等,提升数据质量。

加工图片类数据集

标注图片类数据集

为无标签数据集添加准确的标签,确保模型训练所需的高质量数据。平台支持人工标注和AI预标注两种方式,用户可根据需求选择合适的标注方式。数据标注的质量直接影响模型的训练效果和精度。

标注图片类数据集

配比图片数据集

数据配比是将多个数据集按特定比例组合并发布为“发布数据集”的过程。通过合理的配比,确保数据集的多样性、平衡性和代表性,避免因数据分布不均而引发的问题。

配比图片类数据集

发布图片类数据集

评估图片类数据集

平台预置了多种数据类型的基础评估标准,包括NLP、视频和图片数据,用户可根据需求选择预置标准或自定义评估标准,从而精确优化数据质量,确保数据满足高标准,提升模型性能。

评估图片类数据集

发布图片类数据集

数据发布是将单个数据集发布为特定格式的“发布数据集”,用于后续模型训练等操作。

平台支持发布的数据集格式为默认格式、盘古格式

  • 默认格式:平台默认的格式。
  • 盘古格式:训练盘古大模型时,需要发布为该格式。当前仅文本类、图片类数据集支持发布为盘古格式。

发布图片类数据集

数据prompt拼接样例

默认prompt为:

[unused9]系统:你生成综合质量(有用性,事实性,无害性)极好的回复。[unused10][unused9]系统:你是一个擅长于文章写作、文本分析、代码编写、数学运算、逻辑推理的AI助手,专注于针对用户的问题给出高质量解答。[unused10]

输入示例1-单轮对话

{"conversations": [{"question": "图片中是否存在垃圾溢出垃圾桶的不文明卫生问题?", "answer": "是"}]}

数据处理后:

[unused9]系统:你生成综合质量(有用性,事实性,无害性)极好的回复。[unused10][unused9]系统:你是一个擅长于文章写作、文本分析、代码编写、数学运算、逻辑推理的AI助手,专注于针对用户的问题给出高质量解答。[unused10][unused9]用户:[unused18][unused19]......[unused19][unused20]图片中是否存在垃圾溢出垃圾桶的不文明卫生问题?[unused10][unused9]助手:是[unused10]

输入示例2-多轮对话

{"conversations": [{"question": "图片中是否存在垃圾溢出垃圾桶的不文明卫生问题?", "answer": "是"},{"question": "图中是否存在共享单车按规定停放的情况?", "answer": "否"}]}

数据处理后:

[unused9]系统:你生成综合质量(有用性,事实性,无害性)极好的回复。[unused10][unused9]系统:你是一个擅长于文章写作、文本分析、代码编写、数学运算、逻辑推理的AI助手,专注于针对用户的问题给出高质量解答。[unused10][unused9]用户:[unused18][unused19]......[unused19][unused20]图片中是否存在垃圾溢出垃圾桶的不文明卫生问题?[unused10][unused9]助手:是[unused10][unused9]用户:图中是否存在共享单车按规定停放的情况?[unused10][unused9]助手:否[unused10]

相关文档