电商万创附加组件利用 AI 能力,通过创意流配置,实现生成图等功能,为电商平台、垂直品牌厂商及电商平台工具提供专业级商品创作能力,提升商品货架素材质量并降低经营成本。本文介绍如何使用电商万创附加组件。
效果示例
使用场景
以下为电商万创组件的主要使用场景。
电商平台: 帮助平台商家提升商品视觉效果,提高商品转化率。垂直品牌厂商: 为品牌提供统一的商品视觉风格,增强品牌形象。电商平台工具: 作为平台工具的一部分,为商家提供更便捷高效的商品素材制作工具。
使用限制
为确保能够生成图像,请满足以下限制。
输入分辨率 :短边 ⩾ 512 px,长边 ⩽ 1024 px。如果为其他分辨率,请先通过模板变更图片分辨率。输入大小 :单张图 <= 10 MB。如果超出 10 MB,请先通过模板压缩图片大小。输入格式 :.png、.jpg、.jpeg、.webp。如果为其他格式,请先通过模板变更图片格式。输出格式 :.png。可通过模板二次处理为其他格式。输出分辨率 :短边 ⩾ 512 px,长边 ⩽ 1024 px。可通过模板二次处理为其他分辨率。
使用方法
前提条件
步骤一:创建创意流 进入我的创意流 页面,单击新建创意流 并在弹窗中完成相关配置。
步骤二:调用 AI 能力
方式一:通过 API 调用
同步处理 调用同步处理接口 AIProcess ,提交一条 URL 或 URI 资源执行同步 AI 图像处理任务。请求示例
POST https://imagex.volcengineapi.com/?Action=AIProcess&Version=2023-05-01
{
"ServiceId": "91**2g", // 必选。服务 ID。
"WorkflowTemplateId": "system_workflow_product_img", // 必选。模板 ID。
"WorkflowParameter": "{\"Input\":{\"ObjectKey\":\"a.webp\",\"DataType\":\"uri\"},\"CreativeFlowId\":\"6803aa651f57***ee5a6980f\",\"ProductAIGCType\":\"image\",\"ComprehensiveEnhance\":{\"Enable\":true,\"Mode\":0},\"ProductAIGC\":{\"PositivePrompt\":\"On a light-colored wooden table, with a light-colored wall in the background, indoor lighting, bright warm tones, and a modern minimalist style.\",\"OutputHeight\":512,\"OutputWidth\":512,\"BatchSize\":2,\"ProductRatio\":0.6,\"IpAdapterScale\":0.9,\"ImageRefType\":\"uri\",\"ImageRefKey\":\"b.png\",\"CX\":0,\"CY\":0},\"Version\":\"2.0\"}" // 必选。模板参数。
}
其中,
ServiceId:服务 ID,可从服务管理 页面获取。WorkflowTemplateId:取值固定为 system_workflow_product_img。WorkflowParameter:根据输入参数 ,设置该参数取值。返回示例
{
"ResponseMetadata": {
"RequestId": "20230604110420****100232280022D31",
"Action": "AIProcess",
"Version": "2023-05-01",
"Service": "ImageX",
"Region": "cn-north-1"
},
"Result": {
"Output": "{\"GenImgs\":[{\"ObjectKey\":\"veImageX-store/6803aa651f57***ee5a6980f/生成图/217a5554-a557-4f8a-970b-1b171d27ed95/83a976bc52afe4ec27d5b74b7e433a***1eaaa6da0be53dd2088ff9986b4cce3.png\",\"Size\":454305,\"Format\":\"png\"},{\"ObjectKey\":\"veImageX-store/6803aa651f57***ee5a6980f/生成图/217a5554-a557-4f8a-970b-1b171d27ed95/aed7479a166e5fdc253eb8dc23b2de9***4059e1329931ebc4a06bfbcb058846.png\",\"Size\":549069,\"Format\":\"png\"}],\"DownloadObjectKey\":\"veImageX-store/6803aa651f57***ee5a6980f/原始图/217a5554-a557-4f8a-970b-1b171d27ed95/79ba1fc8b2922dd2d973a32b83cb3615***2910ed4da4d12f10fddafb6e672f2.png\"}"
}
}
Output 的参数含义详见输出参数 。
异步处理 批量执行 AI 图像处理任务。
调用异步处理接口 CreateImageAITask ,创建批量处理任务。请求示例
POST https://imagex.volcengineapi.com/?Action=CreateImageAITask&Version=2023-05-01
{
"ServiceId": "5s****fo", // 必选。服务 ID。
"DataType": "uri", // 必选。图片地址类型,支持取值 uri 和 url。
"DataList": [
"a.png",
"uridemo.png"
], // 必选。图片 URI 或 URL 列表(URI 不包含 tos-*-i-* 前缀)。
"CallbackConf": { // 可选。回调配置。
"Method": "HTTP", // 必选。回调方式,取值固定为 HTTP。
"Endpoint": "https://demo.com", // 必选。回调地址,用于接收处理结果。
"DataFormat": "JSON", // 可选。回调数据格式,支持取值 XML 和 JSON。
"Args": "product id", // 可选。业务自定义回调参数。
"Type": "task" // 可选。回调触发类型,支持取值 task 和 entry。默认值为 entry。
},
"WorkflowParameter": "{\"CreativeFlowId\":\"6803aa651f57***ee5a6980f\",\"ProductAIGCType\":\"image\",\"ComprehensiveEnhance\":{\"Enable\":true,\"Mode\":0},\"ProductAIGC\":{\"PositivePrompt\":\"On a light-colored wooden table, with a light-colored wall in the background, indoor lighting, bright warm tones, and a modern minimalist style.\",\"OutputHeight\":512,\"OutputWidth\":512,\"BatchSize\":2,\"ProductRatio\":0.6,\"IpAdapterScale\":0.9,\"ImageRefType\":\"uri\",\"ImageRefKey\":\"b.png\",\"CX\":0,\"CY\":0},\"Version\":\"2.0\"}", // 必选。模板参数。
"WorkflowTemplateId": "system_workflow_product_img", // 必选。模板 ID。
"QueueId": "62f224ce61****826e38c29a" // 必选。队列 ID。
}
其中,
WorkflowTemplateId:取值固定为 system_workflow_product_img。WorkflowParameter:根据输入参数 ,设置该参数取值。返回示例 {
"ResponseMetadata": {
"RequestId": "20230604110420****100232280022D31",
"Action": "CreateImageAITask",
"Version": "2023-05-01",
"Service": "ImageX",
"Region": "cn-north-1"
},
"Result": {
"TaskId": "649b9d3****5537684010a7", // 任务 ID。
"QueueId": "62f224ce61****826e38c29a" // 队列 ID。
}
}
通过以下任一方式获取图像处理结果。
回调通知:如果您在上一步设置了回调地址(Endpoint),则当任务完成后,veImageX 会向该回调地址发送回调消息。详见回调 。 主动查询:如果您未设置回调地址,调用 GetImageAIDetails 接口,获取图像处理结果。
方式二:通过服务端 SDK 调用 veImageX 提供了以下编程语言的 SDK,方便您调用 API。
前提条件 调用接口前,请先完成 Golang SDK 的安装及初始化 操作。
同步处理 提交一条 URL 或 URI 资源执行同步 AI 图像处理任务。详见同步处理 。
package imagex_test
import (
"context"
"encoding/json"
"fmt"
"testing"
"github.com/volcengine/volc-sdk-golang/base"
imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)
func Test_AIProcess(t *testing.T) {
instance := imagex.NewInstance()
instance.SetCredential(base.Credentials{
// 强烈建议不要把 ak 和 sk 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取 ak 和 sk,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ak 和 sk。
AccessKeyID: "ak",
SecretAccessKey: "sk",
})
param := &imagex.AIProcessReq{
AIProcessBody: &imagex.AIProcessBody{
ServiceID: "91**2g", // 必选。服务 ID。
WorkflowTemplateID: "system_workflow_product_img", // 必选。模板 ID。固定取值。
WorkflowParameter: "{\"Input\":{\"ObjectKey\":\"a.webp\",\"DataType\":\"uri\"},\"CreativeFlowId\":\"6803aa651f57***ee5a6980f\",\"ProductAIGCType\":\"image\",\"ComprehensiveEnhance\":{\"Enable\":true,\"Mode\":0},\"ProductAIGC\":{\"PositivePrompt\":\"On a light-colored wooden table, with a light-colored wall in the background, indoor lighting, bright warm tones, and a modern minimalist style.\",\"OutputHeight\":512,\"OutputWidth\":512,\"BatchSize\":2,\"ProductRatio\":0.6,\"IpAdapterScale\":0.9,\"ImageRefType\":\"uri\",\"ImageRefKey\":\"b.png\",\"CX\":0,\"CY\":0},\"Version\":\"2.0\"}", // 必选。根据本文模板说明 > 输入参数,设置该参数取值。
},
}
resp, err := instance.AIProcess(context.Background(), param)
if err != nil {
fmt.Printf("error %v", err)
} else {
t, _ := json.Marshal(resp)
fmt.Printf("success %v", string(t))
}
}
异步处理 创建批量处理任务。接口参数说明详见 CreateImageAITask 。
package imagex_test
import (
"context"
"encoding/json"
"fmt"
"testing"
"github.com/volcengine/volc-sdk-golang/base"
imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)
func Test_CreateImageAITask(t *testing.T) {
instance := imagex.NewInstance()
instance.SetCredential(base.Credentials{
// 强烈建议不要把 ak 和 sk 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取 ak 和 sk,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ak 和 sk。
AccessKeyID: "ak",
SecretAccessKey: "sk",
})
param := &imagex.CreateImageAITaskReq{
CreateImageAITaskBody: &imagex.CreateImageAITaskBody{
ServiceID: "5s****fo", // 必选。服务 ID。
QueueID: "649a9dbc32**064d44cf5b0", // 必选。队列 ID。
DataType: "uri", // 必选。图片地址类型,支持取值 uri 和 url。
DataList: []string{"a.png", "uridemo.png"}, // 必选。图片 URI 或 URL 列表(URI 不包含 tos-*-i-* 前缀)。
CallbackConf: &imagex.CreateImageAITaskBodyCallbackConf{ // 可选。回调配置。
Method: "HTTP", // 必选。回调方式,取值固定为 HTTP。
Endpoint: "https://demo.com", // 必选。回调地址,用于接收处理结果。
DataFormat: "JSON", // 可选。回调数据格式,支持取值 XML 和 JSON。
Args: "productid", // 可选。业务自定义回调参数。
Type: "task", // 可选。回调触发类型,支持取值 task 和 entry。默认值为 entry。
},
WorkflowParameter: "{\"CreativeFlowId\":\"6803aa651f57***ee5a6980f\",\"ProductAIGCType\":\"image\",\"ComprehensiveEnhance\":{\"Enable\":true,\"Mode\":0},\"ProductAIGC\":{\"PositivePrompt\":\"On a light-colored wooden table, with a light-colored wall in the background, indoor lighting, bright warm tones, and a modern minimalist style.\",\"OutputHeight\":512,\"OutputWidth\":512,\"BatchSize\":2,\"ProductRatio\":0.6,\"IpAdapterScale\":0.9,\"ImageRefType\":\"uri\",\"ImageRefKey\":\"b.png\",\"CX\":0,\"CY\":0},\"Version\":\"2.0\"}", // 必选。根据本文模板说明 > 输入参数,设置该参数取值。
WorkflowTemplateID: "system_workflow_product_img", // 必选。模板 ID。固定取值。
},
}
resp, err := instance.CreateImageAITask(context.Background(), param)
if err != nil {
fmt.Printf("error %v", err)
} else {
t, _ := json.Marshal(resp)
fmt.Printf("success %v", string(t))
}
}
通过以下任一方式获取图像处理结果。
回调通知:如果您在上一步设置了回调地址,则当任务完成后,veImageX 会向该回调地址发送回调消息。详见回调 。 主动查询:如果您未设置回调地址,需主动获取图像处理结果。接口参数说明详见 GetImageAIDetails 。package imagex_test
import (
"context"
"encoding/json"
"fmt"
"testing"
"github.com/volcengine/volc-sdk-golang/base"
imagex "github.com/volcengine/volc-sdk-golang/service/imagex/v2"
)
func Test_GetImageAIDetails(t *testing.T) {
instance := imagex.NewInstance()
instance.SetCredential(base.Credentials{
// 强烈建议不要把 ak 和 sk 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取 ak 和 sk,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ak 和 sk。
AccessKeyID: "ak",
SecretAccessKey: "sk",
})
param := &imagex.GetImageAIDetailsQuery{
QueueID: "649a9dbc32**064d44cf5b0", // 必选。队列 ID。
TaskID: "67174744a**54449623155b9", // 必选。任务 ID。
StartTime: 1684713599, // 必选。查询开始时间。Unix 秒级时间戳。
EndTime: 1684913599, // 必选。查询结束时间。Unix 秒级时间戳。
Status: "Success", // 可选。任务执行状态。默认返回所有任务。
SearchPtn: "test", // 可选。图片 URI 或 URL 关键字。默认返回所有任务。
Limit: 10, // 必选。分页条数。取值范围为 (0, 100]。
Offset: 0, // 可选。分页偏移量。
ServiceID: "5s****fo", // 必选。服务 ID。
}
resp, err := instance.GetImageAIDetails(context.Background(), param)
if err != nil {
fmt.Printf("error %v", err)
} else {
t, _ := json.Marshal(resp)
fmt.Printf("success %v", string(t))
}
}
前提条件 调用接口前,请先完成 Python SDK 的安装及初始化 操作。
同步处理 提交一条 URL 或 URI 资源执行同步 AI 图像处理任务。详见同步处理 。
# coding:utf-8
from volcengine.imagex.v2.imagex_service import ImagexService
if __name__ == '__main__':
service = ImagexService()
# 强烈建议不要把 ak 和 sk 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
# 本示例通过从环境变量中读取 ak 和 sk,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ak 和 sk。
service.set_ak('ak')
service.set_sk('sk')
body = {
"ServiceId": "91**2g", # 必选。服务 ID。
"WorkflowTemplateId": "system_workflow_product_img", # # 必选。模板 ID。固定取值。
"WorkflowParameter": "{\"Input\":{\"ObjectKey\":\"a.webp\",\"DataType\":\"uri\"},\"CreativeFlowId\":\"6803aa651f57***ee5a6980f\",\"ProductAIGCType\":\"image\",\"ComprehensiveEnhance\":{\"Enable\":true,\"Mode\":0},\"ProductAIGC\":{\"PositivePrompt\":\"On a light-colored wooden table, with a light-colored wall in the background, indoor lighting, bright warm tones, and a modern minimalist style.\",\"OutputHeight\":512,\"OutputWidth\":512,\"BatchSize\":2,\"ProductRatio\":0.6,\"IpAdapterScale\":\"0.9\",\"ImageRefType\":\"uri\",\"ImageRefKey\":\"b.png\",\"CX\":0,\"CY\":0},\"Version\":\"2.0\"}" # 必选。根据本文模板说明 > 输入参数,设置该参数取值。
}
query = {}
resp = service.ai_process(query, body)
print(resp)
异步处理 创建批量处理任务。接口参数说明详见 CreateImageAITask 。
# coding:utf-8
from volcengine.imagex.v2.imagex_service import ImagexService
if __name__ == '__main__':
service = ImagexService()
# 强烈建议不要把 ak 和 sk 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
# 本示例通过从环境变量中读取 ak 和 sk,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ak 和 sk。
service.set_ak('ak')
service.set_sk('sk')
body = {
"ServiceId": "5s****fo", # 必选。服务 ID。
"QueueId": "649a9dbc32**064d44cf5b0", # 必选。队列 ID。
"DataType": "uri", # 必选。图片地址类型,支持取值 uri 和 url。
"DataList": ["a.png", "uridemo.png"], # 必选。图片 URI 或 URL 列表(URI 不包含 tos-*-i-* 前缀)。
"CallbackConf": { # 可选。回调配置。
"Method": "HTTP", # 必选。回调方式,取值固定为 HTTP。
"Endpoint": "https://demo.com", # 必选。回调地址,用于接收处理结果。
"DataFormat": "JSON", # 可选。回调数据格式,支持取值 XML 和 JSON。
"Args": "productid", # 可选。业务自定义回调参数。
"Type": "task" # 可选。回调触发类型,支持取值 task 和 entry。默认值为 entry。
},
"WorkflowParameter": "{\"CreativeFlowId\":\"6803aa651f57***ee5a6980f\",\"ProductAIGCType\":\"image\",\"ComprehensiveEnhance\":{\"Enable\":true,\"Mode\":0},\"ProductAIGC\":{\"PositivePrompt\":\"On a light-colored wooden table, with a light-colored wall in the background, indoor lighting, bright warm tones, and a modern minimalist style.\",\"OutputHeight\":512,\"OutputWidth\":512,\"BatchSize\":2,\"ProductRatio\":0.6,\"IpAdapterScale\":\"0.9\",\"ImageRefType\":\"uri\",\"ImageRefKey\":\"b.png\",\"CX\":0,\"CY\":0},\"Version\":\"2.0\"}", # 必选。根据本文模板说明 > 输入参数,设置该参数取值。
"WorkflowTemplateId": "system_workflow_product_img" # 必选。模板 ID。固定取值。
}
resp = service.create_image_ai_task(query, body)
print(resp)
通过以下任一方式获取图像处理结果。
回调通知:如果您在上一步设置了回调地址,则当任务完成后,veImageX 会向该回调地址发送回调消息。详见回调 。 主动查询:如果您未设置回调地址,需主动获取图像处理结果。接口参数说明详见 GetImageAIDetails 。# coding:utf-8
from volcengine.imagex.v2.imagex_service import ImagexService
if __name__ == '__main__':
service = ImagexService()
# 强烈建议不要把 ak 和 sk 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
# 本示例通过从环境变量中读取 ak 和 sk,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ak 和 sk。
service.set_ak('ak')
service.set_sk('sk')
query = {
"QueueId": "649a9dbc32**064d44cf5b0", # 必选。队列 ID。
"TaskId": "67174744a**54449623155b9", # 必选。任务 ID。
"StartTime": 1684713599, # 必选。查询开始时间。Unix 秒级时间戳。
"EndTime": 1684913599, # 必选。查询结束时间。Unix 秒级时间戳。
"Status": "Success", # 可选。任务执行状态。默认返回所有任务。
"SearchPtn": "test", # 可选。图片 URI 或 URL 关键字。默认返回所有任务。
"Limit": 10, # 必选。分页条数。取值范围为 (0, 100]。
"Offset": 0, # 可选。分页偏移量。
"ServiceId": "5s****fo" # 必选。服务 ID。
}
resp = service.get_image_ai_details(query)
print(resp)
前提条件 调用接口前,请先完成 Java SDK 的安装及初始化 操作。
同步处理 提交一条 URL 或 URI 资源执行同步 AI 图像处理任务。详见同步处理 。
package com.volcengine.example.imagex.v2.api;
import com.volcengine.model.imagex.v2.*;
import com.volcengine.service.imagex.v2.ImagexService;
public class AIProcessExample {
public static void main(String[] args) {
ImagexService service = ImagexService.getInstance();
// 强烈建议不要把 ak 和 sk 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取 ak 和 sk,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ak 和 sk。
service.setAccessKey("ak");
service.setSecretKey("sk");
AIProcessBody body = new AIProcessBody();
body.setServiceId("91**2g"); // 必选。服务 ID。
body.setWorkflowTemplateId("system_workflow_product_img"); // 必选。模板 ID。固定取值。
body.setWorkflowParameter("{\"Input\":{\"ObjectKey\":\"a.webp\",\"DataType\":\"uri\"},\"CreativeFlowId\":\"6803aa651f57***ee5a6980f\",\"ProductAIGCType\":\"image\",\"ComprehensiveEnhance\":{\"Enable\":true,\"Mode\":0},\"ProductAIGC\":{\"PositivePrompt\":\"On a light-colored wooden table, with a light-colored wall in the background, indoor lighting, bright warm tones, and a modern minimalist style.\",\"OutputHeight\":512,\"OutputWidth\":512,\"BatchSize\":2,\"ProductRatio\":0.6,\"IpAdapterScale\":\"0.9\",\"ImageRefType\":\"uri\",\"ImageRefKey\":\"b.png\",\"CX\":0,\"CY\":0},\"Version\":\"2.0\"}"); // 必选。根据本文模板说明 > 输入参数,设置该参数取值。
try {
AIProcessRes resp = service.aIProcess(body);
System.out.println(resp);
} catch (Exception e) {
e.printStackTrace();
}
}
}
异步处理 创建批量处理任务。接口参数说明详见 CreateImageAITask 。
package com.volcengine.example.imagex.v2.api;
import com.volcengine.model.imagex.v2.*;
import com.volcengine.service.imagex.v2.ImagexService;
public class CreateImageAITaskExample {
public static void main(String[] args) {
ImagexService service = ImagexService.getInstance();
// 强烈建议不要把 ak 和 sk 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取 ak 和 sk,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ak 和 sk。
service.setAccessKey("ak");
service.setSecretKey("sk");
// 1.(可选)构建回调配置(CallbackConf)。
CreateImageAITaskBodyCallbackConf callbackConf = new CreateImageAITaskBodyCallbackConf();
callbackConf.setMethod("HTTP"); // 必选。回调方式,取值固定为 HTTP。
callbackConf.setEndpoint("https://demo.com"); // 必选。回调地址,用于接收处理结果。
callbackConf.setDataFormat("JSON"); // 可选。回调数据格式,支持取值 XML 和 JSON。
callbackConf.setArgs("productid"); // 可选。业务自定义回调参数。
callbackConf.setType("task"); // 可选。回调触发类型,支持取值 task 和 entry。默认值为 entry。
// 2. 构建请求体(CreateImageAITaskBody)。
CreateImageAITaskBody body = new CreateImageAITaskBody();
body.setServiceId("5s****fo"); // 必选。服务 ID。
body.setQueueId("649a9dbc32**064d44cf5b0"); // 必选。队列 ID。
body.setDataType("uri"); // 必选。图片地址类型,支持取值 uri 和 url。
body.setDataList(Arrays.asList("a.png", "uridemo.png")); // 必选。图片 URI 或 URL 列表(URI 不包含 tos-*-i-* 前缀)。
body.setCallbackConf(callbackConf); // 可选。回调配置。
body.setWorkflowParameter("{" +
"\"CreativeFlowId\":\"6803aa651f57***ee5a6980f\"," +
"\"ProductAIGCType\":\"image\"," +
"\"ComprehensiveEnhance\":{" +
"\"Enable\":true," +
"\"Mode\":0" +
"}," +
"\"ProductAIGC\":{" +
"\"PositivePrompt\":\"On a light-colored wooden table, with a light-colored wall in the background, indoor lighting, bright warm tones, and a modern minimalist style.\"," +
"\"OutputHeight\":512," +
"\"OutputWidth\":512," +
"\"BatchSize\":2," +
"\"ProductRatio\":0.6," +
"\"IpAdapterScale\":\"0.9\"," +
"\"ImageRefType\":\"uri\"," +
"\"ImageRefKey\":\"b.png\"," +
"\"CX\":0," +
"\"CY\":0" +
"}," +
"\"Version\":\"2.0\"" +
"}"); // 必选。根据本文模板说明 > 输入参数,设置该参数取值。
body.setWorkflowTemplateId("system_workflow_product_img"); // 必选。模板 ID。固定取值。
try {
CreateImageAITaskRes resp = service.createImageAITask(body);
System.out.println(resp);
} catch (Exception e) {
e.printStackTrace();
}
}
}
通过以下任一方式获取图像处理结果。
回调通知:如果您在上一步设置了回调地址,则当任务完成后,veImageX 会向该回调地址发送回调消息。详见回调 。 主动查询:如果您未设置回调地址,需主动获取图像处理结果。接口参数说明详见 GetImageAIDetails 。package com.volcengine.example.imagex.v2.api;
import com.volcengine.model.imagex.v2.*;
import com.volcengine.service.imagex.v2.ImagexService;
public class GetImageAIDetailsExample {
public static void main(String[] args) {
ImagexService service = ImagexService.getInstance();
// 强烈建议不要把 ak 和 sk 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取 ak 和 sk,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ak 和 sk。
service.setAccessKey("ak");
service.setSecretKey("sk");
GetImageAIDetailsQuery query = new GetImageAIDetailsQuery();
// 必选参数。
query.setQueueId("649a9dbc32**064d44cf5b0"); // 队列 ID。
query.setTaskId("67174744a**54449623155b9"); // 任务 ID。
query.setStartTime(1684713599L); // 查询开始时间。Unix 秒级时间戳。
query.setEndTime(1684913599L); // 查询结束时间。Unix 秒级时间戳。
query.setLimit(10L); // 分页条数。取值范围为 (0, 100]。
query.setServiceId("5s****fo"); // 服务 ID。
// 可选参数。
query.setStatus("Success"); // 任务执行状态。默认返回所有任务。
query.setSearchPtn("test"); // 图片 URI 或 URL 关键字。默认返回所有任务。
query.setOffset(0L); // 分页偏移量。
try {
GetImageAIDetailsRes resp = service.getImageAIDetails(query);
System.out.println(resp);
} catch (Exception e) {
e.printStackTrace();
}
}
}
前提条件 调用接口前,请先完成 PHP SDK 的安装及初始化 操作。
同步处理 提交一条 URL 或 URI 资源执行同步 AI 图像处理任务。详见同步处理 。
<?php
include_once(__DIR__ . '../../../../vendor/autoload.php');
use Volc\Service\ImageX\V2\Imagex;
$client = Imagex::getInstance();
// 强烈建议不要把 ak 和 sk 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取 ak 和 sk,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ak 和 sk。
$client->setAccessKey("ak");
$client->setSecretKey("sk");
$body = [
"ServiceId" => "91**2g", // 必选。服务 ID。
"WorkflowTemplateId" => "system_workflow_product_img", // 必选。模板 ID。固定取值。
"WorkflowParameter" => "{\"Input\":{\"ObjectKey\":\"a.webp\",\"DataType\":\"uri\"},\"CreativeFlowId\":\"6803aa651f57***ee5a6980f\",\"ProductAIGCType\":\"image\",\"ComprehensiveEnhance\":{\"Enable\":true,\"Mode\":0},\"ProductAIGC\":{\"PositivePrompt\":\"On a light-colored wooden table, with a light-colored wall in the background, indoor lighting, bright warm tones, and a modern minimalist style.\",\"OutputHeight\":512,\"OutputWidth\":512,\"BatchSize\":2,\"ProductRatio\":0.6,\"IpAdapterScale\":\"0.9\",\"ImageRefType\":\"uri\",\"ImageRefKey\":\"b.png\",\"CX\":0,\"CY\":0},\"Version\":\"2.0\"}" // 必选。根据本文模板说明 > 输入参数,设置该参数取值。
];
$query = [];
$response = $client->AIProcess($query, $body);
print_r($response);
异步处理 创建批量处理任务。接口参数说明详见 CreateImageAITask 。
<?php
include_once(__DIR__ . '../../../../vendor/autoload.php');
use Volc\Service\ImageX\V2\Imagex;
$client = Imagex::getInstance();
// 强烈建议不要把 ak 和 sk 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取 ak 和 sk,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ak 和 sk。
$client->setAccessKey("ak");
$client->setSecretKey("sk");
$body = [
"ServiceId" => "5s****fo", // 必选。服务 ID。
"QueueId" => "649a9dbc32**064d44cf5b0", // 必选。队列 ID。
"DataType" => "uri", // 必选。图片地址类型,支持取值 uri 和 url。
"DataList" => ["a.png", "uridemo.png"], // 必选。图片 URI 或 URL 列表(URI 不包含 tos-*-i-* 前缀)。
"CallbackConf" => [ // 可选。回调配置。
"Method" => "HTTP", // 必选。回调方式,取值固定为 HTTP。
"Endpoint" => "https://demo.com", // 必选。回调地址,用于接收处理结果。
"DataFormat" => "JSON", // 可选。回调数据格式,支持取值 XML 和 JSON。
"Args" => "productid", // 可选。业务自定义回调参数。
"Type" => "task" // 可选。回调触发类型,支持取值 task 和 entry。默认值为 entry。
],
"WorkflowParameter" => "{\"CreativeFlowId\":\"6803aa651f57***ee5a6980f\",\"ProductAIGCType\":\"image\",\"ComprehensiveEnhance\":{\"Enable\":true,\"Mode\":0},\"ProductAIGC\":{\"PositivePrompt\":\"On a light-colored wooden table, with a light-colored wall in the background, indoor lighting, bright warm tones, and a modern minimalist style.\",\"OutputHeight\":512,\"OutputWidth\":512,\"BatchSize\":2,\"ProductRatio\":0.6,\"IpAdapterScale\":\"0.9\",\"ImageRefType\":\"uri\",\"ImageRefKey\":\"b.png\",\"CX\":0,\"CY\":0},\"Version\":\"2.0\"}", // 必选。根据本文模板说明 > 输入参数,设置该参数取值。
"WorkflowTemplateId" => "system_workflow_product_img" // 必选。模板 ID。固定取值。
];
$query = [];
$response = $client->CreateImageAITask($query, $body);
print_r($response);
通过以下任一方式获取图像处理结果。
回调通知:如果您在上一步设置了回调地址,则当任务完成后,veImageX 会向该回调地址发送回调消息。详见回调 。 主动查询:如果您未设置回调地址,需主动获取图像处理结果。接口参数说明详见 GetImageAIDetails 。<?php
include_once(__DIR__ . '../../../../vendor/autoload.php');
use Volc\Service\ImageX\V2\Imagex;
$client = Imagex::getInstance();
// 强烈建议不要把 ak 和 sk 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取 ak 和 sk,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 ak 和 sk。
$client->setAccessKey("ak");
$client->setSecretKey("sk");
$query = [
"QueueId" => "649a9dbc32**064d44cf5b0", // 必选。队列 ID。
"TaskId" => "67174744a**54449623155b9", // 必选。任务 ID。
"StartTime" => 1684713599, // 必选。查询开始时间。Unix 秒级时间戳。
"EndTime" => 1684913599, // 必选。查询结束时间。Unix 秒级时间戳。
"Status" => "Success", // 可选。任务执行状态。默认返回所有任务。
"SearchPtn" => "test", // 可选。图片 URI 或 URL 关键字。默认返回所有任务。
"Limit" => 10, // 必选。分页条数。取值范围为 (0, 100]。
"Offset" => 0, // 可选。分页偏移量。
"ServiceId" => "5s****fo" // 必选。服务 ID。
];
$response = $client->GetImageAIDetails($query);
print_r($response);
前提条件 调用接口前,请先完成 Node.js SDK 的安装及初始化 操作。
同步处理 提交一条 URL 或 URI 资源执行同步 AI 图像处理任务。详见同步处理 。
import { imagex } from "@volcengine/openapi";
export async function AIProcessDemo() {
try {
const Client = new imagex.ImageXService({
// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY。
accessKeyId: process.env.VOLC_ACCESSKEY,
secretKey: process.env.VOLC_SECRETKEY,
});
const requestParam = {
ServiceId: "91**2g", // 必选。服务 ID。
WorkflowTemplateId: "system_workflow_product_img", // 必选。模板 ID。固定取值。
WorkflowParameter: "{\"Input\":{\"ObjectKey\":\"a.webp\",\"DataType\":\"uri\"},\"CreativeFlowId\":\"6803aa651f57***ee5a6980f\",\"ProductAIGCType\":\"image\",\"ComprehensiveEnhance\":{\"Enable\":true,\"Mode\":0},\"ProductAIGC\":{\"PositivePrompt\":\"On a light-colored wooden table, with a light-colored wall in the background, indoor lighting, bright warm tones, and a modern minimalist style.\",\"OutputHeight\":512,\"OutputWidth\":512,\"BatchSize\":2,\"ProductRatio\":0.6,\"IpAdapterScale\":\"0.9\",\"ImageRefType\":\"uri\",\"ImageRefKey\":\"b.png\",\"CX\":0,\"CY\":0},\"Version\":\"2.0\"}" // 必选。根据本文模板说明 > 输入参数,设置该参数取值。
};
const res = await Client.AIProcess(requestParam);
console.log("res", res);
} catch (err) {
console.error(err);
}
}
异步处理 创建批量处理任务。接口参数说明详见 CreateImageAITask 。
import { imagex } from "@volcengine/openapi";
export async function CreateImageAITaskDemo() {
try {
const Client = new imagex.ImageXService({
// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY。
accessKeyId: process.env.VOLC_ACCESSKEY,
secretKey: process.env.VOLC_SECRETKEY,
});
const requestParam = {
ServiceId: "5s****fo", // 必选。服务 ID。
QueueId: "649a9dbc32**064d44cf5b0", // 必选。队列 ID。
DataType: "uri", // 必选。图片地址类型,支持取值 uri 和 url。
DataList: ["a.png", "uridemo.png"], // 必选。图片 URI 或 URL 列表(URI 不包含 tos-*-i-* 前缀)。
CallbackConf: { // 可选。回调配置。
Method: "HTTP", // 必选。回调方式,取值固定为 HTTP。
Endpoint: "https://demo.com", // 必选。回调地址,用于接收处理结果。
DataFormat: "JSON", // 可选。回调数据格式,支持取值 XML 和 JSON。
Args: "productid", // 可选。业务自定义回调参数。
Type: "task", // 可选。回调触发类型,支持取值 task 和 entry。默认值为 entry。
},
WorkflowParameter: "{\"CreativeFlowId\":\"6803aa651f57***ee5a6980f\",\"ProductAIGCType\":\"image\",\"ComprehensiveEnhance\":{\"Enable\":true,\"Mode\":0},\"ProductAIGC\":{\"PositivePrompt\":\"On a light-colored wooden table, with a light-colored wall in the background, indoor lighting, bright warm tones, and a modern minimalist style.\",\"OutputHeight\":512,\"OutputWidth\":512,\"BatchSize\":2,\"ProductRatio\":0.6,\"IpAdapterScale\":\"0.9\",\"ImageRefType\":\"uri\",\"ImageRefKey\":\"b.png\",\"CX\":0,\"CY\":0},\"Version\":\"2.0\"}", // 必选。根据本文模板说明 > 输入参数,设置该参数取值。
WorkflowTemplateId: "system_workflow_product_img", // 必选。模板 ID。固定取值。
};
const res = await Client.CreateImageAITask(requestParam);
console.log("res", res);
} catch (err) {
console.error(err);
}
}
通过以下任一方式获取图像处理结果。
回调通知:如果您在上一步设置了回调地址,则当任务完成后,veImageX 会向该回调地址发送回调消息。详见回调 。 主动查询:如果您未设置回调地址,需主动获取图像处理结果。接口参数说明详见 GetImageAIDetails 。import { imagex } from "@volcengine/openapi";
export async function GetImageAIDetailsDemo() {
try {
const Client = new imagex.ImageXService({
// 强烈建议不要把 VOLC_ACCESSKEY 和 VOLC_SECRETKEY 保存到工程代码里,否则可能导致 AccessKey 泄露,威胁您账号下所有资源的安全。
// 本示例通过从环境变量中读取 VOLC_ACCESSKEY 和 VOLC_SECRETKEY,来实现 API 访问的身份验证。运行代码示例前,请配置环境变量 VOLC_ACCESSKEY 和 VOLC_SECRETKEY。
accessKeyId: process.env.VOLC_ACCESSKEY,
secretKey: process.env.VOLC_SECRETKEY,
});
const requestParam = {
QueueId: "649a9dbc32**064d44cf5b0", // 必选。队列 ID。
TaskId: "67174744a**54449623155b9", // 必选。任务 ID。
StartTime: 1684713599, // 必选。查询开始时间。Unix 秒级时间戳。
EndTime: 1685913599, // 必选。查询结束时间。Unix 秒级时间戳。
Status: "Success", // 可选。任务执行状态。默认返回所有任务。
SearchPtn: "test", // 可选。图片 URI 或 URL 关键字。默认返回所有任务。
Limit: 10, // 必选。分页条数。取值范围为 (0, 100]。
Offset: 0, // 可选。分页偏移量。
ServiceId: "5s****fo", // 必选。服务 ID。
};
const res = await Client.GetImageAIDetails(requestParam);
console.log("res", res);
} catch (err) {
console.error(err);
}
}
方式三:通过控制台操作 在我的创意流 页面,单击创意流操作 列的详情 。 完成相关配置并单击立即生成 。
步骤三:查看结果图 拼接格式如下所示。
说明
确保已新增自定义域名 。 如无添加水印、调整分辨率等二次处理需求,使用服务下获取原图 默认模板的名称拼接结果图地址即可。 如果存在中文字符,则以其 16 进制表示。
模板说明
模板 ID system_workflow_product_img
输入参数 您需要将输入参数序列化为 JSON 字符串后,作为同步处理接口 AIProcess 或异步处理接口 CreateImageAITask 的 WorkflowParameter 参数传入,或作为批量处理时的模板配置参数传入。
展开全部 参数
类型
是否必选
示例值
说明
Object
否
-
CreativeFlowId
String
是
6803aa651f57***ee5a6980f
ProductAIGCType
String
是
image
生成的文件类型。目前取值固定为 image。
Object
否
-
画质增强参数。
Version
String
否
2.0
生图模型。默认值为 1.0。1.0:电商万创 1.0 模型。 2.0:电商万创 2.0 模型。相较于 1.0 模型,新增支持中文创意描述、基于参考背景图生图以及自定义商品位置。 Object
是
-
生成图片参数。
输出参数 veImageX 服务会将输出参数序列化为 JSON 字符串后作为 AIProcess 接口、回调 或 GetImageAIDetails 接口的 Output 参数返回。
展开全部 参数
类型
示例值
说明
Array of Object
-
生成的商品图信息。
DownloadObjectKey
String
veImageX-store/6803aa651f57***ee5a6980f/原始图/217a5554-a557-4f8a-970b-1b171d27ed95/79ba1fc8b2922dd2d973a32b83cb3615***2910ed4da4d12f10fddafb6e672f2.png
原图的存储路径。当商品图的 DataType 为 url 时,原图会被存储到创意流绑定的服务下,并通过该参数返回存储路径。