使用步骤
使用 OpenAI 的 DALL-E 2 生成图像需要以下步骤:
准备文本描述:需要一个文本描述来描述所需生成的图像。
发送 API 请求:使用对应语言的 API 库向 OpenAI API 发送请求,并将文本描述作为请求参数。
解析 API 返回:从 API 返回中解析生成的图像并保存到本地。
代码举例
Java
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.Reader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.HashMap;
import java.util.Map;
import com.google.gson.Gson;
public class OpenAIDalle2 {
public static void main(String[] args) throws IOException {
// 发送 API 请求
URL url = new URL("https://api.openai.com/v1/images/generations");
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setRequestMethod("POST");
con.setRequestProperty("Content-Type", "application/json");
con.setRequestProperty("Authorization", "Bearer <API_KEY>");
con.setDoOutput(true);
// 请求参数
Map<String, Object> requestJson = new HashMap<>();
requestJson.put("model", "image-alpha-001");
requestJson.put("prompt", "A four-legged animal that barks");
requestJson.put("num_images", 1);
requestJson.put("size", "1024x1024");
// 发送请求
con.getOutputStream().write(new Gson().toJson(requestJson).getBytes());
// 解析 API 返回
Reader reader = new InputStreamReader(con.getInputStream());
OpenAIDalle2Response response = new Gson().fromJson(reader, OpenAIDalle2Response.class);
// 保存图像到本地
// ...
}
private static class OpenAIDalle2Response {
String data;
// ...
}
}
nodejs
安装客户端
使用Node.js生成图像,需要先安装OpenAI API客户端
npm install openai
导入OpenAI API客户端
const openai = require("openai");
配置您的API密钥
openai.promise.setApiKey("<API_KEY>");
生成图像
openai.ImageCompletion.create({
prompt: "A 3-story red brick building with a white door and windows. In front of the building, there is a green tree with a swing hanging from it.",
n: 1,
size: "1024x1024",
response_format: "url"
}).then((image) => {
console.log(image.data[0].url);
}).catch((error) => {
console.error(error);
});
python
安装OpenAI API客户端
pip install openai
导入OpenAI API客户端
import openai
配置您的API密钥
openai.api_key = "<API_KEY>"
生成图像
prompt = "A 3-story red brick building with a white door and windows. In front of the building, there is a green tree with a swing hanging from it."
completion = openai.Completion.create(
engine="image-alpha-001",
prompt=prompt,
max_tokens=1024,
n=1,
stop=None,
temperature=0.5,
)
print(completion.choices[0].text)