OpenAI 图像生成 API 的应用与使用

8 阅读3分钟

DALL-E 3 是由 OpenAI 开发的一款图像生成模型,它能够根据文本描述生成高质量的图像。本文将详细介绍如何使用 OpenAI 图像生成 API,让开发者能够轻松利用 DALL-E 的图像生成能力。

背景

Ace Data Cloud 提供的 OpenAI 图像生成 API 让开发者可以在自己的应用程序中集成图像生成的功能,适用于多种场景,如电商产品展示、社交媒体内容创作、教育工具等。通过简单的 API 调用,用户能够生成符合特定需求的图像。

应用流程

首先,访问 OpenAI 图像生成 API 页面,点击 "Acquire" 按钮获取请求所需的凭证:

若您还未注册或登录,将会被重定向至登录页面。完成登录或注册后,您将返回到当前页面。

首次使用时,系统会提供免费的配额,允许用户免费体验 API。

基本使用

接下来,您可以在接口上填写相应内容,如下图所示:

在首次使用接口时,您需要填写至少三项信息:authorization(可从下拉列表直接选择),model(选择要使用的 OpenAI DALL-E 模型),以及 prompt(输入图像生成提示)。

右侧会生成相应的代码,您可以直接复制运行,或点击 "Try" 按钮进行测试。

以下是 Python 示例调用代码:

import requests

url = "https://api.acedata.cloud/openai/images/generations"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "model": "dall-e-3",
    "prompt": "A cute baby sea otter"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)

调用后返回结果如下:

{
  "created": 1721626477,
  "data": [
    {
      "revised_prompt": "A delightful image showcasing a young sea otter...",
      "url": "https://dalleprodsec.blob.core.windows.net/private/images/5d98aa7c-80c6-4523-b571-fc606ad455b9/generated_00.png"
    }
  ]
}

返回结果中包含多个字段,主要包括 created(图像生成标识 ID)和 data(生成图像的信息)。

图像质量参数 quality

接下来介绍如何设置图像生成结果的详细参数,其中图像质量参数 quality 包括两种类型:standard 表示生成标准图像,hd 表示生成更细致和一致的图像。

以下是设置图像质量为 standard 的示例:

相应的 Python 示例代码如下:

import requests

url = "https://api.acedata.cloud/openai/images/generations"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "model": "dall-e-3",
    "prompt": "A cute baby sea otter",
    "quality": "standard"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)

图像大小参数 size

您还可以设置生成图像的大小,以下是设置为 1024 * 1024 的示例:

对应的 Python 示例代码如下:

import requests

url = "https://api.acedata.cloud/openai/images/generations"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "model": "dall-e-3",
    "prompt": "A cute baby sea otter",
    "size": "1024x1024"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)

图像风格参数 style

图像风格参数 style 包含两个选项:vivid 表示生成更生动的图像,natural 表示生成更自然的图像。

以下是设置风格为 vivid 的示例代码:

import requests

url = "https://api.acedata.cloud/openai/images/generations"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "model": "dall-e-3",
    "prompt": "A cute baby sea otter",
    "style": "vivid"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)

异步回调

由于图像生成可能需要一些时间,如果 API 请求长时间未响应,HTTP 请求会保持连接开启,导致系统资源消耗。因此,API 还支持异步回调。

请求时,您可以指定一个 callback_url 字段,API 会返回一个 task_id,生成结果会发送到您指定的 callback_url

以下是示例代码:

import requests

url = "https://api.acedata.cloud/openai/images/generations"

headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json"
}

payload = {
    "model": "dall-e-3",
    "prompt": "A cute baby sea otter",
    "callback_url": "https://webhook.site/3d32690d-6780-4187-a65c-870061e8c8ab"
}

response = requests.post(url, json=payload, headers=headers)
print(response.text)

结论

通过本文,您已经学习了如何轻松使用 OpenAI DALL-E 的图像生成能力。如有任何问题,请随时联系技术支持团队。


标签

  • OpenAI
  • DALL-E
  • API
  • 图像生成
  • Ace Data Cloud