通义万相-文本生成图像模型具备两项核心能力:一是直接根据文本生成图像;二是结合文本描述和提供的参考图像,它能生成与参考图像内容或风格相似的新图像。
基本介绍
通义万相-文本生成图像模型是通义团队基于自主研发的Composer组合生成框架构建的AI绘画创作大模型。它通过结合用户输入的文本描述和提供的参考图像,能够生成语义准确且风格多样的图像,为用户提供强大的创意绘画能力。
您可以通过中英文描述生成多种风格的图像,比如使用中国古代诗词描述生成插画风格的图像。您还可以在一张参考图像上进行二次创作,比如将参考图像的风格调整为其他类型,或者延续参考图像风格,结合文本描述生成内容更丰富的图像。
特色优势
知识重组&可变维扩散模型:基于自研的Composer组合生成框架的AI绘画创作大模型,通过知识重组与可变维度扩散模型,生成符合语义描述的多样化风格的图像。
效果业界领先:生成图像语义一致性更精准,AI绘画创作布局自然、细节丰富、画面细腻、结果逼真。
使用场景
艺术与设计创作:生成概念草图、插画、海报、包装设计、甚至数字艺术品。
广告与营销物料生成:即时响应广告文案,生成符合品牌调性、产品特性和营销策略的视觉内容。
教育与培训资源制作:创建生动、直观的教学素材,定制化的图像资源还能用于制作互动课件、电子教科书,丰富教育资源库。
新闻与媒体内容生产:增强新闻的视觉呈现,确保新闻报道的时效性和准确性。
游戏与娱乐内容开发:快速生成游戏内的角色、道具、环境元素等美术资源,动态生成游戏NPC外观或定制化的玩家角色。
图书封面与插图生成:生成与书籍主题契合的封面设计和内页插图。
模型概览
模型简介
模型名称 | 模型简介 |
wanx-v1 | 通义万相-文本生成图像大模型,主要功能包括:
|
模型说明
模型名称 | 免费额度 | 计费单价 | 限流(主账号与RAM子账号共用) | |
任务下发接口QPS限制 | 同时处理中任务数量 | |||
wanx-v1 | 免费额度:500张 有效期:百炼开通后180天内 | 0.16元/张 | 2 | 1 |
更多说明请查看文本生成图像API参考。
关键能力
本章节主要介绍通义万相-文生图模型的关键参数使用及效果展示。接口调用和参数详细说明请前往文本生成图像API参考。
文生图模型提供两个核心功能:
基础文生图:根据输入文本生成图像。
相似图生成:根据输入文本和参考图像,生成相似图。
上述两个核心功能的通用关键参数包括:
style:图像风格。默认值为
<auto>
。style枚举值
<auto>:默认值,由模型决定输出的图像风格。
<photography>:摄影。
<portrait>:人像写真。
<3d cartoon>:3D卡通。
<anime>:动画。
<oil painting>:油画。
<watercolor>:水彩。
<sketch>:素描。
<chinese painting>:中国画。
<flat illustration>:扁平插画。
prompt:正向提示词。支持中英文,长度不超过500个字符,超过部分会自动截断。
negative_prompt:反向提示词。支持中英文,长度不超过500个字符,超过部分会自动截断。
相似图生成的关键参数包括:
ref_strength:控制输出图像与参考图(垫图)的相似度。取值范围为[0.0, 1.0]。取值越大,代表生成的图像与参考图越相似。
ref_mode:基于参考图(垫图)生成图像的方式。取值有:
repaint
代表参考内容,为默认值;refonly
代表参考风格。
前提条件
您需要已获取API Key并配置API Key到环境变量。如果通过SDK调用,还需要安装DashScope SDK。
设置图像风格
您可以调整style
参数来生成不同风格的图像。最佳图像通常需要经过多次调试,请您耐心尝试。
示例代码:设置图像风格
Python
from http import HTTPStatus
from urllib.parse import urlparse, unquote
from pathlib import PurePosixPath
import requests
from dashscope import ImageSynthesis
import os
prompt = "近景镜头,18岁的中国女孩,古代服饰,圆脸,正面看着镜头,民族优雅的服装,商业摄影,室外,电影级光照,半身特写,精致的淡妆,锐利的边缘。"
# 修改style生成不同风格的图像
style = '<auto>'
# 同步调用
print('----sync call, please wait a moment----')
rsp = ImageSynthesis.call(api_key=os.getenv("DASHSCOPE_API_KEY"),
model=ImageSynthesis.Models.wanx_v1,
prompt=prompt,
n=1,
style=style,
size='1024*1024')
if rsp.status_code == HTTPStatus.OK:
print(rsp.output)
# 保存图片
for result in rsp.output.results:
file_name = PurePosixPath(unquote(urlparse(result.url).path)).parts[-1]
with open('./%s' % file_name, 'wb+') as f:
f.write(requests.get(result.url).content)
else:
print('sync_call Failed, status_code: %s, code: %s, message: %s' %
(rsp.status_code, rsp.code, rsp.message))
Java
import com.alibaba.dashscope.aigc.imagesynthesis.*;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.utils.JsonUtils;
public class Main {
public void syncCall() {
String prompt = "近景镜头,18岁的中国女孩,古代服饰,圆脸,正面看着镜头,民族优雅的服装,商业摄影,室外,电影级光照,半身特写,精致的淡妆,锐利的边缘。";
ImageSynthesisParam param =
ImageSynthesisParam.builder()
.apiKey(System.getenv("DASHSCOPE_API_KEY"))
.model(ImageSynthesis.Models.WANX_V1)
.prompt(prompt)
.style("<auto>")
.n(1)
.size("1024*1024")
.build();
ImageSynthesis imageSynthesis = new ImageSynthesis();
ImageSynthesisResult result = null;
try {
System.out.println("---sync call, please wait a moment----");
result = imageSynthesis.call(param);
} catch (ApiException | NoApiKeyException e){
throw new RuntimeException(e.getMessage());
}
System.out.println(JsonUtils.toJson(result));
}
public static void main(String[] args){
Main main = new Main();
main.syncCall();
}
}
curl
HTTP调用仅支持异步获取模型结果,您需要发起两个请求。
1、创建文生图任务
此接口返回任务ID,可根据任务ID查询图像生成的结果。
curl -X POST https://dashscope.aliyuncs.com/api/v1/services/aigc/text2image/image-synthesis \
-H 'X-DashScope-Async: enable' \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"model": "wanx-v1",
"input": {
"prompt": "近景镜头,18岁的中国女孩,古代服饰,圆脸,正面看着镜头,民族优雅的服装,商业摄影,室外,电影级光照,半身特写,精致的淡妆,锐利的边缘。"
},
"parameters": {
"style": "<auto>",
"size": "1024*1024",
"n": 1
}
}'
2、根据任务ID查询结果
curl -X GET https://dashscope.aliyuncs.com/api/v1/tasks/{your_task_id} \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
使用反向提示词
我们基于上述图像风格示例的正向提示词,进一步增加反向提示词,以便更好地控制模型的生成效果。正向提示词和反向提示词如下所示。
//正向提示词
prompt = "近景镜头,18岁的中国女孩,古代服饰,圆脸,正面看着镜头,民族优雅的服装,商业摄影,室外,电影级光照,半身特写,精致的淡妆,锐利的边缘。"
//反向提示词
negative_prompt = "不要使用红色元素"
您可以通过正向提示词描述期望的图像元素和风格,使用反向提示词来描述不希望在图像中看到的内容。例如,设置negative_prompt
以限制输出图像中不要使用红色元素。
更多提示词使用技巧请查看通义万相文字作画-使用指南。
示例代码:使用反向提示词
Python
from http import HTTPStatus
from urllib.parse import urlparse, unquote
from pathlib import PurePosixPath
import requests
from dashscope import ImageSynthesis
import os
prompt = "近景镜头,18岁的中国女孩,古代服饰,圆脸,正面看着镜头,民族优雅的服装,商业摄影,室外,电影级光照,半身特写,精致的淡妆,锐利的边缘。"
negative_prompt = "不要使用红色元素"
# 同步调用
print('----sync call, please wait a moment----')
rsp = ImageSynthesis.call(api_key=os.getenv("DASHSCOPE_API_KEY"),
model=ImageSynthesis.Models.wanx_v1,
prompt=prompt,
negative_prompt=negative_prompt,
n=1,
style='<auto>',
size='1024*1024')
if rsp.status_code == HTTPStatus.OK:
print(rsp.output)
# 保存图片
for result in rsp.output.results:
file_name = PurePosixPath(unquote(urlparse(result.url).path)).parts[-1]
with open('./%s' % file_name, 'wb+') as f:
f.write(requests.get(result.url).content)
else:
print('sync_call Failed, status_code: %s, code: %s, message: %s' %
(rsp.status_code, rsp.code, rsp.message))
Java
import com.alibaba.dashscope.aigc.imagesynthesis.*;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.utils.JsonUtils;
public class Main {
public void syncCall() {
String prompt = "近景镜头,18岁的中国女孩,古代服饰,圆脸,正面看着镜头,民族优雅的服装,商业摄影,室外,电影级光照,半身特写,精致的淡妆,锐利的边缘。";
String negativePrompt = "不要使用红色元素";
ImageSynthesisParam param =
ImageSynthesisParam.builder()
.apiKey(System.getenv("DASHSCOPE_API_KEY"))
.model(ImageSynthesis.Models.WANX_V1)
.prompt(prompt)
.negativePrompt(negativePrompt)
.style("<auto>")
.n(1)
.size("1024*1024")
.build();
ImageSynthesis imageSynthesis = new ImageSynthesis();
ImageSynthesisResult result = null;
try {
System.out.println("---sync call, please wait a moment----");
result = imageSynthesis.call(param);
} catch (ApiException | NoApiKeyException e){
throw new RuntimeException(e.getMessage());
}
System.out.println(JsonUtils.toJson(result));
}
public static void main(String[] args){
Main main = new Main();
main.syncCall();
}
}
curl
HTTP调用仅支持异步获取模型结果,您需要发起两个请求。
1、创建文生图任务
此接口返回任务ID,可根据任务ID查询图像生成的结果。
curl -X POST https://dashscope.aliyuncs.com/api/v1/services/aigc/text2image/image-synthesis \
-H 'X-DashScope-Async: enable' \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"model": "wanx-v1",
"input": {
"prompt": "近景镜头,18岁的中国女孩,古代服饰,圆脸,正面看着镜头,民族优雅的服装,商业摄影,室外,电影级光照,半身特写,精致的淡妆,锐利的边缘。",
"negative_prompt": "不要使用红色元素"
},
"parameters": {
"style": "<auto>",
"size": "1024*1024",
"n": 1
}
}'
2、根据任务ID查询结果
curl -X GET https://dashscope.aliyuncs.com/api/v1/tasks/{your_task_id} \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
基于参考图生成图像
基于参考图生成图像涉及两个参数:ref_strength
参数和ref_mode
参数。
设置相似度
您可以使用ref_strength
参数来控制输出图像与参考图的相似度。它的取值范围是[0.0, 1.0],取值越大代表跟参考图像越相似,细节越丰富。
示例代码:设置相似度
Python
from http import HTTPStatus
from urllib.parse import urlparse, unquote
from pathlib import PurePosixPath
import requests
from dashscope import ImageSynthesis
import os
prompt = "近景镜头,18岁的中国女孩,古代服饰,圆脸,正面看着镜头,民族优雅的服装,商业摄影,室外,电影级光照,半身特写,精致的淡妆,锐利的边缘。"
# 上传参考图方式:url链接和本地路径二选一
# 使用公网url链接
ref_img = "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241031/rguyzt/girl.png"
# 使用本地文件路径
sketch_image_url = './girl.png'
# 同步调用
print('----sync call, please wait a moment----')
rsp = ImageSynthesis.call(api_key=os.getenv("DASHSCOPE_API_KEY"),
model=ImageSynthesis.Models.wanx_v1,
prompt=prompt,
n=1,
style='<auto>',
# sketch_image_url=sketch_image_url,
ref_img=ref_img,
ref_mode='repaint',
ref_strength=0.0,
size='1024*1024')
if rsp.status_code == HTTPStatus.OK:
print(rsp.output)
# 保存图片
for result in rsp.output.results:
file_name = PurePosixPath(unquote(urlparse(result.url).path)).parts[-1]
with open('./%s' % file_name, 'wb+') as f:
f.write(requests.get(result.url).content)
else:
print('sync_call Failed, status_code: %s, code: %s, message: %s' %
(rsp.status_code, rsp.code, rsp.message))
Java
import com.alibaba.dashscope.aigc.imagesynthesis.*;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.utils.JsonUtils;
import java.util.HashMap;
public class Main {
public void syncCall() {
String prompt = "近景镜头,18岁的中国女孩,古代服饰,圆脸,正面看着镜头,民族优雅的服装,商业摄影,室外,电影级光照,半身特写,精致的淡妆,锐利的边缘。";
//使用公网url链接
String refImage = "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241031/rguyzt/girl.png";
//图像处理参数
HashMap<String,Object> parameters = new HashMap<>();
parameters.put("ref_strength", 0.0);
parameters.put("ref_mode", "repaint");
ImageSynthesisParam param =
ImageSynthesisParam.builder()
.apiKey(System.getenv("DASHSCOPE_API_KEY"))
.model(ImageSynthesis.Models.WANX_V1)
.prompt(prompt)
.style("<auto>")
.n(1)
.size("1024*1024")
.refImage(refImage)
.parameters(parameters)
.build();
ImageSynthesis imageSynthesis = new ImageSynthesis();
ImageSynthesisResult result = null;
try {
System.out.println("---sync call, please wait a moment----");
result = imageSynthesis.call(param);
} catch (ApiException | NoApiKeyException e){
throw new RuntimeException(e.getMessage());
}
System.out.println(JsonUtils.toJson(result));
}
public static void main(String[] args){
Main main = new Main();
main.syncCall();
}
}
curl
HTTP调用仅支持异步获取模型结果,您需要发起两个请求。
1、创建文生图任务
此接口返回任务ID,可根据任务ID查询图像生成的结果。
curl -X POST https://dashscope.aliyuncs.com/api/v1/services/aigc/text2image/image-synthesis \
-H 'X-DashScope-Async: enable' \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"model": "wanx-v1",
"input": {
"prompt": "近景镜头,18岁的中国女孩,古代服饰,圆脸,正面看着镜头,民族优雅的服装,商业摄影,室外,电影级光照,半身特写,精致的淡妆,锐利的边缘。",
"ref_image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241031/rguyzt/girl.png"
},
"parameters": {
"style": "<auto>",
"size": "1024*1024",
"n": 1,
"ref_strength": 0.0,
"ref_mode": "repaint"
}
}'
2、根据任务ID查询结果
curl -X GET https://dashscope.aliyuncs.com/api/v1/tasks/{your_task_id} \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
根据参考图像内容或风格生成图像
您可以通过ref_mode
参数来控制如何基于参考图像生成相似图。
基于参考图像生成相似图有两个处理方式:
根据参考图像内容生成图像:
ref_mode="repaint"
,默认为该值。根据参考图像风格生成图像:
ref_mode="refonly"
。
根据参考图像内容生成相似图(ref_mode="repaint")
这种方式强调关注图像中的某个主体,在图像主体上增加变化,如风格、面部表情等,并且保持图像整体细节。您可以通过调整prompt在参考图上进行二次创作或优化。
在下图中,新的prompt对应的输出图像相比原始prompt的输出图像面部表情更加丰富,整体氛围感更强。对于主体较为明显的参考图像,使用refonly
模式生成的图像有一定概率会丢失图像细节,您可以多次调试观察效果。
上文提到的原始prompt和新prompt的示例如下所示。
//原始prompt:描述参考图像的内容(图片上未标注的均使用原始prompt)
prompt = "近景镜头,18岁的中国女孩,古代服饰,圆脸,正面看着镜头,民族优雅的服装,商业摄影,室外,电影级光照,半身特写,精致的淡妆,锐利的边缘。"
//新prompt:描述新的人物形象
prompt = "一个英气的黑发女人,飞舞着金色的蝴蝶,背景中有若隐若现的水墨竹林,高细节,高质量。"
示例代码:根据参考图像内容生成相似图(ref_mode="repaint")
Python
from http import HTTPStatus
from urllib.parse import urlparse, unquote
from pathlib import PurePosixPath
import requests
from dashscope import ImageSynthesis
import os
# prompt = "近景镜头,18岁的中国女孩,古代服饰,圆脸,正面看着镜头,民族优雅的服装,商业摄影,室外,电影级光照,半身特写,精致的淡妆,锐利的边缘。"
# 新prompt:描述新的人物形象
prompt = "一个英气的黑发女人,飞舞着金色的蝴蝶,背景中有若隐若现的水墨竹林,高细节,高质量。"
# 上传参考图方式:url链接和本地路径二选一
# 使用公网url链接
ref_img = "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241031/rguyzt/girl.png"
# 使用本地文件路径
sketch_image_url = './girl.png'
# 同步调用
print('----sync call, please wait a moment----')
rsp = ImageSynthesis.call(api_key=os.getenv("DASHSCOPE_API_KEY"),
model=ImageSynthesis.Models.wanx_v1,
prompt=prompt,
n=1,
style='<auto>',
# sketch_image_url=sketch_image_url,
ref_img=ref_img,
ref_mode='repaint',
ref_strength=1.0,
size='1024*1024')
if rsp.status_code == HTTPStatus.OK:
print(rsp.output)
# 保存图片
for result in rsp.output.results:
file_name = PurePosixPath(unquote(urlparse(result.url).path)).parts[-1]
with open('./%s' % file_name, 'wb+') as f:
f.write(requests.get(result.url).content)
else:
print('sync_call Failed, status_code: %s, code: %s, message: %s' %
(rsp.status_code, rsp.code, rsp.message))
Java
import com.alibaba.dashscope.aigc.imagesynthesis.*;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.utils.JsonUtils;
import java.util.HashMap;
public class Main {
public void syncCall() {
//String prompt = "近景镜头,18岁的中国女孩,古代服饰,圆脸,正面看着镜头,民族优雅的服装,商业摄影,室外,电影级光照,半身特写,精致的淡妆,锐利的边缘。";
//新prompt:描述新的人物形象
String prompt = "一个英气的黑发女人,飞舞着金色的蝴蝶,背景中有若隐若现的水墨竹林,高细节,高质量。"
//使用公网url链接
String refImage = "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241031/rguyzt/girl.png";
//图像处理参数
HashMap<String,Object> parameters = new HashMap<>();
parameters.put("ref_strength", 1.0);
parameters.put("ref_mode", "repaint");
ImageSynthesisParam param =
ImageSynthesisParam.builder()
.apiKey(System.getenv("DASHSCOPE_API_KEY"))
.model(ImageSynthesis.Models.WANX_V1)
.prompt(prompt)
.style("<auto>")
.n(1)
.size("1024*1024")
.refImage(refImage)
.parameters(parameters)
.build();
ImageSynthesis imageSynthesis = new ImageSynthesis();
ImageSynthesisResult result = null;
try {
System.out.println("---sync call, please wait a moment----");
result = imageSynthesis.call(param);
} catch (ApiException | NoApiKeyException e){
throw new RuntimeException(e.getMessage());
}
System.out.println(JsonUtils.toJson(result));
}
public static void main(String[] args){
Main main = new Main();
main.syncCall();
}
}
curl
HTTP调用仅支持异步获取模型结果,您需要发起两个请求。
1、创建文生图任务
此接口返回任务ID,可根据任务ID查询图像生成的结果。
curl -X POST https://dashscope.aliyuncs.com/api/v1/services/aigc/text2image/image-synthesis \
-H 'X-DashScope-Async: enable' \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"model": "wanx-v1",
"input": {
"prompt": "一个英气的黑发女人,飞舞着金色的蝴蝶,背景中有若隐若现的水墨竹林,高细节,高质量。",
"ref_image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241031/rguyzt/girl.png"
},
"parameters": {
"style": "<auto>",
"size": "1024*1024",
"n": 1,
"ref_strength": 1.0,
"ref_mode": "repaint"
}
}'
2、根据任务ID查询结果
curl -X GET https://dashscope.aliyuncs.com/api/v1/tasks/{your_task_id} \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
根据参考图像风格生成相似图(ref_mode="refonly")
这种方式适合风格迁移场景的图像绘画,比如在参考图像上增加新的内容等。目前,wanx-v1模型在该场景下的生成效果不太稳定,请您耐心尝试。
示例代码:根据参考图像风格生成相似图(ref_mode="refonly")
Python
from http import HTTPStatus
from urllib.parse import urlparse, unquote
from pathlib import PurePosixPath
import requests
from dashscope import ImageSynthesis
import os
prompt = "有一只黑色的小猫"
# 上传参考图方式:url链接和本地路径二选一
# 使用公网url链接
ref_img = "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241031/gpqnqy/house.png"
# 使用本地文件路径
sketch_image_url = './house.png'
# 同步调用
print('----sync call, please wait a moment----')
rsp = ImageSynthesis.call(api_key=os.getenv("DASHSCOPE_API_KEY"),
model=ImageSynthesis.Models.wanx_v1,
prompt=prompt,
n=1,
style='<auto>',
# sketch_image_url=sketch_image_url,
ref_img=ref_img,
ref_mode='refonly',
ref_strength=0.7,
size='1024*1024')
if rsp.status_code == HTTPStatus.OK:
print(rsp.output)
# 保存图片
for result in rsp.output.results:
file_name = PurePosixPath(unquote(urlparse(result.url).path)).parts[-1]
with open('./%s' % file_name, 'wb+') as f:
f.write(requests.get(result.url).content)
else:
print('sync_call Failed, status_code: %s, code: %s, message: %s' %
(rsp.status_code, rsp.code, rsp.message))
Java
import com.alibaba.dashscope.aigc.imagesynthesis.*;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.utils.JsonUtils;
import java.util.HashMap;
public class Main {
public void syncCall() {
String prompt = "有一只黑色的小猫"
//使用公网url链接
String refImage = "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241031/gpqnqy/house.png";
//图像处理参数
HashMap<String,Object> parameters = new HashMap<>();
parameters.put("ref_strength", 0.7);
parameters.put("ref_mode", "refonly");
ImageSynthesisParam param =
ImageSynthesisParam.builder()
.apiKey(System.getenv("DASHSCOPE_API_KEY"))
.model(ImageSynthesis.Models.WANX_V1)
.prompt(prompt)
.style("<auto>")
.n(1)
.size("1024*1024")
.refImage(refImage)
.parameters(parameters)
.build();
ImageSynthesis imageSynthesis = new ImageSynthesis();
ImageSynthesisResult result = null;
try {
System.out.println("---sync call, please wait a moment----");
result = imageSynthesis.call(param);
} catch (ApiException | NoApiKeyException e){
throw new RuntimeException(e.getMessage());
}
System.out.println(JsonUtils.toJson(result));
}
public static void main(String[] args){
Main main = new Main();
main.syncCall();
}
}
curl
HTTP调用仅支持异步获取模型结果,您需要发起两个请求。
1、创建文生图任务
此接口返回任务ID,可根据任务ID查询图像生成的结果。
curl -X POST https://dashscope.aliyuncs.com/api/v1/services/aigc/text2image/image-synthesis \
-H 'X-DashScope-Async: enable' \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"model": "wanx-v1",
"input": {
"prompt": "有一只黑色的小猫",
"ref_image": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241031/gpqnqy/house.png"
},
"parameters": {
"style": "<auto>",
"size": "1024*1024",
"n": 1,
"ref_strength": 0.7,
"ref_mode": "refonly"
}
}'
2、根据任务ID查询结果
curl -X GET https://dashscope.aliyuncs.com/api/v1/tasks/{your_task_id} \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \