更新时间:2025-09-16 GMT+08:00
分享

发布文本类数据集

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

文本类数据集支持发布的格式为:

  • 标准格式:数据工程功能支持的原始格式。
    标准格式的示例如下,其中,contexttarget是键值对。
    {"context": "你好,请介绍自己", "target": "我是盘古大模型"}
  • 盘古格式:训练盘古大模型时,需要将数据集格式发布为“盘古格式”。为适配不同盘古模型的数据规范,文本类型-单轮问答、单轮问答(带人设)、多轮问答、多轮问答(带人设)、DPO、DPO(带人设)发布时需选择盘古格式-非思维链或盘古格式-思维链进行发布。
    盘古格式-非思维链的示例如下,其中,contexttarget是键值对。与标准格式不同,context是一个数组。
    {"context":["你好,请介绍自己"],"target":"我是盘古大模型"}
  • 盘古格式-思维链模式的示例如下,其中,context,targetthinking是键值对。与盘古-非思维链格式相比,多了一个thinking键值对,thinking的值是一个数组。
    {"context":["你好,请介绍自己"],"target":"我是盘古大模型","thinking": ["好的,用户让我介绍一下自己。首先,我需要明确用户的身份和使用场景"]}

创建文本类数据集发布任务

创建文本类数据集发布任务步骤如下:

  1. 登录ModelArts Studio大模型开发平台,在“我的空间”模块,单击进入所需空间。
    图1 我的空间
  2. 在左侧导航栏中选择“数据工程 > 数据发布 > 发布任务”,单击界面右上角“创建发布任务”。
  3. 在“创建发布任务”页面,筛选数据集模态,如“文本”类型的数据集。
    图2 筛选“文本”类数据集

  4. 选择数据集,单击“下一步”。
  5. 在“基本配置”中选择数据用途、数据集可见性和格式配置,如图3

    由于数据工程需要支持对接盘古大模型或三方大模型,为了使这些数据集能够被这些大模型正常训练,平台支持发布不同格式的数据集。

    当前支持标准格式、盘古格式:
    • 标准格式:数据工程功能支持的原始格式。该格式的数据集可发布到资产中,但下游模型开发不可见。“使用场景”选择“其他”时使用。
    • 盘古格式:专门针对训练模型为盘古大模型而定义的数据集格式,该数据集将被用于ModelArts Studio大模型开发平台的模型开发中使用。为适配不同盘古模型的数据规范,在数据集格式配置时,需要选择“选择盘古格式-非思维链”或“盘古格式-思维链进行发布”。在“使用场景”为“STUDIO模型训练”时使用。
      图3 格式配置

    • 当使用发布的数据集训练盘古大模型时,请选择“格式配置”为盘古格式。
    • 当发布文本数据集为如下类型时,请选择“格式配置”为“盘古格式-非思维链”或“盘古格式-思维链”。
      • 文本类型-单轮问答
      • 单轮问答(带人设)
      • 多轮问答
      • 多轮问答(带人设)
      • DPO
      • DPO(带人设)
    • 当发布文本数据集为“预训练”类型时,请选择“格式配置”为“盘古格式”。
    • 当发布成“盘古格式-非思维链”时会把数据集中符合“盘古格式-思维链”的数据剔除,反之发布“盘古格式-思维链”则会把“盘古格式-非思维链”的数据剔除。
  6. 填写数据集名称、描述,设置扩展信息后,单击“确认”,发布数据集。

    扩展信息会自动保留所选数据集的属性,并且在选择发布“盘古格式-思维链”数据集之后,后端会自动给扩展信息的标签(simple_tag)加上“reasoner”标签,模型会根据该标签对数据集进行过滤。

    图4 生成发布数据集
  7. (可选)如果发布数据集为“预训练”类型时,在完成扩展信息设置之后需要单击“下一步”进行资源设置后才能单击“确认”进行发布。
    图5 资源配置

    参数说明见表1

    表1 参数配置

    参数名称

    参数说明

    numExecutors

    Executor的数量,默认值2。Executor是运行在工作节点上的进程,它负责执行具体的task任务,并将计算结果返回给Driver。每个Executor每个核同时能跑一个task任务,所以增加了Executor的个数相当于增大了任务的并发度。在资源充足的情况下,可以相应增加Executor的个数,以提高运行效率。

    numExecutors * executorMemory最小值为4,最大值为16。

    executorCores

    每个Executor进程使用的CPU内核数量,默认值2。每个Executor多个核同时能跑多个task任务,相当于增大了任务的并发度。但是由于所有核共用Executor的内存,所以要在内存和核数之间做好平衡。

    numExecutors * executorMemory最小值为4,最大值为16。executorCores和executorMemory的比例需要在1:2~1:4之间。

    executorMemory

    每个Executor进程使用的内存数量,默认值4。Executor的内存主要用于任务执行、通信等。当一个任务很大的时候,可能需要较多资源,因而内存也可以做相应的增加;当一个任务较小运行较快时,就可以增大并发度减少内存。

    executorCores和executorMemory的比例需要在1:2~1:4之间。

    driverCores

    驱动程序进程使用的CPU内核数量,默认值2。Driver负责任务的调度,和Executor之间的消息通信。

    driverCores和driverMemory的比例需要在1:2~1:4之间。

    driverMemory

    驱动程序进程使用的内存数量,默认值4。Driver负责任务的调度,和Executor之间的消息通信。当任务数变多,任务平行度增大时,Driver内存都需要相应增大。

    driverCores和driverMemory的比例需要在1:2~1:4之间。

  8. 当任务状态显示为“运行成功”时,说明数据发布任务执行成功,生成的“发布数据集”可在“数据工程 > 数据管理 > 数据集 > 发布数据集”中查看。

相关文档