1. 接口描述
接口请求域名: aiart.tencentcloudapi.com 。
商品背景生成接口根据指定的背景描述 Prompt,将商品图中的原背景替换为自定义的新背景并保留商品主体形象,实现商品背景的自由生成与更换。
商品背景生成默认提供1个并发任务数,代表最多能同时处理1个已提交的任务,上一个任务处理完毕后才能开始处理下一个任务。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
| 参数名称 | 必选 | 类型 | 描述 |
|---|---|---|---|
| Action | 是 | String | 公共参数,本接口取值:ReplaceBackground。 |
| Version | 是 | String | 公共参数,本接口取值:2022-12-29。 |
| Region | 是 | String | 公共参数,详见产品支持的 地域列表。 |
| ProductUrl | 是 | String | 商品原图 Url。 示例值:https://cos.ap-guangzhou.myqcloud.com/product.jpg |
| Prompt | 是 | String | 对新背景的文本描述。 示例值:放在充满鲜花的环境里,简洁风格,清新自然,广告摄影 |
| NegativePrompt | 否 | String | 反向提示词。 示例值:黑白 |
| Product | 否 | String | 商品图中的商品主体名称。 示例值:汽车 |
| BackgroundTemplate | 否 | String | 背景模板。 示例值:彩虹渐变 |
| MaskUrl | 否 | String | 商品 Mask 图 Url,要求背景透明,保留商品主体。 示例值:https://cos.ap-guangzhou.myqcloud.com/mask.jpg |
| Resolution | 否 | String | 替换背景后生成的商品图分辨率。 示例值:1280:1280 |
| LogoAdd | 否 | Integer | 为生成结果图添加标识的开关,默认为1。 示例值:1 |
| LogoParam | 否 | LogoParam | 标识内容设置。 |
| RspImgType | 否 | String | 返回图像方式(base64 或 url) ,二选一,默认为 base64。url 有效期为1小时。 示例值:url |
3. 输出参数
| 参数名称 | 类型 | 描述 |
|---|---|---|
| ResultImage | String | 根据入参 RspImgType 填入不同,返回不同的内容。 示例值:https://aiart-xxx.cos.ap-guangzhou.myqcloud.com/xxx.jpg |
| MaskImage | String | 如果 MaskUrl 未传,则返回使用内置商品分割算法得到的 Mask 结果。 示例值:https://aiart-xxx.cos.ap-guangzhou.myqcloud.com/mask.jpg |
| RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 成功调用并生成图片
成功调用并生成图片
输入示例
POST / HTTP/1.1
Host: aiart.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: ReplaceBackground
<公共请求参数>
{
"ProductUrl": "https://cos.ap-guangzhou.myqcloud.com/product.jpg",
"MaskUrl": "https://cos.ap-guangzhou.myqcloud.com/mask.jpg",
"Prompt": "backpack,real picture quality, fabric texture, fine, cartoon",
"RspImgType": "url"
}
输出示例
{
"Response": {
"RequestId": "0d0728ed-f777-4861-aa4b-5a6167daa0b6",
"ResultImage": "https://aiart-xxx.cos.ap-guangzhou.myqcloud.com/xxx.jpg?q-sign-algorithm=sha1&q-ak=xxxxx&q-sign-time=1731574045;1731577645&q-key-time=1731574045;1731577645&q-header-list=host&q-url-param-list=&q-signature=31fe75c1c18c3d91db59508961209dd37aaf41c7"
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for Java: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for PHP: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for Go: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for Node.js: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for .NET: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for C++: CNB, GitHub, Gitee
- Tencent Cloud SDK 3.0 for Ruby: CNB, GitHub, Gitee
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
| 错误码 | 描述 |
|---|---|
| AuthFailure.UnauthorizedOperation | 无权执行该操作,请检查您的CAM策略,确保您拥有对应的CAM权限。 |
| FailedOperation.GenerateImageFailed | 生成图片审核不通过,请重试。 |
| FailedOperation.ImageDecodeFailed | 图片解码失败。 |
| FailedOperation.ImageDownloadError | 图片下载错误。 |
| FailedOperation.ImageResolutionExceed | 图片分辨率过大,超过2000*2000。 |
| FailedOperation.ImageSizeExceed | base64编码后的图片数据大小不超过10M。 |
| FailedOperation.InnerError | 服务内部错误,请稍后重试。 |
| FailedOperation.RequestEntityTooLarge | 整个请求体太大(通常主要是图片)。 |
| FailedOperation.RequestTimeout | 后端服务超时。 |
| FailedOperation.RpcFail | RPC请求失败,一般为算法微服务故障。 |
| FailedOperation.ServerError | 服务内部错误。 |
| FailedOperation.Unknown | 未知错误。 |
| InvalidParameter.InvalidParameter | 参数不合法。 |
| InvalidParameterValue.ImageEmpty | 图片为空。 |
| InvalidParameterValue.ParameterValueError | 参数字段或者值有误 |
| InvalidParameterValue.StyleConflict | 1xx和其他风格不可混合使用。 |
| InvalidParameterValue.TextLengthExceed | 输入文本过长,请更换短一点的文本后重试。 |
| InvalidParameterValue.UrlIllegal | URL格式不合法。 |
| OperationDenied.ImageIllegalDetected | 图片包含违法违规信息,审核不通过。 |
| OperationDenied.TextIllegalDetected | 文本包含违法违规信息,审核不通过。 |
| RequestLimitExceeded | 请求的次数超过了频率限制。 |
| RequestLimitExceeded.JobNumExceed | 同时处理的任务数过多,请稍后重试。 |
| ResourceUnavailable.Delivering | 资源正在发货中。 |
| ResourceUnavailable.InArrears | 账号已欠费。 |
| ResourceUnavailable.LowBalance | 余额不足。 |
| ResourceUnavailable.NotExist | 计费状态未知,请确认是否已在控制台开通服务。 |
| ResourceUnavailable.StopUsing | 账号已停服。 |
| ResourcesSoldOut.ChargeStatusException | 计费状态异常。 |