以下将为您介绍如何在 veImageX 借助豆包智能生图能力,对 AI 生图进行个性化的模板处理并获取结果图地址。
每次调用 API 仅会生成 1 张图,如需获取多张图,请分批调用接口。
已完成火山引擎实名注册。
已开通 veImageX 产品。
已开通智能处理计费配置。
已创建图像处理类型服务。
已创建图片处理模板。
登录火山方舟控制台,进入开通管理页面。
点击并进入视觉大模型页签,依次完成以下三个豆包模型的开通。开通后,您就能通过 veImageX 的 OpenAPI 接入豆包的 API 服务。
ImageX-豆包 AIGC 方案为 veImageX 的白名单工单,请您提前提交工单联系技术支持为您开通白名单。在开通白名单后,请在控制台开通方舟授权。
登录 veImageX 控制台,进入附加组件。
在智能处理页签下,选择 ImageX-豆包 AIGC 方案组件后单击产品体验按钮。
切换为基础配置页签,单击前往授权按钮,完成授权。
在正式开始使用前,您还需要在 veImageX 侧提前获取以下信息。
获取图像处理服务的服务 ID:进入控制台的服务管理页面,查看并记录正常状态的图像处理服务的服务 ID。
获取服务内正常可用的域名:进入上面服务的基础配置页面,在分发配置页签下查看并记录正常且 CNAME 已解析的域名。
获取图片处理模板的模板配置:进入上面服务的处理配置页面,查看并记录图片处理模板的模板配置(不带~)。如tplv-xxxxxxx-6.image
。
veImageX 已提供了对应生图能力的接口文档,以下将为您介绍如何完成参数填写,并获取相应参数。
通过输入提示词和 veImageX 处理模板名称生成 1 张图像。
类型 | 提示词 | 选用的豆包接口模型 | veImageX 模板配置 | 输出图片 |
---|---|---|---|---|
通用版 | 一只凤蝶,停在黄色小花,触角卷曲,动作自然,微风,阳光,背景是天空,成群的蝴蝶在飞舞 | 使用默认配置的模板 | ||
使用配置了以下能力的模板: | ||||
动漫版 | 卡通,明媚的夏日午后,小女孩带着遮阳帽,黄色的柴犬,草地,后花园,玩耍,大笑 | 使用默认配置的模板 | ||
使用使用配置了以下能力的模板:
|
以下为使用同步文生图接口的服务端 SDK 调用示例。
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_GetCVTextGenerateImage(t *testing.T) { instance := imagex.NewInstance() instance.SetCredential(base.Credentials{ AccessKeyID: "ak", SecretAccessKey: "sk", }) param := &imagex.GetCVTextGenerateImageReq{ GetCVTextGenerateImageQuery: &imagex.GetCVTextGenerateImageQuery{ ServiceID: Service, // 服务 ID,参考操作准备-获取 veImageX 配置信息获取 }, GetCVTextGenerateImageBody: &imagex.GetCVTextGenerateImageBody{ Domain: "http://test.example.com", //域名,参考操作准备-获取 veImageX 配置信息获取 Template: "tplv-serviceid-image.image", //模板配置,参考操作准备-获取 veImageX 配置信息获取 Outputs: []string{"demo1"}, //指定输出图的文件名 ModelAction: "CVProcess", //使用通用2.0L-文生图模型,此处传入该模型对应接口 Action ModelVersion: "2022-08-31", //使用通用2.0L-文生图模型,此处传入该模型对应接口 Version ReqJSON: map[string]interface{}{ ////使用通用2.0L-文生图模型,此处传入该模型对应接口的请求示例 "req_key": "high_aes_general_v20", //固定值,high_aes_general_v20_L "prompt": "一只凤蝶,停在黄色小花,触角卷曲,动作自然,微风,阳光,背景是天空,成群的蝴蝶在飞舞", //提示词,用于生成图像 “use_sr”: "true" //开启超分 }, Overwrite: true, //开启 veImageX 侧的重名覆盖上传 } }, } resp, err := instance.GetCVTextGenerateImage(context.Background(), param) if err != nil { fmt.Printf("error %v", err) } else { t, _ := json.Marshal(resp) fmt.Printf("success %v", string(t)) } }
通过输入参考构图、中英文提示词和 veImageX 处理模板名称生成 1 张图像。
版本 | 提示词 | 选用的豆包接口模型 | 参考构图 | veImageX 模板配置 | 输出图片 |
---|---|---|---|---|---|
通用版 | 雨后,出现一道彩虹,飞过一群鸟儿 | CVProcess(通用 XL pro-图生图) | 使用默认配置的模板 | ||
动漫版 | 水彩画,天空有一道彩虹,彩虹下有云朵,云朵下有绿色草地 | CVProcess(动漫 1.3.X-文生图/图生图) | 使用默认配置的模板 |
以下为图生图接口的服务端 SDK 调用示例。
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_GetCVImageGenerateResult(t *testing.T) { instance := imagex.NewInstance() instance.SetCredential(base.Credentials{ AccessKeyID: "ak", SecretAccessKey: "sk", }) param := &imagex.GetCVImageGenerateResultReq{ GetCVImageGenerateResultQuery: &imagex.GetCVImageGenerateResultQuery{ ServiceID: Service, // 服务 ID,参考操作准备-获取 veImageX 配置信息获取 }, GetCVImageGenerateResultBody: &imagex.GetCVImageGenerateResultBody{ Domain: "http://test.example.com", //域名,参考操作准备-获取 veImageX 配置信息获取 Template: "tplv-serviceid-image.image", //模板配置,参考操作准备-获取 veImageX 配置信息获取 Outputs: []string{"demo1"}, //指定输出图的文件名 ModelAction: "CVProcess", //使用通用 XL pro-图生图模型,此处传入该模型对应接口 Action ModelVersion: "2022-08-31", //使用通用 XL pro-图生图模型,此处传入该模型对应接口 Version ReqJSON: map[string]interface{}{ //使用通用 XL pro-图生图模型,此处传入该模型对应接口的请求示例 "req_key": "i2i_xl_sft", //固定值,i2i_xl_sft "image_urls": []string{"http://a.test.com/example.png"} //参考图,用于生成图像 "prompt": "雨后,出现一道彩虹,飞过一群鸟儿", //提示词,用于生成图像 }, Overwrite: true, //开启 veImageX 侧的重名覆盖上传 } }, } resp, err := instance.GetCVImageGenerateResult(context.Background(), param) if err != nil { fmt.Printf("error %v", err) } else { t, _ := json.Marshal(resp) fmt.Printf("success %v", string(t)) } }