图像Images
更新时间:2024-07-08
注意: 为提升开发者使用体验,本文内容已合并至对应API文档,请查看API鉴权及调用-图像Images-各模型调用文档;本文档已于2024年7月5日在千帆大模型平台文档中心下线,内容不再更新。
功能介绍
根据用户输入的文本生成图片。
注意事项
- 本文内容适用千帆Python、Go、Java和Node.js SDK。SDK支持功能详情,请查看SDK功能列表。
-
模型不同,调用SDK时,使用参数不同。请结合具体模型,查看参数使用说明进行调用。
- 默认使用模型,即Stable-Diffusion-XL,调用时无需填写model参数,使用的模型,详情见参数说明。
- 指定支持预置服务的模型,使用model参数指定支持预置服务的模型,详情见参数说明。
- 用户快速部署自行发布的模型服务,需使用参数endpoint,详见请求参数说明。
- 调用文心一格(精调后)相关,需先经过SFT模型训练后发布服务,才能调用对应API,更多内容请参考新手指南-平台使用快速开始。
支持模型列表
支持的模型列表如下,及各模型支持的调用方法说明如下,更多详情见请求参数说明。
模型 | 支持预置服务的模型 (使用model参数) |
用户自行发布的模型服务 (使用endpoint参数) |
---|---|---|
Stable-Diffusion-XL | ✓ | ✓ |
文心一格(精调后) | ✕ | ✓ |
调用示例
默认模型
import os
import qianfan
from PIL import Image
import io
# 使用安全认证AK/SK鉴权,通过环境变量方式初始化;替换下列示例中参数,安全认证Access Key替换your_iam_ak,Secret Key替换your_iam_sk
os.environ["QIANFAN_ACCESS_KEY"] = "your_iam_ak"
os.environ["QIANFAN_SECRET_KEY"] = "your_iam_sk"
t2i = qianfan.Text2Image()
resp = t2i.do(prompt="A Ragdoll cat with a bowtie.", with_decode="base64")
img_data = resp["body"]["data"][0]["image"]
img = Image.open(io.BytesIO(img_data))
img.show(img)
import com.baidubce.qianfan.Qianfan;
import com.baidubce.qianfan.model.image.Text2ImageResponse;
public class Main {
public static void main(String[] args) {
// 使用安全认证AK/SK鉴权,替换下列示例中参数,安全认证Access Key替换your_iam_ak,Secret Key替换your_iam_sk
Qianfan qianfan = new Qianfan("your_iam_ak", "your_iam_sk");
// 调用文生图模型
Text2ImageResponse response = qianfan.text2Image()
.prompt("A Ragdoll cat with a bowtie")
.execute();
// 返回信息,返回图片base64编码信息等
System.out.println("headers: "+response.getHeaders());
System.out.println("created: "+response.getCreated());
System.out.println("id: "+response.getId());
System.out.println("prompttokens: "+response.getUsage().getPromptTokens());
System.out.println("totaltokens: "+response.getUsage().getTotalTokens());
System.out.println("b64image: "+response.getData().getFirst().getB64Image());
System.out.println("image: "+ Arrays.toString(response.getData().getFirst().getImage()));
System.out.println("index: "+response.getData().getFirst().getIndex());
System.out.println("object: "+response.getObject());
}
}
package main
import (
"context"
"encoding/base64"
"fmt"
"os"
"github.com/baidubce/bce-qianfan-sdk/go/qianfan"
)
func main() {
// 使用安全认证AK/SK鉴权,通过环境变量初始化;替换下列示例中参数,安全认证Access Key替换your_iam_ak,Secret Key替换your_iam_sk
os.Setenv("QIANFAN_ACCESS_KEY", "your_iam_ak")
os.Setenv("QIANFAN_SECRET_KEY", "your_iam_sk")
text2img := qianfan.NewText2Image()
resp, err := text2img.Do(context.TODO(), &qianfan.Text2ImageRequest{
Prompt: "A Ragdoll cat with a bowtie.",
})
if err != nil {
panic(err)
}
img := resp.Data[0].Base64Image
imgData, err := base64.StdEncoding.DecodeString(img)
if err != nil {
panic(err)
}
outputFile := "output.jpg"
f, err := os.Create(outputFile)
if err != nil {
panic(err)
}
defer func() {
if err := f.Close(); err != nil {
panic(err)
}
}()
_, err = f.Write(imgData)
if err != nil {
panic(err)
}
fmt.Printf("Image saved to %s\n", outputFile)
}