DALL-E 是 OpenAI 开发的一种生成式预训练转换器 (GPT) 模型,可以根据文本描述生成图像。它在文本和图像数据集上进行训练,使其能够理解两者之间的关系并生成与给定文本描述相匹配的图像。该 API 可供开发人员使用,并且可以与各种编程语言(如 JavaScript、Python 等)集成。在本教程中,您将学习如何将 DALL-E 与 Python 结合使用。
项目准备
让我们开始吧。首先创建一个新的空项目文件夹:
$ mkdir python-dalle
$ cd python-dalle
在下一步中,我们需要从 OpenAI 仪表板获取 OpenAI API 客户端密钥。
获取 OpenAI API 密钥
要获取 OpenAI API 的 API 密钥,您需要在 OpenAI 网站 (https://openai.com/) 上注册一个免费的 OpenAI 帐户:
要注册一个帐户,请单击主页右上角的“注册”按钮,然后按照提示创建一个新帐户。创建帐户后,您可以通过访问帐户设置的“API”部分来获取 API 密钥。
在“API”部分,您会找到一个标有“生成 API 密钥”的按钮。单击此按钮可生成一个新的 API 密钥,然后您可以使用该密钥从您的 Python 应用程序向 OpenAI API 发出请求。请务必妥善保管您的 API 密钥,不要与其他任何人共享。
为 Python 安装 OpenAI API 客户端库
要为 Python 安装 OpenAI API 客户端库,您需要在系统上安装 Python 和 pip(Python 包管理器)。
要安装该库,请打开终端或命令提示符并键入以下命令:
$ pip install openai
这将安装 OpenAI API 客户端及其所有依赖项。
安装完成后,您可以通过在脚本顶部添加以下行来在 Python 代码中导入该库:
import openai
让我们这样做:在项目文件夹中创建一个新文件 dalle.py 并首先在文件顶部插入 import 语句。
让我们进一步扩展 Python 代码并使用 OpenAI 客户端库与 DALL-E 交互:
import openai
# Your DALL-E API key
openai.api_key = "YOUR_API_KEY_HERE"
# The text prompt you want to use to generate an image
prompt = "A moose in the snow"
# Generate an image
response = openai.Image.create(
prompt=prompt,
model="image-alpha-001",
size="1024x1024",
response_format="url"
)
# Print the URL of the generated image
print(response["data"][0]["url"])
此代码使用 OpenAI Python 客户端库与 DALL-E API 交互并根据文本提示生成图像。
首先,它导入openai库。然后,它将带有 openai.api_key 的 API 密钥设置为您从 OpenAI 获得的密钥。
然后,它定义了文本提示,在本例中用于生成带有提示“A moose in the snow”的图像。
接下来,它openai.Image.create()使用几个参数调用该函数:
- prompt:用于生成图像的文本提示。
- model:用于图像生成的 DALL-E 模型。
- size:生成图像的大小。
- response_format:响应的格式 - 在本例中为“url”。
此函数向 DALL-E API 发送请求并以字典的形式返回响应。
最后,它通过访问响应数据中的“url”字段来打印生成图像的 URL。
需要注意的是,这段代码是一个示例,您可以根据需要更改提示、模型和参数。
测试 Python 脚本
让我们通过键入以下命令来测试 Python 脚本是否按预期工作:
$ python dalle.py
然后,您应该收到一个链接到图像的 URL,该图像由 DALL-E 根据提供的文本提示生成:
在浏览器中打开图片网址,这样就可以看到结果了: