创建模型精调作业
更新时间:2024-07-25
功能介绍
本接口用于创建模型精调作业。
SDK调用
使用说明
调用本文API,需使用安全认证AK/SK鉴权,调用流程及鉴权介绍详见SDK安装及使用流程。
调用示例
import os
import qianfan
# 使用安全认证AK/SK鉴权,通过环境变量方式初始化;替换下列示例中参数,安全认证Access Key替换your_iam_ak,Secret Key替换your_iam_sk
os.environ["QIANFAN_ACCESS_KEY"] = "your_iam_ak"
os.environ["QIANFAN_SECRET_KEY"] = "your_iam_sk"
from qianfan import resources
create_job_resp = resources.FineTune.V2.create_job(
name="test_crea",
model="ERNIE-Speed-8K",
train_mode='SFT',
description='eb_speed_tasks',
)
print(create_job_resp)
返回示例
QfResponse(
code=200,
headers={...},
body={
"requestId": "db9f0333-f72c-487e-b682-f1c8b6c8bdd6",
"result": {"jobId": "job-6ucxxxxx8q0"},
},
)
请求参数
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
name | string | 是 | 作业名称,取值范围:字符串长度为 [2, 20] |
description | string | 否 | 作业描述,说明: (1)取值范围:字符串长度为 [0, 500] (2)不支持空格 |
model | string | 是 | 基础模型版本,支持对话续写类、图像生成类模型版本,说明: (1)对话续写类模型版本,该字段可选值如下: · ERNIE-Speed-8K · ERNIE-3.5-8K · ERNIE-Lite-8K-0308 · ERNIE-Lite-8K-0704 · ERNIE-Lite-8K-0725 · ERNIE-Lite-8K-0922 · ERNIE-Lite-128K-0419 · ERNIE-Tiny-8K · Qianfan-Chinese-Llama-2-7B-32K · Qianfan-Chinese-Llama-2-13B-v1 · Qianfan-Chinese-Llama-2-13B-v2 · Mixtral-8x7B · SQLCoder-7B · ChatGLM2-6B-32K · ChatGLM3-6B · ChatGLM2-6B · Baichuan2-7B-Chat · Baichuan2-13B-Chat · BLOOMZ-7B · CodeLlama-7B (2)图像类模型版本,该字段可选值如下: · WENXIN-YIGE · Stable-Diffusion-XL-Base-1.0 |
train_mode | string | 是 | 调优的训练模式类型,说明:该字段取值,请参考模型支持情况 |
params_scale | string | 否 | 调优的参数规模,说明:该字段取值,请参考模型支持情况 |
hyper_params | Dict[str, Any] | 否 | 超参数配置,说明:该字段取值详情参考模型支持情况 |
hyper_params说明
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
epoch | int | 否 | 迭代轮次,说明:该字段取值详情参考模型支持情况 |
learningRate | float | 否 | 学习率,说明:该字段取值详情参考模型支持情况 |
batchSize | int | 否 | 批处理大小,说明:该字段取值更多详情参考模型支持情况 |
maxSeqLen | int | 否 | 序列长度,说明:该字段取值更多详情参考模型支持情况 |
loggingSteps | int | 否 | 保存日志间隔,说明:该字段取值更多详情参考模型支持情况 |
warmupRatio | float | 否 | 预热比例,说明:该字段取值更多详情参考模型支持情况 |
weightDecay | float | 否 | 正则化系数,说明:该字段取值更多详情参考模型支持情况 |
loraRank | int | 否 | LoRA 策略中的秩,说明:该字段取值更多详情参考模型支持情况 |
loraAlpha | int | 否 | 说明:该字段取值更多详情参考模型支持情况 |
loraAllLinear | string | 否 | LoRA 所有线性层,说明:该字段取值更多详情参考模型支持情况 |
loraTargetModules | string[] | 否 | 说明:该字段取值更多详情参考模型支持情况 |
loraDropout | float | 否 | 说明:该字段取值更多详情参考模型支持情况 |
schedulerName | string | 否 | 说明:该字段取值更多详情参考模型支持情况 |
Packing | string | 否 | 可选值:true、false 或 auto,默认值auto,说明:该字段取值更多详情参考模型支持情况 |
gradientAccumulationSteps | int | 否 | 说明:该字段取值更多详情参考模型支持情况 |
pseudoSamplingProb | float | 否 | 说明:该字段取值更多详情参考模型支持情况 |
checkpointCount | int | 否 | 说明:该字段取值更多详情参考模型支持情况 |
saveStep | int | 否 | 说明:该字段取值更多详情参考模型支持情况 |
dpoBeta | float | 否 | 说明:该字段取值更多详情参考模型支持情况 |
seed | int | 否 | 说明:该字段取值更多详情参考模型支持情况 |
lrSchedulerType | string | 否 | 说明:该字段取值更多详情参考模型支持情况 |
lrEnd | float | 否 | 说明:该字段取值更多详情参考模型支持情况 |
power | int | 否 | 说明:该字段取值更多详情参考模型支持情况 |
返回参数
名称 | 类型 | 描述 |
---|---|---|
requestId | string | 请求ID |
result | object | 请求结果 |
result说明
名称 | 类型 | 描述 |
---|---|---|
jobId | string | 作业ID |
HTTP调用
鉴权说明
调用本文API,使用“基于安全认证AK/SK”进行签名计算鉴权,即使用安全认证中的Access Key ID 和 Secret Access Key进行鉴权,具体鉴权认证机制参考HTTP调用鉴权说明。
请求说明
- 基本信息
请求地址: https://qianfan.baidubce.com/v2/finetuning
请求方式: POST
- Header参数
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
Content-Type | string | 是 | 固定值:application/json |
x-bce-date | string | 否 | 当前时间,遵循ISO8601规范,格式如2016-04-06T08:23:49Z |
Authorization | string | 是 | 用于验证请求合法性的认证信息,更多内容请参考鉴权认证机制,签名工具可参考IAM签名工具 |
- Query参数
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
Action | string | 是 | 方法名称,固定值CreateFineTuningJob |
- Body参数
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
name | string | 是 | 作业名称,取值范围:字符串长度为 [2, 20] |
description | string | 否 | 作业描述,取值范围:字符串长度为 [0, 500] |
model | string | 是 | 基础模型版本,支持对话续写类、图像生成类模型版本,说明: (1)对话续写类模型版本,该字段可选值如下: · ERNIE-3.5-8K · ERNIE-Speed-8K · ERNIE-Lite-8K-0704 · ERNIE-Lite-8K-0725 · ERNIE-Lite-8K-0922 · ERNIE-Lite-8K-0308 · ERNIE-Lite-128K-0419 · ERNIE-Tiny-8K · Meta-Llama-3-8B · Qianfan-Chinese-Llama-2-7B · Qianfan-Chinese-Llama-2-7B-32K · Qianfan-Chinese-Llama-2-13B-v1 · Qianfan-Chinese-Llama-2-13B-v2 · Mixtral-8x7B · SQLCoder-7B · ChatGLM2-6B-32K · ChatGLM2-6B · ChatGLM3-6B · Baichuan2-7B-Chat · Baichuan2-13B-Chat · BLOOMZ-7B · CodeLlama-7B (2)图像类模型版本,该字段可选值如下: · WENXIN-YIGE · Stable-Diffusion-XL-Base-1.0 |
trainMode | string | 是 | 调优的训练模式类型,说明:该字段取值,请参考模型支持情况 |
parameterScale | string | 否 | 调优的参数规模,说明:该字段取值,请参考模型支持情况 |
hyperParameterConfig | object | 否 | 超参数配置 |
hyperParameterConfig说明
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
epoch | int | 否 | 迭代轮次,说明:该字段取值详情参考模型支持情况 |
learningRate | float | 否 | 学习率,说明:该字段取值详情参考模型支持情况 |
batchSize | int | 否 | 批处理大小,说明:该字段取值更多详情参考模型支持情况 |
maxSeqLen | int | 否 | 序列长度,说明:该字段取值更多详情参考模型支持情况 |
loggingSteps | int | 否 | 保存日志间隔,说明:该字段取值更多详情参考模型支持情况 |
warmupRatio | float | 否 | 预热比例,说明:该字段取值更多详情参考模型支持情况 |
weightDecay | float | 否 | 正则化系数,说明:该字段取值更多详情参考模型支持情况 |
loraRank | int | 否 | LoRA 策略中的秩,说明:该字段取值更多详情参考模型支持情况 |
loraAlpha | int | 否 | 说明:该字段取值更多详情参考模型支持情况 |
loraAllLinear | string | 否 | LoRA 所有线性层,说明:该字段取值更多详情参考模型支持情况 |
loraTargetModules | string[] | 否 | 说明:该字段取值更多详情参考模型支持情况 |
loraDropout | float | 否 | 说明:该字段取值更多详情参考模型支持情况 |
schedulerName | string | 否 | 说明:该字段取值更多详情参考模型支持情况 |
Packing | string | 否 | 可选值:true、false 或 auto,默认值auto,说明:该字段取值更多详情参考模型支持情况 |
gradientAccumulationSteps | int | 否 | 说明:该字段取值更多详情参考模型支持情况 |
pseudoSamplingProb | float | 否 | 说明:该字段取值更多详情参考模型支持情况 |
checkpointCount | int | 否 | 说明:该字段取值更多详情参考模型支持情况 |
saveStep | int | 否 | 说明:该字段取值更多详情参考模型支持情况 |
dpoBeta | float | 否 | 说明:该字段取值更多详情参考模型支持情况 |
seed | int | 否 | 说明:该字段取值更多详情参考模型支持情况 |
lrSchedulerType | string | 否 | 说明:该字段取值更多详情参考模型支持情况 |
lrEnd | float | 否 | 说明:该字段取值更多详情参考模型支持情况 |
power | int | 否 | 说明:该字段取值更多详情参考模型支持情况 |
响应说明
名称 | 类型 | 描述 |
---|---|---|
requestId | string | 请求ID |
result | object | 请求结果 |
result说明
名称 | 类型 | 描述 |
---|---|---|
jobId | string | 作业ID |
请求示例
curl --location 'https://qianfan.baidubce.com/v2/finetuning?Action=CreateFineTuningJob' \
--header 'Authorization: bce-auth-v1/f0exxx/2023-09-19T13:42:13Z/180000/host;x-bce-date/9a8cfb8exxxx' \
--header 'x-bce-date: 2023-09-19T13:37:10Z' \
--header 'Content-Type: application/json' \
--data '{
"name":"test_name",
"description":"test_description",
"model":"ERNIE-Lite-8K-0922",
"trainMode":"SFT"
}'
响应示例
{
"requestId":"1bef3f87-c5b2-4419-936b-50f9884f10d4",
"result":{
"jobId":"job-ftp4icwebtnc"
}
}
错误码
若请求错误,服务器将返回的JSON文本包含以下参数:
名称 | 描述 |
---|---|
error_code | 错误码 |
error_msg | 错误描述信息,帮助理解和解决发生的错误 |
例如Access Token失效返回:
{
"error_code": 110,
"error_msg": "Access token invalid or no longer valid"
}
更多千帆大模型平台其他错误码,也可以查看错误码说明。