画像生成AI「DALL・E3」をAPIで実行してみよう!

この記事は「ウィルゲート Advent Calendar 2024」の 2 日目の記事です。 adventar.org

こんにちは!ウィルゲート開発グループの佐々木です。

皆さんは、OpenAIが提供する画像生成AI「DALL·E 3」をご存知でしょうか?
この記事では、DALL·E 3の概要や使い方、そして実際の生成例をご紹介します!

DALL·E3とは?

DALL·E3(ダリ・スリー)は、2023年9月にOpenAI社から発表された画像生成AIです。
ユーザーが入力したテキストプロンプトに基づき、その内容を反映した画像をAIが作成するサービスとなります。 ちなみに、この名前は画家のサルバドール・ダリとピクサーアニメ映画のウォーリー(WALL-E)を組み合わせたものだそうです!

openai.com

2024年現在、DALL·Eには3つのバージョンが存在しています。2021年1月に最初のモデル「DALL·E」、2022年9月に「DALL·E2」がリリースされ、「DALL·E3」は最新バージョンとなります!

DALL·E3を使ってみよう

DALL·E 3を利用する方法はいくつかありますが、本記事ではOpenAIのAPIを用いた使用方法について解説します。

curlでの実行方法

APIをcurlでの実行するシンプルな方法をご紹介します!

まずは、OpenAIのAPIを実行するために必要なAPIキーを発行しましょう。
※本記事では詳細を省きますが、OpenAIの管理画面から簡単に発行することが出来ます。

APIキーが発行できたら、早速実行してみましょう!
以下の$OPENAI_API_KEYをAPIキーへ置き換え、ターミナル等で実行してみてください。

curl https://api.openai.com/v1/images/generations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \<br>
  -d '{
    "model": "dall-e-3",
    "prompt": "公園を走る犬",
    "n": 1,
    "size": "1024x1024"
  }'

すると、以下のような結果が返ってきます。

{
  "created": 1732586011,
  "data": [
    {
      "revised_prompt": "A dog running in the park",
      "url": "https://oaidalleapiprodscus.blob.core.windows.net/private/org-yFcocR7xF5BrMEoMfNCgzZ3f/user-isFf4gtYgi2R4Q5mTvUExFmf/img-8sgxasYsIA6tV51x5HvYgobU.png?st=2024-11-26T00%3A53%3A30Z&se=2024-11-26T02%3A53%3A30Z&sp=r&sv=2024-08-04&sr=b&rscd=inline&rsct=image/png&skoid=d505667d-d6c1-4a0a-bac7-5c84a87759f8&sktid=a48cca56-e6da-484e-a814-9c849652bcb3&skt=2024-11-26T01%3A53%3A30Z&ske=2024-11-27T01%3A53%3A30Z&sks=b&skv=2024-08-04&sig=znSOMidPHd77Wta5FazvrVATR1TNC803t8bdnfCwzEQ%3D"
    }
  ]
}

urlに記載のリンクへアクセスすると、生成された画像を閲覧することができます!
※リンクは一定時間で無効になります。リンクが有効な内に画像を保存しておきましょう。

revised_promptには実際に実行されたプロンプトが表示されます。こちらはユーザーが入力した内容をもとに、より詳細なプロンプトへAIが自動的に書き直すというDALL·E3の新規機能となります。この機能により、より高品質が画像を生成することが可能となりました!

ちなみに、以下の画像が生成されました。

「公園を走る犬」 かわいい

オプションについて

続いて、オプションについて解説します。
DALL・Eでは以下のようなオプションを指定することが出来ます。

項目 説明 指定例 備考
model 使用するモデルを指定 dall-e-2,dall-e-3
prompt 生成する画像の内容を指示
size 画像のサイズ 1024x1024,1792x1024
quality 画像の品質 hd dall-e-3のみ対応
デフォルトは標準
n 画像の枚数 1 dall-e-2のみ対応
style 画像のスタイル vivid,natural dall-e-3のみ対応
response_format 画像の形式 url,b64_json URLは60分のみ有効

上記のオプションを活用することで、様々な条件を画像を生成することが可能です。

実行コストについて

API経由では利用は有料となりますが、かなりの低価格で利用することが出来ます。
オプション設定にもよりますが、1枚あたり約6円で生成が可能です!

2024年12月現在における実行コストは以下の通りです。

モデル 画質 サイズ 価格/1枚
DALL·E 3 Standard 1024×1024 $0.04
Standard 1024×1792, 1792×1024 $0.08
DALL·E 3 HD 1024×1024 $0.08
HD 1024×1792, 1792×1024 $0.12
DALL·E 2 1024×1024 $0.02
512×512 $0.018
256×256 $0.016

OpenAI公式サイト(https://openai.com/api/pricing/)から引用

実際に生成した画像

続いて、実際にDALL・E3で生成した画像をいくつかご紹介します。

「そらとぶ餃子」とても"良い"


「ビル街に佇むハムスター」思ったより大きかった


「大宇宙少林サッカー」 ちゃんと大宇宙で少林サッカーしてる!

おわりに

いかがでしたでしょうか?
APIを用いて低コストかつ簡単に画像を生成できることをご紹介しました。生成された画像の質も高く、私自身も驚きました!

まだ試したことがない方は、ぜひ一度「DALL·E 3」を体験してみてください!

ウィルゲート Advent Calendar 2024」、翌日は加藤さんによる「ログ分析をより便利に!Datadogパイプラインの活用法」です。 お楽しみに!