跳到主要内容

Hy-Image-3.5-preview

hy-image-v3.5-preview 以 Chat/Messages 协议提交生图请求,同步返回结果,支持多模态输入(文本 + 参考图)、多轮编辑,最高支持 4096x4096(4K)输出。

前置条件​

  • @cloudbase/js-sdk 3.11.0 或更高版本
  • 已开通云开发环境,具备生图资源(如小程序成长计划赠送额度)
  • 仅支持通过云开发 SDK 调用,与旧版 hunyuan-image 通道不同,无需配置 generateImageSubUrlConfig

使用示例​

基本文生图​

import cloudbase from "@cloudbase/js-sdk";

const app = cloudbase.init({ env: "your-env-id" });
const ai = app.ai();

const imageModel = ai.createImageModel("cloudbase");

const res = await imageModel.generateImage({
model: "hy-image-v3.5-preview",
messages: [
{
role: "user",
content: [{ type: "text", text: "一只在沙滩上奔跑的金毛犬,傍晚的暖色光" }],
},
],
});

// 最终交付图片,URL 12 小时内有效
const image = res.choices[0].delta.image;
console.log(image.url, image.width, image.height);

4K 输出​

const res = await imageModel.generateImage({
model: "hy-image-v3.5-preview",
size: "4096x4096", // 宽高 [256, 8192],面积不超过 4096x4096
messages: [
{ role: "user", content: [{ type: "text", text: "一张海报级构图的城市夜景" }] },
],
});

参考生图​

content 中混排文本与图片即可,图片支持公网 URL 或 Base64(data:image/...;base64,...):

const res = await imageModel.generateImage({
model: "hy-image-v3.5-preview",
session: "demo-session-001", // 多轮请求保持同一 session,提升效果与速度
messages: [
{
role: "user",
content: [
{ type: "text", text: "参考这张图的风格,画一只猫" },
{ type: "image_url", image_url: { url: "https://your-domain.com/dog.png" } },
],
},
],
});

多轮编辑​

下一轮请求的 messages = 上一轮的 messages + 上一轮响应的 assembled_history + 本轮新的 user 消息。assembled_history 由服务端拼好,直接透传即可:

// 第一轮
const firstMessages = [
{
role: "user",
content: [
{ type: "text", text: "参考这张图的风格,画一只猫" },
{ type: "image_url", image_url: { url: "https://your-domain.com/dog.png" } },
],
},
];
const firstRes = await imageModel.generateImage({
model: "hy-image-v3.5-preview",
session: "demo-session-001",
messages: firstMessages,
});

// 第二轮:回灌 assembled_history 继续编辑
const secondRes = await imageModel.generateImage({
model: "hy-image-v3.5-preview",
session: "demo-session-001",
messages: [
...firstMessages,
...firstRes.assembled_history,
{ role: "user", content: [{ type: "text", text: "把猫换成布偶猫品种,背景换成壁炉旁" }] },
],
});

输入参数​

参数类型必选说明
modelstring是固定为 hy-image-v3.5-preview,传入其他值 SDK 会直接报错
messagesArray<object>是多轮会话内容,从旧到新排列,服务端取最后一条 role=user 的消息作为本轮生图指令
sizestring否生成尺寸,格式 ${宽}x${高}。宽高 ∈ [256, 8192],面积不超过 4096x4096。传入即强制按该尺寸出图
seedinteger否生成种子,范围 [0, 2^63-1],为 0 或不传时随机。固定 seed + prompt + size 可复现结果
generate_max_pixelsinteger否目标面积档位,仅在未传 size 时生效。可选 1048576(1K)、2359296(1.5K,默认)、4194304(2K)
resize_max_pixelsinteger否输入参考图面积上限,默认 1048576,超过时等比缩放后再送入模型
sessionstring否会话 ID,多轮编辑时保持同值,请求会落到同一推理实例
footnotestring否自定义水印内容,最长 16 字符,生成在图片右下角
use_search_tool{ value: boolean }否外部搜索增强开关,默认关闭

messages 元素​

参数类型必选说明
rolestring是user / assistant / tool,tool 仅在回灌上一轮生图结果时出现
contentArray<object>否该轮内容,见下表。assistant 仅触发工具调用时可省略
reasoningstring否仅 assistant 回灌时使用,透传上一轮响应中的思维链原文
tool_callsArray<object>否仅 assistant 回灌时使用,标准 OpenAI tool_call 结构
tool_call_idstring否仅 role=tool 回灌时使用,须与 tool_calls[i].id 一致

content 元素​

参数类型必选说明
typestring是text 或 image_url
textstring否type=text 时的文本内容
image_url{ url: string }否type=image_url 时的图片,支持公网 URL 或 Base64。单图 ≤ 20MB,最多 20 张

尺寸与面积组合​

组合结果
只传 size强制按指定宽高出图,4K 场景用这种方式
size + generate_max_pixels兼顾 size 的比例与面积档位,取模型效果最佳的宽高
只传 generate_max_pixels默认 1:1 比例,面积归档到 1K / 1.5K / 2K
都不传模型基于 prompt 语义自主决定(默认 1.5K 档)

⚠️ generate_max_pixels 最高档位为 2K,需要 4K 输出必须通过 size 指定。

返回值​

interface CloudbaseGenerateImageOutput {
id: string; // 请求 traceID
object: string; // 固定 "image.chat.completion.chunk"
created: number; // Unix 秒级时间戳
model: string; // 上游内部版本标识,不建议用于业务分支
round: number; // 所属 LLM 轮次,从 0 起算
choices: Array<{
index: number;
delta: {
type?: string;
image?: {
url: string; // 最终交付图片 URL,12 小时有效
width: number;
height: number;
source: string;
tool_call_id: string;
};
};
finish_reason?: string | null; // 成功时通常为 null,判断成功以 delta.image 为准
}>;
usage?: { total_tokens: number };
tokenhub_usage?: { total_tokens: number };
request_id?: string;
assembled_history?: Array<object>; // 下一轮回灌消息序列,多轮编辑时透传
error?: { type: string; code: string; message: string; request_id?: string };
}

读取最终图片取 choices[0].delta.image.url;assembled_history 中的 role=tool 图片 URL 是中间产物,仅用于下一轮回灌。

⚠️ 所有图片 URL 均为临时地址,有效期 12 小时,请及时下载转存到云存储。

错误码​

HTTP 状态码说明处理建议
400请求格式有误检查字段类型与取值(如 size 约束、messages 结构)
401鉴权不通过检查环境与鉴权方式
422内容安全审核未通过调整 prompt 或业务策略
429请求并发超过限额退避重试,控制并发
500服务端内部错误可重试,持续失败请联系技术支持并提供 request_id
超时提示

图片生成耗时较长(4K 输出更久),在云函数中调用时建议将超时时间设置为 900 秒。