人物形象训练API详情

人物形象训练

说明

支持的领域 / 任务:aigc /facechain人物写真生成

对上传的图像压缩包进行模型训练,从而获得该图像中对应人物的resource,基于该resource可以实现人物的写真生成。

人物形象训练是人物写真生成的前置环节,只有在针对某人物进行形象训练并成功获得形象resource后,才可基于此进行生成。

模型概览

模型名

模型简介

facechain-finetune

对上传的图像进行模型训练,从而获得该图像中对应人物的resource,基于该resource可以实现人物的写真生成。

HTTP调用接口

功能描述

本接口为模型定制类服务,需要相对较长的算法调用时间,所以在接口层面采用了异步调用的方式进行任务提交,在通过任务接口提交作业之后,系统会返回对应的作业ID,随后可以通过对模型定制类任务的查询/管理接口进行相应操作。

前提条件

说明

接口限制:对单账户(含主账号与RAM子账号)任务下发接口限制QPS2,并发任务数量限制为1。

准备训练数据

准备1~10张包含人脸的图片,您可以通过以下方式将这些图片提供给训练服务:

1、将这些图片存储在文件服务(例如阿里云oss)中,并生成授权的访问链接【推荐】

2、如果您没有合适的文件服务,可以将这些图片分别或打包成zip文件上传至大模型服务平台提供的模型定制文件管理服务中,并获取file_id。

文件管理

您可以使用DashScope提供的文件服务来管理您的训练文件,详细的api请参考模型定制文件管理服务

创建模型定制任务接口调用

POST https://dashscope.aliyuncs.com/api/v1/fine-tunes

功能描述

完成训练数据的上传之后,就可以使用在上传之后得到的 file_id 发起facechain模型定制任务。

入参描述

字段

类型

传参方式

必选

描述

示例值

Content-Type

String

Header

请求类型:application/json

application/json

Authorization

String

Header

API-Key,例如:Bearer d1**2a

Bearer d1**2a

model

String

Body

用于定制的基础模型名

facechain-finetune

training_file_ids

Array

Body

训练集文件列表,此处使用前述准备好的训练文件,支持url、file_id及两者混合

"training_file_ids":[ "https://dashscope.oss-cn-beijing.aliyuncs.com/samples/fine-tune/facechain/sample1.jpg","https://dashscope.oss-cn-beijing.aliyuncs.com/samples/fine-tune/facechain/sample2.jpg","https://dashscope.oss-cn-beijing.aliyuncs.com/samples/fine-tune/facechain/sample3.jpg"]

出参描述

字段

类型

描述

示例值

output.job_id

String

本次创建请求产生的定制任务的任务id

xxxxxxxxx

output.status

String

本次创建请求产生的定制任务的状态

“PENDING”

request_id

String

本次请求的系统唯一码

7574ee8f-38a3-4b1e-9280-11c33ab46e51

output.task_status

String

提交异步任务后的 作业状态。

“PENDING”

请求示例

说明

需要使用您的API-KEY替换示例中的 your-dashscope-api-key ,代码才能正常运行。

curl --location 'https://dashscope.aliyuncs.com/api/v1/fine-tunes' \
--header 'Authorization: Bearer <YOUR-DASHSCOPE-API-KEY>' \
--header 'Content-Type: application/json' \
--data '{ "model":"facechain-finetune", 
"training_file_ids":[ "66e83f2f-efd4-4367-8c45-9500f715c3" ],
    }'

响应示例

{
    "request_id": "39591a98-4bbd-967c-846c-dc98ecd810f2",
    "output": {
        "job_id": "ft-202308291948-edc2",
        "status": "PENDING",
        "create_time": "2023-08-29 19:48:24"
    }
}

检查定制任务状态接口

GET https://dashscope.aliyuncs.com/api/v1/fine-tunes/<job_id>

功能描述

查询模型定制任务的状态,并在任务完成之后获取对应的任务结果。当训练任务成功之后,就可以使用对应的 finetuned_output 内容做推理调用。

入参描述

字段

类型

传参方式

必选

描述

示例值

Content-Type

String

Header

请求类型:application/json

application/json

Authorization

String

Header

API-Key,例如:Bearer d1**2a

Bearer d1**2a

job_id

String

URL

需要查询的作业 id

ft-202308291948-edc2

出参描述

字段

类型

描述

示例值

output.job_id

String

定制任务的任务id

xxxxxxxxx

output.status

String

定制任务的状态

"SUCCEEDED"

output.model

String

定制任务的基础模型

output.finetuned_output

String

定制任务产出的模型,定制任务成功后才显示该字段,后续将使用这个模型做推理调用

output.training_file_ids

Array

定制任务使用的训练文件

request_id

String

本次请求的系统唯一码

7574ee8f-38a3-4b1e-9280-11c33ab46e51

请求示例

说明

需要使用您的API-KEY替换示例中的 your-dashscope-api-key ,代码才能正常运行。

curl --location 'https://dashscope.aliyuncs.com/api/v1/fine-tunes/ft-202308291948-edc2' \ 
--header 'Authorization: Bearer <YOUR-DASHSCOPE-API-KEY>' \
--header 'Content-Type: application/json' 

响应示例

{
    "request_id": "dc2d8515-d681-9a96-84f1-e8b30757257a",
    "output": {
        "job_id": "ft-202308291948-edc2",
        "status": "SUCCEEDED",
        "finetuned_output": "facechain-png-ft-202308291948-edc2",
        "model": "facechain",
        "training_file_ids": [
            "66e83f2f-efd4-4367-8c45-9f6500f715c3"
        ],
        "validation_file_ids": [],
        "hyper_parameters": {},
        "create_time": "2023-08-29 19:48:24"
    }
}

其他更多定制任务的列举、删除等能力,请参考模型定制API详情

状态码说明

大模型服务平台通用状态码请查阅:状态码说明

同时本模型还有如下特定错误码:

http状态码

错误码(code)

错误信息(message)

含义说明

处理方式

400

InvalidParameter

Missing training files

参数错误,缺少参数或者参数格式问题等

根据错误信息,修正您的参数

400

UnsupportedOperation

The fine-tune job can not be deleted because it is succeeded,failed or canceled

当资源处于特定状态时,无法对其进行操作

待要操作的资源到达可操作状态时再进行操作

404

NotFound

Not found!

要查询/操作的资源不存在

检查要查询/操作的资源id是否错误

409

Conflict

Model instance xxxxx already exists, please specify a suffix

已存在deployed_model名为xxxxx的部署实例,需要指定后缀进行区分

为部署指定唯一的后缀

429

Throttling

Too many fine-tune job in running, please retry later

资源的创建触发平台限制

稍后再试

500

InternalError

Internal server error!

内部错误

记录reqeust_id,通过工单联系阿里云