图像编辑
调用本接口对图像进行编辑。
支持模型列表
支持模型列表请查看千帆ModelBuilder-模型列表-图像编辑。
权限说明
调用本文API,需使用API Key鉴权方式。使用API Key鉴权调用API流程,具体调用流程,请查看认证鉴权。
请求参数
模型ID,说明:支持ernie-irag-edit、qwen-image-edit
需要编辑的图片链接,支持url和Base64编码格式。其中,只有qwen-image-edit支持单图和最多3张图片输入。说明:
· 大小:10MB以下
· 格式:支持PNG、JPG、JPEG、WEBP、BMP、ICO
· 长宽比例不超过4倍
· 长或宽不低于128像素值,为保障效果建议长宽都大于512像素值
· 输入为图像 URL 时,URL 链接在UTF-8编码下最大不超过1024个字节,超出限制后图片无法下载
· 输入为图像的 Base64 编码时,传入的格式需为:data:image/<图片格式>;base64,<Base64编码>
· 输入多图时,支持图像 URL 和 Base64 编码,格式为字符串数组,例如:["https://sdc-def***1","https://sdc-def***","https://sdc-def***"]
仅支持ernie-irag-edit入参,可选值如下:
· erase:消除对象,模型将消除参考图中遮罩选中的对象。选择feature为erase时,mask字段必传。默认生图尺寸说明:默认保持输入image长宽比,当短边分辨率<512 时,保留短边为512; 长边分辨率>1280时,会保留长边分辨率为1280。例如:image为500x1000时,生图尺寸为512x1024
· repaint:重绘对象,默认值为repaint,模型将根据输入的prompt重新绘制参考图中遮罩选中的对象。选择feature为repaint时,mask与prompt字段必传。
· variation:生成变体,模型将参考输入的prompt与image生成新的图片。选择feature为variation时,prompt字段必传,无需上传mask。默认生成图片尺寸说明:图片会在保持输入image的宽高比同时将图片宽x高总数值resize到1024x1024=1048576总数值,并且保证每个边都是16的倍数。resize后的最长边保证不会超过1440
控制图像编辑的区域,仅支持ernie-irag-edit入参,说明:
(1)feature为erase和repaint时,mask必填
(2)mask区域255,其余区域0。注意mask的宽高以及分辨率必须严格与image一致。
(3)输入支持url格式和Base64格式;输入为图像的 Base64 编码时,传入的格式需为:data:image/<图片格式>;base64,<Base64编码>
所需生成图片的描述。说明:
(1)只有当入参为ernie-irag-edit且feature为erase时,prompt可为空,其余情况不为空
(2)当入参为ernie-irag-edit时,长度不超过220个字符,支持中英文
(3)当入参为qwen-image-edit时,长度不超过800个字符,支持中英文
反向提示词,描述不希望画面中生成的内容,
(1)仅支持qwen-image-edit model 入参
(2)长度不超过500字符,可支持中文、英文
说明:
(1)支持自定义输出图片分辨率:
· 最小尺寸为512x512
· 最大尺寸为2048x2048
默认输出分辨率为1024x1024,建议输出分辨率为:
· 适用头像: ["768x768", "1024x1024", "1536x1536", "2048x2048"]
· 适用文章配图 :["1024x768", "2048x1536"]
· 适用海报传单:["768x1024", "1536x2048"]
· 适用电脑壁纸:["1024x576", "2048x1152"]
· 适用海报传单:["576x1024", "1152x2048"]
(2)用户可在512x512-2048x2048之间入参图片输出分辨率,建议长宽比不要过大,分辨率尽可能在1024x1024左右,出图更清晰。输出分辨率过大或长宽比过大,会导致图片出图效果差
随机种子,说明:
(1) 仅支持qwen-image-edit model 入参
(2)不设置时,自动生成随机数,取值范围 [0, 4294967295]
采样步数,说明:
(1)仅支持qwen-image-edit model 入参
(2)采样步数(steps)数值越大,效果更精细,运行时间更长,取值范围为1-50
指导密度值,说明:用于在图像生成过程中调整模型的创造性与文本指导的紧密度。较高的值会使得生成的图像更忠于文本提示,但可能减少多样性;较低的值则允许更多创造性,增加图像变化。
(1)仅支持qwen-image-edit model 入参
(2)默认值为4.0,取值范围0-20
说明:
(1)feature为erase和repaint时,支持该入参。feature为variation时,不支持该入参。
(2)生成图片数量,说明:
· 默认值为1
· 取值范围为1-4
· qwen-image-edit只支持入参1
· 单次生成的图片较多及请求较频繁可能导致请求超时
是否开启prompt智能改写,说明:
(1)仅支持 qwen-image-edit model入参
(2)开启后会使用大模型对输入prompt进行智能改写,仅对正向提示词有效。对于较短的输入prompt生成效果提升明显,但会增加3-4秒耗时
(3)默认值为true,默认开启智能改写
控制是否添加水印标识,说明:
(1)默认为false
(2)若改为true,生成的图片右下角会自动添加“AI生成”字样的可见水印
POST /v2/images/edits HTTP/1.1
Host: qianfan.baidubce.com
Authorization: authorization string
Content-Type: application/json
{
"model": "ernie-irag-edit",
"image":"https://sdc-def***",
"mask":"https://sdc-def***",
"feature":"erase"
}
示例代码
curl --location 'https://qianfan.baidubce.com/v2/images/edits' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer bce-v3/ALTAK-*********/614fb**********' \
--data '{
"model": "ernie-irag-edit",
"image":"https://sdc-def***",
"mask":"https://sdc-def***",
"feature":"erase"
}'
import requests
import json
def main():
url = "https://qianfan.baidubce.com/v2/images/edits"
payload = json.dumps({
"model": "ernie_irag_edit",
"image":"https://sdc-def***",
"mask":"https://sdc-def***",
"feature":"erase"
})
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer bce-v3/ALTAK-*********/614fb**********'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
if __name__ == '__main__':
main()
返回响应
时间戳
生成的图片列表
显示子属性
隐藏子属性
显示子属性
隐藏子属性
图片链接,有效期24h
{
"id": "as-iwjxy4gpyc",
"created": 1744787581,
"data": [
{
"url": "http://qianfan-modelbui******"
}
]
}
错误码
如果请求错误,服务器返回的JSON文本包含以下参数。
| 名称 | 描述 |
|---|---|
| code | 错误码 |
| message | 错误描述信息,帮助理解和解决发生的错误 |
| type | 错误类型 |
更多相关错误码,请查看模型错误码说明。
