图片生成
人像风格重绘
人像风格重绘可以将输入的人物图像进行多种风格化的重绘生成,使新生成的图像在兼顾原始人物相貌的同时,带来不同风格的绘画效果。
基于原图进行风格转化
字段名 | 字段类型 | 是否必传 | 字段默认值 | 字段说明 |
|---|---|---|---|---|
| messages | Array<{ role: "user"|"assistant"|"system"; content: Array<Text|ImageUrl> }> | 是 | - | 标准多模态消息数组;必须包含一条 user 消息,且其中含有一张图片 |
| messages.role | "user" | "assistant" | "system" | 是 | - | 消息角色 |
| messages.content | Array<Text | ImageUrl> | 是 | - | 多模态内容数组:文本或图片 URL |
| contenttype=text | { type: "text"; text: string } | 否 | - | 文本提示 |
| contenttype=image_url | { type: "image_url"; image_url: { url: string } } | 是(至少一项) | - | 输入图片 URL,重绘的基础图像 |
| parameters | QwenStyleRepaintV1Parameters | 否 | - | 模型参数对象 |
| parameters.style_index | number | 否 | 3 | 风格索引;默认 3 (小清新)。若为 -1 (自定义),需同时提供 style_ref_url |
| parameters.style_ref_url | string | 否 | - | 自定义风格参考图 URL,仅当 style_index = -1 时必填 |
说明:

字段名 | 字段类型 | 是否必传 | 字段默认值 | 字段说明 |
|---|---|---|---|---|
| model | string | 是 | wanx-style-repaint-v1 | 模型名称 |
| input | object | 是 | - | 输入对象 |
| input.image_url | string | 是 | - | 输入图片 URL(必填) |
| input.style_index | number | 是 | 3 | 风格索引;默认 3 (小清新) |
| input.style_ref_url | string | 否 | - | 自定义风格参考图 URL,仅当 style_index = -1 时必填 |
后端原始响应(QwenStyleRepaintV1APIResponse):
字段名 | 字段类型 | 是否必传 | 字段默认值 | 字段说明 |
|---|---|---|---|---|
| async | boolean | 否 | - | 是否为异步任务标记(部分返回包含) |
| output | object | 是 | - | 结果对象;可能为异步任务信息或同步图片结果 |
| output.choices | Array<{ finish_reason: string; message: { role: "assistant"|"user"; content: ContentItem } }> | 否 | - | 同步结果时返回; content[0].image 为图片 URL |
| output.task_status | string | 否 | - | 异步任务状态(如存在) |
| output.task_id | string | 否 | - | 异步任务 ID(如存在) |
| output.task_metric | { TOTAL: number; FAILED: number; SUCCEEDED: number } | 否 | - | 任务统计信息(如存在) |
| usage | { width?: number; height?: number; image_count?: number } | 否 | - | 生成图片相关信息(像素/数量) |
| request_id | string | 否 | - | 请求 ID |
| id | string | 否 | - | 响应 ID |
| model | string | 否 | - | 使用的模型名 |
| created | number | 否 | - | 时间戳(秒) |
| object | string | 否 | - | 对象类型 |
| code | number | 否 | 0 | 错误码 |
| error | string | 否 | "" | 错误信息 |
ContentItem(部分字段):
字段名 | 字段类型 | 是否必传 | 字段默认值 | 字段说明 |
|---|---|---|---|---|
| image | string | 否 | - | 图片 URL(常用返回位) |
| url | string | 否 | - | 备用 URL |
| image_url | string | { url: string } | 否 | - | 图片字段的另一种表示 |
| b64_json | string | 否 | - | Base64 图片内容(如返回) |
标准化输出(SDK 适配后)说明:
下面示例展示了如何通过自定义 Agent 接入
async sendMessage(message) {
try {
// 需要有图片输入
if (!message?.files?.[0]?.url) {
return {
code: -1,
msg: '请上传待重绘的图片'
};
}
// 从消息中解析风格编号(可选)
let styleIndex = 3;
if (message?.msg) {
const match = message.msg.match(/style_index:\s*(\d+)/);
if (match && match[1]) {
styleIndex = parseInt(match[1], 10) || 3;
}
}
// 创建 qwen-style-repaint-v1 模型
const model = this.createModel('qwen-style-repaint-v1');
const modelResponse = await model.generateText({
messages: [
{
role: 'user',
content: [
{
type: 'image_url',
image_url: { url: message.files[0].url }
}
],
},
],
parameters: {
style_index: styleIndex
}
});
// 非流式:直接返回模型输出(图片 URL / base64)
return modelResponse;
} catch (error) {
console.error('qwen-style-repaint-v1 error:', error);
return {
code: -1,
msg: '图片重绘失败,请稍后重试'
};
}
}