文本生成图像

更新时间:
复制为 MD 格式

通过文生图API,您可以基于文本描述创造出全新的图像。阿里云百炼提供两大系列模型:

  • 千问(Qwen-Image): 擅长渲染复杂的中英文文本。

  • 万相(Wan系列): 用于生成写实图像和摄影级视觉效果。

在线体验北京新加坡

模型效果

千问(Qwen-image)

复杂布局

image (10)-2026-03-10-15-57-40

超长段落

image (11)-2026-03-10-15-57-40

写实人像

image (13)-2026-03-10-15-57-39

自然景观

image (12)-2026-03-10-15-57-39

逻辑架构

image (14)-2026-03-10-15-57-38

电商海报

fcd74cd8-c0f6-454b-93b1-e95f337127af-2026-03-10-16-25-42

点击查看提示词

复杂布局:冬日北京的都市街景,青灰瓦顶、朱红色外墙的两间相邻中式商铺比肩而立,檐下悬挂印有剪纸马的暖光灯笼,在阴天漫射光中投下柔和光晕,映照湿润鹅卵石路面泛起细腻反光。左侧为书法店:靛蓝色老旧的牌匾上以遒劲行书刻着“文字渲染”。店门口的玻璃上挂着一幅字,自上而下,用田英章硬笔写着“专业幻灯片 中英文海报 高级信息图”,落款印章为“1k token”朱砂印。店内的墙上,可以模糊的辨认有三幅竖排的书法作品,第一幅写着着“阿里巴巴”,第二幅写着“通义千问”,第三福写着“图像生成”。一位白发苍苍的老人背对着镜头观赏。右侧为花店,牌匾上以鲜花做成文字“真实质感”;店内多层花架陈列红玫瑰、粉洋牡丹和绿植,门上贴了一个圆形花边标识,标识上写着“2k resolution”,门口摆放了一个彩色霓虹灯,上面写着“细腻刻画 人物 自然 建筑”。两家店中间堆放了一个雪人,举了一老式小黑板,上面用粉笔字写着“Qwen-Image-2.0 正式发布”。街道左侧,年轻情侣依偎在一起,女孩是瘦脸,身穿米白色羊绒大衣,肉色光腿神器。女孩举着心形透明气球,气球印有白色的字:“生图编辑二合一”。里面有一个毛茸茸的卡皮巴拉玩偶。男孩身着剪裁合体的深灰色呢子外套,内搭浅色高领毛衣。街道右侧,一个后背上写着“更小模型,更快速度”的骑手疾驰而过。整条街光影交织、动静相宜。

超长段落:中国古典水墨长卷风格,竖幅构图,画面自上而下、自右向左以行书题写柳永《雨霖铃·寒蝉凄切》全文(共12行,含标点与换行):“寒蝉凄切,对长亭晚,骤雨初歇。都门帐饮无绪,留恋处、兰舟催发。执手相看泪眼,竟无语凝噎。念去去,千里烟波,暮霭沉沉楚天阔。多情自古伤离别,更那堪、冷落清秋节!今宵酒醒何处?杨柳岸,晓风残月。此去经年,应是良辰好景虚设。便纵有千种风情,更与何人说?”书法墨色浓淡相宜,飞白自然,笔锋遒劲中见婉转,行气连贯如流水;字迹略带微洇,仿宣纸渗透效果。背景为极简留白水墨意境:右下角绘一叶孤舟泊于浅滩,舟头微翘,缆绳轻系枯柳;左侧远景以淡墨晕染出层叠低垂的暮霭与空阔楚天,天际线处一抹青灰远山若隐若现;近景岸边斜出三两枝细柳,枝条纤柔,叶已疏落,承袭清秋萧瑟之气;柳梢悬一弯将隐未隐的残月,清冷微光映照薄雾中拂面的晓风痕迹(以几缕轻扬的柳丝与水纹示意)。整幅画气息沉郁隽永,哀而不伤,严格遵循宋词意境与传统文人画**“诗书画一体”**范式,无印章、无题跋、无现代元素。

写实人像:一位约20岁出头的亚洲年轻女性,留着齐刘海、乌黑光滑的长直发,自然垂落于双肩两侧。她侧坐于一张复古碎花布艺沙发上,沙发图案为米白底色配粉色与绿色花卉,质地略显陈旧,带有生活感。她身穿一件宽松的浅绿色马海毛针织毛衣,质感蓬松柔软,下身搭配浅灰蓝色亚麻长裙,整体造型清新自然、慵懒随性。右手轻轻握住一颗红色番茄,抬至下巴附近,姿态随意,眼神直视镜头,神情平静、略带冷淡,带有一种漫不经心的疏离感。沙发右侧放有一个浅色陶盘,盘内盛放着三至四颗饱满鲜红的番茄,带有绿色蒂头,色彩鲜艳,与画面整体的冷绿色调形成强烈对比。背景为做旧的青绿色墙面,斑驳而有质感。窗外射入的自然光形成明显的光束,斜斜打在人物与背景上,光影层次丰富。窗台及背景角落摆有数盆绿植,左侧隐约可见一个深棕色老式木柜。整张照片色调偏冷绿,叠有明显的胶片颗粒感与轻微漏光效果,构图饱满,氛围静谧、文艺,带有强烈的复古胶片人文摄影风格。

自然景观:一幅写实风格的夏日森林场景,画面中央是一片幽深静谧的林间空地,高大挺拔的橡树与山毛榉构成主体乔木层,其浓密树冠呈现深邃厚重的墨绿色,叶片表面带有细微的蜡质反光;树冠间隙中透下柔和而强烈的阳光,在空气中形成清晰可见的丁达尔光束,光束边缘略带暖金色调,与冷调绿影形成微妙对比。中景处一丛新生的枫树嫩枝舒展着鲜亮明快的翠绿色叶片,叶脉清晰、半透明感强,边缘微微卷曲,仿佛刚经历晨露洗礼。前景左侧低矮的冬青与荚蒾灌木丛披覆着哑光柔和的橄榄绿色,枝叶交错,纹理细腻,部分叶片背面泛出浅灰绿光泽。地面覆盖着厚实湿润的苔藓层,由多种苔类组成:近处是绒状垂穗藓,呈现饱满润泽的青绿色,表面凝结细小露珠;稍远处为鳞叶藓与泥炭藓交织,显出微带蓝调的灰青绿与棕绿过渡;腐叶层隐约可见,呈深褐与墨绿混融的有机质感。所有植被表面均带有自然微湿反光,空气中有极细微的悬浮微粒在光束中浮动。背景林区渐次虚化,保留层次但不抢主体,远景融入一层薄薄的蓝绿雾霭。整体光影为上午10点左右的斜射日光,明暗对比适中,绿色系通过23种以上不同明度、饱和度、冷暖倾向与材质表现(如蜡质、绒面、革质、胶质)精确区分,毫无重复感,营造出丰饶、呼吸感强烈、充满生物细节与生态真实性的夏日森林秘境。

逻辑架构:一幅充满生活气息的插画,采用细腻、柔和的画风,色彩鲜艳且层次丰富,呈现出阳光明媚的街头景象,整体氛围轻松愉快。画面中是一条热闹的商业街道,天空湛蓝,点缀着几朵蓬松白云,几只海鸥在空中自由翱翔,为画面增添动感与生机。街道两旁的建筑风格现代而富有特色,外墙色彩明快,墙上悬挂着多个招牌,分别写着“阿里巴巴”、“百炼”、“文生图”,字体清晰可辨,排列错落有致,营造出浓厚的商业氛围。街道上人流如织,展现出繁忙而温馨的日常场景。画面前景中,一个穿着白色衬衫和短裤的男孩正站在一个摆满商品的货摊前专注挑选。他神情认真,身体微微前倾,体现出对商品的兴趣。货摊上陈列着各类饮料、零食和日用品,摆放整齐,细节丰富。摊主是一名中年男子,身穿深色围裙,神情专注地整理商品或与顾客交流,展现出市井生活的亲切感。货摊上方悬挂着一块木质标牌,清晰写着“Qwen-Image”,字体为手写风格,增添艺术感。整个场景通过细腻的描绘和温暖的色调,展现了日常生活中那些简单却美好的瞬间。画面风格为现实主义插画风格,带有轻微的手绘质感,强调光影与细节表现,整体构图饱满,空间感强。

电商海报:一张高质量的 C4D 风格电商海报,清新蓝色调。画面顶部为巨大的立体艺术字体 “天猫 双十一 预售来了”,极具视觉张力。主体是一袋蓝色包装的 “萌宠家园” 宠物粮,包装袋有透明窗口展示诱人的肉块,旁边有一只可爱的3D建模小猫。场景中点缀着精致的动物小模型和蓝色的科技感机械装置,营造热闹的促销氛围。底部醒目显示红色立体字 “全场满 399 元减 99”。明亮的商业工作室灯光,超高清,渲染细腻,质感通透,构图严谨。"

万相

人像写真

p1023408-转换自-png

写实摄影

p1023409-转换自-png

绘画流派

p1023411

文字生成

p1023399

海报设计

image.png

组图生成

p1023424-转换自-png

点击查看提示词

人像写真:照片,摄影人像,写实人像:背景是故宫红墙,女子身穿黑色旗袍,手握扇子,长曝光摄影,王家卫电影感,故事感,人来人往,迷离的光线,形成迷离的轨迹,柔焦摄影,眼神深邃神秘,艺术气息十足。

写实摄影:写实摄影,一只狐狸在森林中凝视镜头,鱼眼视角带来强烈的透视效果,毛发细节清晰,背景树木呈圆形拉伸,水彩风格,柔和色调。

绘画流派:一束野花插在旧陶罐中,背景是乡村厨房,印象派风格,柔和笔触,温暖光线,油画质感

文字生成:毛笔水墨画风格,宣纸纹理清晰可见,淡墨晕染出朦胧的客厅轮廓。一位身着素色长裙的东方少女盘坐于虚化边缘的旧式布艺沙发上,侧脸低垂,手持一卷展开的诗稿,窗外竹影婆娑,微风拂动帘栊。画面大量留白,右侧题有小楷诗句“闲坐悲双鬓,幽梦入青烟”,左下角钤朱文印章。墨色浓淡相宜,飞白笔触勾勒出光影流动感,意境空寂深远,似有古琴余音缭绕其间。

海报设计:扁平几何插画风格,一张端午节海报,杂志封面,色调与背景:以粉色渐变为主色调,营造出柔和且富有节日氛围的背景,奠定温馨且传统的基调。 文字元素:绿色字体搭配阴影效果,主文案突出"DRAGONBOAT FESTIVAL"与"端午"分两行不分开,正文信息下方"2025/05/31"、"农历五月初五"突出端午数字时间信息"2025/05/31"。 主体图案: 一艘绿色龙身搭配粉色龙鳍的龙船,高饱和色调,色彩对比强烈,高周围点缀祥云元素,船上坐着人物,进一步呼应赛龙舟的场景,增添节日活力。 细节点缀:添加 "中国传统节日" 字样,搭配小型粽子图标,丰富文化细节。高级简约排版方式,大师杰出作品。简约,时尚,大气,新中式传统海报,字体不要有阴影样式。

组图生成:四宫格日系Q版漫画,赛璐璐风格。第一格:戴黑框眼镜的程序员面对屏幕弹出的红色报错,瞳孔地震,冷汗飞溅,背景变为裂开的像素深渊。第二格:他撸起袖子敲击键盘,自信挑眉,头顶冒出“这不过是五行代码的事!”对话框。第三格:屏幕布满混乱的报错符号,他头发炸立,眼圈发黑,椅子后仰45度,天花板飘满废弃的流程图。第四格:误删一行灰色注释后,绿色对勾闪现,他歪头呆滞,屏幕上浮起问号气泡:“……所以它只是个幻觉?”

支持的模型

模型选型

  • 复杂文字渲染(如海报、对联):首选qwen-image-2.0-prowan2.6-t2i

  • 写实场景和摄影风格(通用场景):可选万相模型,如wan2.6-t2iwan2.5-t2i-preview

  • 需要自定义输出图像分辨率:推荐qwen-image-2.0系列或万相模型。qwen-image-2.0系列支持自由设置宽高,输出图像总像素在[512*512, 2048*2048]之间;万相模型如wan2.6-t2i,输出图像总像素在[1280*1280, 1440*1440]之间。

    qwen-image-max、qwen-image-plus系列模型仅支持5种固定尺寸:1664*928(16:9)、928*1664(9:16)、1328*1328(1:1)、1472*1104(4:3)、1104*1472(3:4)。
  • 成本极度敏感,可接受基础质量:可选择wanx2.0-t2i-turbo,价格较低,请参见计费与限流

快速开始

前提条件

在调用前,请获取API Key,再配置API Key到环境变量。如果通过DashScope SDK进行调用,还需要安装SDK

示例代码

调用方式说明

  • 千问文生图模型均支持同步调用,其中qwen-image-plus、qwen-image模型支持异步调用,详情请参见千问-文生图

  • 万相文生图模型均支持异步调用,其中wan2.6-t2i支持同步调用,详情请参见万相-文生图V2

同步调用

Python

请求示例

import json
import os
import dashscope
from dashscope import MultiModalConversation

# 以下为北京地域url,若使用新加坡地域的模型,需将url替换为:https://dashscope-intl.aliyuncs.com/api/v1
dashscope.base_http_api_url = 'https://dashscope.aliyuncs.com/api/v1'

messages = [
    {
        "role": "user",
        "content": [
            {"text": "冬日北京的都市街景,青灰瓦顶、朱红色外墙的两间相邻中式商铺比肩而立,檐下悬挂印有剪纸马的暖光灯笼,在阴天漫射光中投下柔和光晕,映照湿润鹅卵石路面泛起细腻反光。左侧为书法店:靛蓝色老旧的牌匾上以遒劲行书刻着“文字渲染”。店门口的玻璃上挂着一幅字,自上而下,用田英章硬笔写着“专业幻灯片 中英文海报 高级信息图”,落款印章为“1k token”朱砂印。店内的墙上,可以模糊的辨认有三幅竖排的书法作品,第一幅写着着“阿里巴巴”,第二幅写着“通义千问”,第三福写着“图像生成”。一位白发苍苍的老人背对着镜头观赏。右侧为花店,牌匾上以鲜花做成文字“真实质感”;店内多层花架陈列红玫瑰、粉洋牡丹和绿植,门上贴了一个圆形花边标识,标识上写着“2k resolution”,门口摆放了一个彩色霓虹灯,上面写着“细腻刻画 人物 自然 建筑”。两家店中间堆放了一个雪人,举了一老式小黑板,上面用粉笔字写着“Qwen-Image-2.0 正式发布”。街道左侧,年轻情侣依偎在一起,女孩是瘦脸,身穿米白色羊绒大衣,肉色光腿神器。女孩举着心形透明气球,气球印有白色的字:“生图编辑二合一”。里面有一个毛茸茸的卡皮巴拉玩偶。男孩身着剪裁合体的深灰色呢子外套,内搭浅色高领毛衣。街道右侧,一个后背上写着“更小模型,更快速度”的骑手疾驰而过。整条街光影交织、动静相宜。"}
        ]
    }
]

# 新加坡和北京地域的API Key不同。获取API Key:https://help.aliyun.com/zh/model-studio/get-api-key
# 若没有配置环境变量,请用百炼API Key将下行替换为:api_key="sk-xxx"
api_key = os.getenv("DASHSCOPE_API_KEY")

response = MultiModalConversation.call(
    api_key=api_key,
    model="qwen-image-2.0-pro",
    messages=messages,
    result_format='message',
    stream=False,
    watermark=False,
    prompt_extend=True,
    negative_prompt="低分辨率,低画质,肢体畸形,手指畸形,画面过饱和,蜡像感,人脸无细节,过度光滑,画面具有AI感。构图混乱。文字模糊,扭曲。",
    size='2048*2048'
)

if response.status_code == 200:
    print(json.dumps(response, ensure_ascii=False))
else:
    print(f"HTTP返回码:{response.status_code}")
    print(f"错误码:{response.code}")
    print(f"错误信息:{response.message}")
    print("请参考文档:https://help.aliyun.com/zh/model-studio/developer-reference/error-code")

响应示例

图像链接的有效期为24小时,请及时下载图像。
{
    "status_code": 200,
    "request_id": "d2d1a8c0-325f-9b9d-8b90-xxxxxx",
    "code": "",
    "message": "",
    "output": {
        "text": null,
        "finish_reason": null,
        "choices": [
            {
                "finish_reason": "stop",
                "message": {
                    "role": "assistant",
                    "content": [
                        {
                            "image": "https://dashscope-result-wlcb.oss-cn-wulanchabu.aliyuncs.com/xxx.png?Expires=xxx"
                        }
                    ]
                }
            }
        ]
    },
    "usage": {
        "input_tokens": 0,
        "output_tokens": 0,
        "width": 2048,
        "image_count": 1,
        "height": 2048
    }
}

Java

请求示例

import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversation;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationParam;
import com.alibaba.dashscope.aigc.multimodalconversation.MultiModalConversationResult;
import com.alibaba.dashscope.common.MultiModalMessage;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.exception.UploadFileException;
import com.alibaba.dashscope.utils.Constants;
import com.alibaba.dashscope.utils.JsonUtils;

import java.io.IOException;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;

public class QwenImage {

    static {
        // 以下为北京地域url,若使用新加坡地域的模型,需将url替换为:https://dashscope-intl.aliyuncs.com/api/v1
        Constants.baseHttpApiUrl = "https://dashscope.aliyuncs.com/api/v1";
    }

    // 新加坡和北京地域的API Key不同。获取API Key:https://help.aliyun.com/zh/model-studio/get-api-key
    // 若没有配置环境变量,请用百炼API Key将下行替换为:static String apiKey ="sk-xxx"
    static String apiKey = System.getenv("DASHSCOPE_API_KEY");

    public static void call() throws ApiException, NoApiKeyException, UploadFileException, IOException {

        MultiModalConversation conv = new MultiModalConversation();

        MultiModalMessage userMessage = MultiModalMessage.builder().role(Role.USER.getValue())
                .content(Arrays.asList(
                        Collections.singletonMap("text", "冬日北京的都市街景,青灰瓦顶、朱红色外墙的两间相邻中式商铺比肩而立,檐下悬挂印有剪纸马的暖光灯笼,在阴天漫射光中投下柔和光晕,映照湿润鹅卵石路面泛起细腻反光。左侧为书法店:靛蓝色老旧的牌匾上以遒劲行书刻着“文字渲染”。店门口的玻璃上挂着一幅字,自上而下,用田英章硬笔写着“专业幻灯片 中英文海报 高级信息图”,落款印章为“1k token”朱砂印。店内的墙上,可以模糊的辨认有三幅竖排的书法作品,第一幅写着着“阿里巴巴”,第二幅写着“通义千问”,第三福写着“图像生成”。一位白发苍苍的老人背对着镜头观赏。右侧为花店,牌匾上以鲜花做成文字“真实质感”;店内多层花架陈列红玫瑰、粉洋牡丹和绿植,门上贴了一个圆形花边标识,标识上写着“2k resolution”,门口摆放了一个彩色霓虹灯,上面写着“细腻刻画 人物 自然 建筑”。两家店中间堆放了一个雪人,举了一老式小黑板,上面用粉笔字写着“Qwen-Image-2.0 正式发布”。街道左侧,年轻情侣依偎在一起,女孩是瘦脸,身穿米白色羊绒大衣,肉色光腿神器。女孩举着心形透明气球,气球印有白色的字:“生图编辑二合一”。里面有一个毛茸茸的卡皮巴拉玩偶。男孩身着剪裁合体的深灰色呢子外套,内搭浅色高领毛衣。街道右侧,一个后背上写着“更小模型,更快速度”的骑手疾驰而过。整条街光影交织、动静相宜。")
                )).build();

        Map<String, Object> parameters = new HashMap<>();
        parameters.put("watermark", false);
        parameters.put("prompt_extend", true);
        parameters.put("negative_prompt", "低分辨率,低画质,肢体畸形,手指畸形,画面过饱和,蜡像感,人脸无细节,过度光滑,画面具有AI感。构图混乱。文字模糊,扭曲。");
        parameters.put("size", "2048*2048");

        MultiModalConversationParam param = MultiModalConversationParam.builder()
                .apiKey(apiKey)
                .model("qwen-image-2.0-pro")
                .messages(Collections.singletonList(userMessage))
                .parameters(parameters)
                .build();

        MultiModalConversationResult result = conv.call(param);
        System.out.println(JsonUtils.toJson(result));
    }

    public static void main(String[] args) {
        try {
            call();
        } catch (ApiException | NoApiKeyException | UploadFileException | IOException e) {
            System.out.println(e.getMessage());
        }
        System.exit(0);
    }
}

响应示例

图像链接的有效期为24小时,请及时下载图像。
{
    "requestId": "5b6f2d04-b019-40db-a5cc-xxxxxx",
    "usage": {
        "image_count": 1,
        "width": 2048,
        "height": 2048
    },
    "output": {
        "choices": [
            {
                "finish_reason": "stop",
                "message": {
                    "role": "assistant",
                    "content": [
                        {
                            "image": "https://dashscope-result-wlcb.oss-cn-wulanchabu.aliyuncs.com/xxx.png?Expires=xxx"
                        }
                    ]
                }
            }
        ]
    }
}

curl

请求示例
curl --location 'https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--data '{
    "model": "qwen-image-2.0-pro",
    "input": {
        "messages": [
            {
                "role": "user",
                "content": [
                    {
                        "text": "冬日北京的都市街景,青灰瓦顶、朱红色外墙的两间相邻中式商铺比肩而立,檐下悬挂印有剪纸马的暖光灯笼,在阴天漫射光中投下柔和光晕,映照湿润鹅卵石路面泛起细腻反光。左侧为书法店:靛蓝色老旧的牌匾上以遒劲行书刻着“文字渲染”。店门口的玻璃上挂着一幅字,自上而下,用田英章硬笔写着“专业幻灯片 中英文海报 高级信息图”,落款印章为“1k token”朱砂印。店内的墙上,可以模糊的辨认有三幅竖排的书法作品,第一幅写着着“阿里巴巴”,第二幅写着“通义千问”,第三福写着“图像生成”。一位白发苍苍的老人背对着镜头观赏。右侧为花店,牌匾上以鲜花做成文字“真实质感”;店内多层花架陈列红玫瑰、粉洋牡丹和绿植,门上贴了一个圆形花边标识,标识上写着“2k resolution”,门口摆放了一个彩色霓虹灯,上面写着“细腻刻画 人物 自然 建筑”。两家店中间堆放了一个雪人,举了一老式小黑板,上面用粉笔字写着“Qwen-Image-2.0 正式发布”。街道左侧,年轻情侣依偎在一起,女孩是瘦脸,身穿米白色羊绒大衣,肉色光腿神器。女孩举着心形透明气球,气球印有白色的字:“生图编辑二合一”。里面有一个毛茸茸的卡皮巴拉玩偶。男孩身着剪裁合体的深灰色呢子外套,内搭浅色高领毛衣。街道右侧,一个后背上写着“更小模型,更快速度”的骑手疾驰而过。整条街光影交织、动静相宜。"
                    }
                ]
            }
        ]
    },
    "parameters": {
        "negative_prompt": "低分辨率,低画质,肢体畸形,手指畸形,画面过饱和,蜡像感,人脸无细节,过度光滑,画面具有AI感。构图混乱。文字模糊,扭曲。",
        "prompt_extend": true,
        "watermark": false,
        "size": "2048*2048"
    }
}'
curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--data '{
    "model": "qwen-image-2.0-pro",
    "input": {
      "messages": [
        {
          "role": "user",
          "content": [
            {
              "text": "Healing-style hand-drawn poster featuring three puppies playing with a ball on lush green grass, adorned with decorative elements such as birds and stars. The main title “Come Play Ball!” is prominently displayed at the top in bold, blue cartoon font. Below it, the subtitle “Come [Show Off Your Skills]!” appears in green font. A speech bubble adds playful charm with the text: “Hehe, watch me amaze my little friends next!” At the bottom, supplementary text reads: “We get to play ball with our friends again!” The color palette centers on fresh greens and blues, accented with bright pink and yellow tones to highlight a cheerful, childlike atmosphere."
            }
          ]
        }
      ]
    },
    "parameters": {
      "negative_prompt": "低分辨率,低画质,肢体畸形,手指畸形,画面过饱和,蜡像感,人脸无细节,过度光滑,画面具有AI感。构图混乱。文字模糊,扭曲。",
      "prompt_extend": true,
      "watermark": false,
      "size": "2048*2048"
    }
}'
响应示例
{
    "output": {
        "choices": [
            {
                "finish_reason": "stop",
                "message": {
                    "content": [
                        {
                            "image": "https://dashscope-result-sh.oss-cn-shanghai.aliyuncs.com/xxx.png?Expires=xxx"
                        }
                    ],
                    "role": "assistant"
                }
            }
        ]
    },
    "usage": {
        "height": 2048,
        "image_count": 1,
        "width": 2048
    },
    "request_id": "d0250a3d-b07f-49e1-bdc8-6793f4929xxx"
}

异步调用

SDK 在底层封装了异步处理逻辑,上层接口表现为同步调用(即单次请求并等待最终结果返回);而 curl 示例则对应两个独立的异步 API 接口:一个用于提交任务,另一个用于查询结果。

Python

请求示例

import os
import dashscope
from dashscope.aigc.image_generation import ImageGeneration
from dashscope.api_entities.dashscope_response import Message

# 以下为北京地域url,各地域的base_url不同
dashscope.base_http_api_url = 'https://dashscope.aliyuncs.com/api/v1'

# 若没有配置环境变量,请用百炼API Key将下行替换为:api_key="sk-xxx"
# 各地域的API Key不同。获取API Key:https://help.aliyun.com/zh/model-studio/get-api-key
api_key = os.getenv("DASHSCOPE_API_KEY")

message = Message(
    role="user",
    content=[
        {
            'text': '一间有着精致窗户的花店,漂亮的木质门,摆放着花朵'
        }
    ]
)
print("----sync call, please wait a moment----")
rsp = ImageGeneration.call(
    model="wan2.6-t2i",
    api_key=api_key,
    messages=[message],
    negative_prompt="",
    prompt_extend=True,
    watermark=False,
    n=1,
    size="1280*1280"
)
print(rsp)

响应示例

url 有效期24小时,请及时下载图像。
{
    "status_code": 200,
    "request_id": "820dd0db-eb42-4e05-8d6a-1ddb4axxxxxx",
    "code": "",
    "message": "",
    "output": {
        "text": null,
        "finish_reason": null,
        "choices": [
            {
                "finish_reason": "stop",
                "message": {
                    "role": "assistant",
                    "content": [
                        {
                            "image": "https://dashscope-result-bj.oss-cn-beijing.aliyuncs.com/xxxxxx.png?Expires=xxxxxx",
                            "type": "image"
                        }
                    ]
                }
            }
        ],
        "audio": null,
        "finished": true
    },
    "usage": {
        "input_tokens": 0,
        "output_tokens": 0,
        "characters": 0,
        "image_count": 1,
        "size": "1280*1280",
        "total_tokens": 0
    }
}

Java

请求示例

import com.alibaba.dashscope.aigc.imagegeneration.*;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.exception.UploadFileException;
import com.alibaba.dashscope.utils.Constants;
import com.alibaba.dashscope.utils.JsonUtils;
import java.util.Collections;

public class Main {

    static {
        // 以下为北京地域url,各地域的base_url不同
        Constants.baseHttpApiUrl = "https://dashscope.aliyuncs.com/api/v1";
    }

    // 若没有配置环境变量,请用百炼API Key将下行替换为:apiKey="sk-xxx"
    // 各地域的API Key不同。获取API Key:https://help.aliyun.com/zh/model-studio/get-api-key
    static String apiKey = System.getenv("DASHSCOPE_API_KEY");

    public static void basicCall() throws ApiException, NoApiKeyException, UploadFileException {
        ImageGenerationMessage message = ImageGenerationMessage.builder()
                .role("user")
                .content(Collections.singletonList(
                        Collections.singletonMap("text", "一间有着精致窗户的花店,漂亮的木质门,摆放着花朵")
                )).build();

        ImageGenerationParam param = ImageGenerationParam.builder()
                .apiKey(apiKey)
                .model("wan2.6-t2i")
                .n(1)
                .size("1280*1280")
                .negativePrompt("")
                .promptExtend(true)
                .watermark(false)
                .messages(Collections.singletonList(message))
                .build();

        ImageGeneration imageGeneration = new ImageGeneration();
        ImageGenerationResult result = null;
        try {
            System.out.println("---sync call, please wait a moment----");
            result = imageGeneration.call(param);
        } catch (ApiException | NoApiKeyException | UploadFileException e) {
            throw new RuntimeException(e.getMessage());
        }
        System.out.println(JsonUtils.toJson(result));
    }

    public static void main(String[] args) {
        try {
            basicCall();
        } catch (ApiException | NoApiKeyException | UploadFileException e) {
            System.out.println(e.getMessage());
        }
    }
}

响应示例

url 有效期24小时,请及时下载图像。
{
    "status_code": 200,
    "request_id": "50b57166-eaaa-4f17-b1e0-35a5ca88672c",
    "code": "",
    "message": "",
    "output": {
        "choices": [
            {
                "finish_reason": "stop",
                "message": {
                    "role": "assistant",
                    "content": [
                        {
                            "image": "https://dashscope-result-sh.oss-cn-shanghai.aliyuncs.com/xxx.png?Expires=xxx",
                            "type": "image"
                        }
                    ]
                }
            }
        ],
        "finished": true
    },
    "usage": {
        "input_tokens": 0,
        "output_tokens": 0,
        "image_count": 1,
        "size": "1280*1280",
        "total_tokens": 0
    }
}

curl

说明
  • 异步调用必须设置 Header 参数X-DashScope-Asyncenable

  • 异步任务的 task_id 查询有效期为 24 小时,过期后任务状态将变为 UNKNOWN

  • 适用于所有模型,新手建议使用 Postman调用API。

步骤1:发起创建任务请求

该请求会返回一个任务ID(task_id)。

curl --location 'https://dashscope.aliyuncs.com/api/v1/services/aigc/image-generation/generation' \
--header 'Content-Type: application/json' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'X-DashScope-Async: enable' \
--data '{
    "model": "wan2.6-t2i",
    "input": {
        "messages": [
            {
                "role": "user",
                "content": [
                    {
                        "text": "一间有着精致窗户的花店,漂亮的木质门,摆放着花朵"
                    }
                ]
            }
        ]
    },
    "parameters": {
        "prompt_extend": true,
        "watermark": false,
        "n": 1,
        "negative_prompt": "",
        "size": "1280*1280"
    }
}'
步骤2:根据任务ID查询结果

使用上一步获取的 task_id,通过接口轮询任务状态,直到 task_status 变为 SUCCEEDED 或 FAILED。

{task_id}完整替换为上一步接口返回的task_id的值。task_id查询有效期为24小时。

curl -X GET https://dashscope.aliyuncs.com/api/v1/tasks/{task_id} \
--header "Authorization: Bearer $DASHSCOPE_API_KEY"

关键能力

1. 指令遵循(提示词)

参数:input.prompt(必选)、input.negative_prompt(可选)。

  • prompt(正向提示词):描述希望在画面中看到的内容、主体、场景、风格、光照和构图。文生图的核心控制参数。

  • negative_prompt(反向提示词):描述不希望在画面中出现的内容,如“模糊”、“多余的手指”等。仅用于辅助优化生成质量。

撰写技巧:一个结构化的 Prompt 通常能带来更好的效果,撰写技巧请参见文生图Prompt指南

2. 开启prompt智能改写

参数: parameters.prompt_extend (bool, 默认为 true)。

此功能可自动扩展和优化较短的Prompt,提升出图效果。开启此功能额外耗时 3-5 秒。此耗时为使用大模型改写文本。

实践建议:

  • 建议开启:当输入 Prompt 较简洁或宽泛时,此功能可显著提升图像效果。

  • 建议关闭:若需控制画面细节、或已提供详细描述,或对响应延迟敏感。请将参数 prompt_extend 显式设为 false

3. 设置输出图像分辨率

参数: parameters.size (string),格式为 "宽*高"

qwen-image-2.0 系列:支持自由设置宽高,输出图像总像素需在512*5122048*2048之间。默认分辨率为2048*2048。推荐分辨率:

  • 2688*1536 :16:9

  • 1536*2688 :9:16

  • 2048*2048(默认值):1:1

  • 2368*1728 :4:3

  • 1728*2368 :3:4

qwen-image-max、qwen-image-plus 系列:仅支持以下 5 种固定的分辨率:

  • 1664*928(默认值):16:9

  • 1472*1104:4:3

  • 1328*1328:1:1

  • 1104*1472:3:4

  • 928*1664:9:16

万相 V2 版模型 (2.0 及以上版本):支持在 [512, 1440] 像素范围内任意组合宽高,总像素不超过 1440*1440。常用分辨率:

  • 1024*1024(默认值):1:1

  • 1440*810: 16:9

  • 810*1440: 9:16

  • 1440*1080: 4:3

  • 1080*1440: 3:4

应用于生产环境

  • 容错策略

    • 处理限流:当 API 返回 Throttling 错误码或 HTTP 429 状态码时,表明已触发限流,限流处理请参见限流

    • 异步任务轮询:轮询查询异步任务结果时,建议采用合理的轮询策略(如前30秒每3秒一次,之后拉长间隔),避免因过于频繁的请求而触发限流。为任务设置一个最终超时时间(如 2 分钟),超时后标记为失败。

  • 风险防范

    • 结果持久化:API 返回的图片 URL 有 24 小时有效期。生产系统必须在获取 URL 后立即下载图片,并转存至您自己的持久化存储服务中(如阿里云对象存储 OSS)。

    • 内容安全审核:所有 promptnegative_prompt 都会经过内容安全审核。若输入内容不合规,请求将被拦截并返回 DataInspectionFailed 错误。

    • 生成内容的版权与合规风险:请确保您的提示词内容符合相关法律法规。生成包含品牌商标、名人肖像、受版权保护的 IP 形象等内容可能涉及侵权风险,请您自行评估并承担相应责任。

API文档

计费与限流

  • 模型免费额度和计费单价请参见模型价格

  • 模型限流请参见限流-图像生成

  • 计费说明:按成功生成的 图像张数 计费。模型调用失败或处理错误不产生任何费用,也不消耗新人免费额度

错误码

如果模型调用失败并返回报错信息,请参见错误信息进行解决。

常见问题

Q: 图片 URL 多久会失效?我应该如何永久保存图片?

A: 图片 URL 的有效期为 24 小时。您必须在获取到 URL 后,立即通过程序下载图片,并将其保存到您自己的持久化存储中,例如本地服务器或阿里云对象存储 OSS。

Q: 调用API返回DataInspectionFailed错误,如何处理?

A: 该错误表示输入文本触发了内容安全审核。请检查并修改promptnegative_prompt中的文本,移除可能违规的内容后重试。

Q: prompt_extend参数应该开启还是关闭?

A: 当输入的prompt比较简洁或希望模型发挥更多创意时,建议保持开启(默认)。当prompt已经非常详细、专业,或对API响应延迟有严格要求时,建议显式设置为false。

Q: 如何提升图像中文字的生成效果?

A: 推荐使用qwen-image-2.0-pro模型,它具备更专业的文字渲染能力。