资讯 社区 文档
技术能力
语音技术
文字识别
人脸与人体
图像技术
语言与知识
视频技术

创建任务运行

注意:为提升开发者使用体验,平台升级了模型调优接口。推荐使用新版模型精调接口,功能更全面、且接口更规范,详见模型调优API列表;V1版本相关接口不再升级,已于2024年9月8日将本文档迁移至历史文档;由于V1版本接口后续可能下线停止服务,为避免影响使用,建议接入新版本接口。

功能介绍

本接口用于创建训练任务运行。

权限说明

调用本文API,需符合以下权限要求,权限介绍及分配,请查看角色与权限控制列表账号创建与权限分配。需具有以下任一权限:

  • 完全控制千帆大模型平台的权限:QianfanFullControlAccessPolicy
  • 完全控制千帆大模型平台模型调优的权限:QianfanModelTuningFullControlAccessPolicy

HTTP调用

鉴权说明

调用本文API,使用“基于安全认证AK/SK”进行签名计算鉴权,即使用安全认证中的Access Key ID 和 Secret Access Key进行鉴权,具体鉴权认证机制参考HTTP调用鉴权说明

请求说明

  • 基本信息

请求地址: https://qianfan.baidubce.com/wenxinworkshop/finetune/createJob

请求方式: POST

  • Header参数
名称 类型 必填 描述
Content-Type string 固定值:application/json
x-bce-date string 当前时间,遵循ISO8601规范,格式如2016-04-06T08:23:49Z
Authorization string 用于验证请求合法性的认证信息,更多内容请参考鉴权认证机制,签名工具可参考IAM签名工具
  • Body参数
名称 类型 必填 描述
taskId int 任务ID
description string 运行描述
jobRunType int 任务运行类型,可选值如下:
· 0:普通训练
· 1:增量训练
increConfig object 增量训练基础任务信息,说明:
(1)当jobRunType为1,此字段必填
(2)目前支持的基础任务算法:
· ERNIE-Bot-turbo-0704
· ERNIE-Bot-turbo-0725
· ERNIE-Bot-turbo-0922
· Llama-2-7b
· Llama-2-13b
· SQLCoder-7B
· ChatGLM2-6B
· Baichuan2-13B
· BLOOMZ-7B
(3)基础任务需满足以下要求:peftType为ALL
baseTrainType string 基础算法类型,说明:
(1)当jobRunType为0,此字段必填
(2)可选值如下:
· ERNIE-Speed
· ERNIE-Bot-turbo
· Llama-2
· SQLCoder
· ChatGLM2
· Baichuan2
· BLOOMZ
· CodeLlama
trainType string 具体算法类型版本,说明:
(1)当jobRunType为0,此字段必填
(2)当baseTrainType为ERNIE-Bot-turbo,trainType可选值如下:
· ERNIE-Bot-turbo-0704
· ERNIE-Bot-turbo-0725
· ERNIE-Bot-turbo-0922
(3)当baseTrainType为Llama-2,trainType可选值如下:
· Llama-2-7b
· Llama-2-13b
(4)当baseTrainType为SQLCoder,trainType为固定值SQLCoder-7B
(5)当baseTrainType为ChatGLM2,trainType值为固定值ChatGLM2-6B
(6)当baseTrainType为Baichuan2,trainType为固定值Baichuan2-13B
(7)当baseTrainType为BLOOMZ,trainType为固定值BLOOMZ-7B
(8)当baseTrainType为ERNIE-Speed,trainType为固定值ERNIE-Speed
(9)当baseTrainType为CodeLlama,trainType为固定值CodeLlama-7B
trainMode string 训练方法,说明:
(1)当jobRunType为0,此字段必填
(2)固定值:SFT
peftType string parameter efficient finetuning方式,说明:
(1)当jobRunType为0时,此字段必填
(2)当trainType为ERNIE-Speed、ERNIE-Bot-turbo-0725、ERNIE-Bot-turbo-0922、SQLCoder-7B、ChatGLM2-6B、Baichuan2-13B或CodeLlama-7B,peftType可选值如下:
· ALL
· LoRA
(4)其他,peftType可选值如下:
· ALL
· P-tuning
· LoRA
trainConfig object 训练配置
trainset array 数据集配置
trainsetRate float 数据拆分比例,取值范围:[0,50]

increConfig说明

名称 类型 必填 描述
taskId int 基础任务ID
jobId int 基础任务运行ID

trainConfig说明

名称 类型 必填 描述
epoch int 迭代轮次,取值范围:[1, 50]
batchSize int 批处理大小,说明:
(1)当trainType为ERNIE-Bot-turbo-0704、ERNIE-Bot-turbo-0725、ERNIE-Bot-turbo-0922或Baichuan2-13B,该字段不需要填写
(2)其他,batchSize取值范围:[1, 4]
learningRate float 学习率,说明:
(1)当trainType为ERNIE-Bot-turbo-0704,
· peftType为ALL,learningRate取值范围[0.00001,0.00004]
· peftType为P-tuning,learningRate取值范围[0.003,0.1]
· peftType为LoRA,learningRate取值范围[0.00003,0.001]
(2)当trainType为ERNIE-Speed、ERNIE-Bot-turbo-0725或ERNIE-Bot-turbo-0922,
· peftType为ALL,learningRate取值范围[0.00001,0.00004]
· peftType为LoRA,learningRate取值范围[0.00003,0.001]
(3)当trainType为Baichuan2-13B或CodeLlama-7B,learningRate取值范围[0.0000000001,0.0002]
(4)其他,learningRate取值范围[0.0000002,0.0002]
maxSeqLen int 序列长度,说明:
(1)如果trainType为ERNIE-Speed、ERNIE-Bot-turbo-0725或ERNIE-Bot-turbo-0922时,该字段必填
(2)可选值如下:
· 4096
· 8192
loggingSteps int 保存日志间隔,说明:
(1)当trainType为ERNIE-Speed或ERNIE-Bot-turbo-0922,该字段必填
(2)取值范围[1, 100]
warmupRatio float 预热比例,说明:
(1)当trainType为ERNIE-Speed或ERNIE-Bot-turbo-0922,该字段必填
(2)取值范围[0.01, 0.5]
weightDecay float 正则化系数,说明:
(1)当trainType为ERNIE-Speed或ERNIE-Bot-turbo-0922,该字段必填
(2)取值范围[0.0001, 0.1]
loraRank int LoRA 策略中的秩,说明:
(1)当trainType为ERNIE-Speed或ERNIE-Bot-turbo-0922,且peftType为LoRA时,该字段必填
(2)可选值如下:
· 2
· 4
· 8
loraAllLinear string LoRA 所有线性层,说明:
(1)当trainType为ERNIE-Speed或ERNIE-Bot-turbo-0922,且peftType为LoRA时,该字段必填
(2)可选值如下:
· True
· False

trainset说明

名称 类型 必填 描述
type int 数据集类型,可选值如下:
1:表示平台数据集
2:表示bos数据集
id int 数据集版本ID,当type为1时,该字段必传
bosPath string 数据集版本bos路径,当type为2时,该字段必传

响应说明

名称 类型 描述
log_id string 请求ID
result object 请求结果

result说明

名称 类型 描述
id int 运行ID

请求示例(普通训练)

# 替换下列示例中的Authorization值、x-bce-date值
curl --location 'https://qianfan.baidubce.com/wenxinworkshop/finetune/createJob' \
--header 'Authorization: bce-auth-v1/f0ee7a166b934f75b8703a8079702c13/2023-09-19T13:42:13Z/180000/host;x-bce-date/9a8cfb8ee58a8f44a21a52640015de61bc55ca2e6d8cc23d080016e374525543' \
--header 'x-bce-date: 2023-09-19T13:37:10Z' \
--header 'Content-Type: application/json' \
--data '{
    "taskId": 362,
    "description": "",
    "jobRunType": 0,
    "baseTraintype": "ERNIE-Bot-turbo",
    "trainType": "ERNIE-Bot-turbo-0725",
    "trainMode": "SFT",
    "pefttype": "ALL",
    "trainConfig": {
        "epoch": 1,
        "learningRate": 0.00003,
        "maxSeqLen": 4096
    },
    "trainset": [
        {
            "type": 1,
            "id": 188
        }
    ],
    "trainsetRate": 20
}'

请求示例(增量训练)

curl --location 'https://qianfan.baidubce.com/wenxinworkshop/finetune/createJob' \
--header 'Authorization: bce-auth-v1/f0ee7axxxx3/2023-09-19T13:42:13Z/180000/host;x-bce-date/9a8cfb8exxxxx525543' \
--header 'x-bce-date: 2023-09-19T13:37:10Z' \
--header 'Content-Type: application/json' \
--data '{
    "taskId": 362,
    "description": "",
    "jobRunType": 1,
    "increConfig": {
        "taskId":362,
        "jobId":1264
    },
    "trainConfig": {
        "epoch": 1,
        "learningRate": 0.00003,
        "maxSeqLen": 4096
    },
    "trainset": [
        {
            "type": 1,
            "id": 188
        }
    ],
    "trainsetRate": 20
}'

响应示例

{
    "log_id":"123",
    "result":{
        "id":123
    }
}

SDK调用

平台支持通过Python SDK、Go SDK、Java SDK 和 Node.js SDK调用本文API,SDK调用说明文档请参考创建任务运行

错误码

若请求错误,服务器将返回的JSON文本包含以下参数:

名称 描述
error_code 错误码
error_msg 错误描述信息,帮助理解和解决发生的错误

例如参数错误返回:

{
  "error_code": 500001,
  "error_msg": "param invalid"
}

更多其他错误码,也可以查看错误码说明

上一篇
创建训练任务
下一篇
获取任务运行详情