Python初心者向け|画像生成AI DALL·EをPythonで使ってみよう【第11回】

未分類

PythonでAIと連携する力がついてきた今、今回は「画像生成AI」に挑戦してみましょう。
あなたの“言葉”からAIが“絵”を描いてくれる未来のような技術。それが、DALL·E(ダリ)です。

DALL·Eは、ChatGPTと同じOpenAIが開発した画像生成モデルです。
テキスト(プロンプト)を入力するだけで、それにマッチした画像を自動生成してくれます。

DALL·Eって何?初心者にもわかる基礎解説

DALL·Eは「テキスト → 画像変換」が可能なAIモデルです。
例えるなら「お絵描きが超得意なAI」。あなたが書いた指示文(例:「空を飛ぶ猫のイラスト」)に従って、想像した画像を作ってくれます。

  • 開発元: OpenAI
  • 正式名称: DALL·E 2 / DALL·E 3
  • 利用方法: ChatGPT(Plus)や API経由

今回は、Pythonコードを使ってAPI経由でDALL·Eを呼び出します。
プログラミングを通じて「テキストから画像生成」を実体験してみましょう。

事前準備|必要なライブラリ・APIキーなど

① OpenAI APIキーを取得

OpenAIのアカウントを持っていない方は、こちらから新規登録しましょう。
ログイン後、「API Keys」から新しいキーを発行して控えてください。

② ライブラリのインストール


pip install openai

このライブラリはChatGPTと同じく、DALL·Eの操作にも使えます。

基本コード|DALL·Eで画像を生成して保存する


import openai
import requests
from PIL import Image
from io import BytesIO

openai.api_key = "sk-xxxxxxxxxxxxxxxx"

prompt = "富士山をバックに立つサムライのイラスト"

response = openai.Image.create(
    prompt=prompt,
    n=1,
    size="512x512"
)

image_url = response['data'][0]['url']

# 画像を取得して保存
img_data = requests.get(image_url).content
with open('output.png', 'wb') as handler:
    handler.write(img_data)

print("画像をoutput.pngに保存しました。")

コードのポイント解説(初心者向け)

  • prompt:AIへの指示文(例:「青空の下に猫がいる絵」など)
  • n=1:生成する画像の枚数
  • size=\"512x512\":画像のサイズ(最大1024×1024まで対応)
  • requests:画像URLから実データを取得
  • PIL.Image:画像操作に便利なライブラリ(表示用)

実行すると、output.png という画像ファイルが作成されます。
プロンプトの工夫によって、表現の幅は無限に広がります。

プロンプトのコツ|生成結果をよくするために

生成画像の質は、プロンプトの工夫にかかっています。

よく使われるワード例:

  • 「realistic」「anime style」「minimalist」「digital painting」
  • 「landscape」「portrait」「fantasy」「futuristic」
  • 日本語でもOKだが、英語の方が正確に伝わることが多い

例1:

“A futuristic cityscape at night, cyberpunk style”

例2:

“An anime-style girl sitting in a cherry blossom garden”

注意点・制限・トラブル対策

  • APIキーの誤使用:キーは絶対に公開しないこと(GitHubなどに載せない)
  • 画像生成回数の制限:無料枠には上限あり(月数回程度)
  • プロンプトに対して画像が不適切・未生成となることがある:ポリシーによって拒否されることも
  • エラー:429や401 → APIキーの制限超過、または認証ミス

応用アイデア|DALL·E × 自作アプリ

DALL·Eで生成した画像は、以下のように応用できます:

  • ブログのアイキャッチ画像を自動生成
  • LINE Botで「画像を作って」と指示 → 自動応答
  • Webフォームからの指示を元に画像生成

今後、FlaskやStreamlitを使ってWebアプリ化する流れもご紹介予定です。

まとめ|DALL·Eは想像力を形にするAI

  • PythonからDALL·Eを使って画像を生成できる
  • プロンプトの工夫でアート表現が無限に広がる
  • 今後のツール開発やコンテンツ制作にも応用可能

次回予告|AIでブログの下書きを自動生成してみよう

Day 12では、ChatGPT APIを活用して「ブログ記事の下書きを自動生成する」ツールを作成していきます。
タイトルを渡すだけで、見出しと本文がサッと生成される自動化の世界へご案内します。

コメント

タイトルとURLをコピーしました