DALL-E 3 API はAIによる画像生成の分野を革新し、比類のない創造性と柔軟性を提供しています。開発者、アーティスト、または単なるAI愛好家であれ、DALLE 3 API を効果的に使用する方法を理解することで、無限の可能性を開くことができます。この記事では、この強力なツールを最大限に活用するための基本的な手順と考慮事項を明確にすることを目指しています。
しかし、始める前に、Anakin AIを見てみることをお勧めします。
100以上のAI APIの請求に問題がありますか? Anakin AIは、すべてを1か所にまとめたものです! GPT、DALL-E、Stable DiffusionなどのAIモデル。Anakin AIの特長は次のとおりです。
- オールインワンプラットフォーム:複数のAPIや請求アカウントを管理する必要がないため、さまざまなAIモデルに簡単にアクセスできます。
- 支払いの煩わしさなし:セットアップや支払いプロセスの複雑さを排除し、より幅広いユーザーにアクセス可能にします。
- コード不要のアプリビルダー:コーディング知識なしで、ユーザーがAIに基づいたアプリケーションを作成できるようにし、無限のイノベーションと創造性を開放します。
Anakin AIは人工知能のパワーを探索し活用するためのゲートウェイであり、プロジェクトやビジネスソリューションにAIを統合することがこれまで以上に簡単になりました。
DALL-E 3とは何ですか?
DALL-E-3とは? 簡単に言えば、テキストの説明から画像を生成できるAIモデルで、直感的かつ強力なAI DALLE 3 エクスペリエンスを提供します。
DALL-E 3は、OpenAIのDALL-Eシリーズの最新バージョンで、GPT DALL-E 3の優れた画像生成能力を組み合わせています。先行バージョンDALL-E 2とは異なり、DALLE 3リリースでは「DALL-E Vivid vs Natural」モードなどの機能が導入され、ユーザーは画像のスタイル出力をカスタマイズすることができます。
DALL-E 3はどのように機能しますか?
DALLE APIは、テキストのプロンプトを解釈して画像を生成することで機能します。このプロセスは、GPT DALL E 3画像生成として知られ、DALL Eプロンプトガイドで説明されたコンセプトを理解し視覚化するために高度な機械学習技術を活用しています。
ChatGPTでDALLE 3を使用する方法には、APIを統合してチャット環境内でシームレスに画像を生成することが含まれており、OpenAI DALLE3の多様性を示しています。
DALL-E 3 APIへのアクセス方法:
DALL-E 3の使用を開始するには、次の手順が必要です:
- 公式のOpenAI DALLE APIのウェブサイトにアクセスし、サインアップする。
- OpenAIアカウントを作成し、APIキーを取得する。
- DALL-E APIの価格設定とDALLE 3のコストは、APIをプロジェクトで使用するスケールを決定するため重要な考慮事項です。
OpenAI APIイメージ生成機能は、さまざまなプログラミング言語を介してアクセスできます。詳細なDALL Eのチュートリアルが利用可能であり、プロセスを案内します。
OpenAI APIキーの使用方法
DALLE3 APIキーの使用方法
DALLE3 APIには、次の3つのAPIエンドポイントがあります
- Generations:入力キャプションに基づいて画像を生成する
- Edits:既存の画像を編集または拡張する
- Variations:入力画像のバリエーションを生成する
DALLE3 APIの簡単なセットアップ方法
- 必要なパッケージをインポートする
- OpenAI APIキーをインポートする:ターミナルで
export OPENAI_API_KEY="your API key"
を実行することでこれを行うことができます。 - 画像の保存先ディレクトリを設定する
# インポート
from openai import OpenAI # API呼び出しのためにOpenAIのPythonライブラリをインポート
import requests # 画像のダウンロードに使用
import os # ファイルパスへのアクセスに使用
from PIL import Image # 画像の表示と編集に使用
# OpenAIクライアントの初期化
client = OpenAI(api_key=os.environ.get("OPENAI_API_KEY", "<your OpenAI API key if not set as env var>"))
# 保存先ディレクトリの設定
image_dir_name = "images"
image_dir = os.path.join(os.curdir, image_dir_name)
# ディレクトリがまだ存在しない場合は作成
if not os.path.isdir(image_dir):
os.mkdir(image_dir)
# 保存先ディレクトリの表示
print(f"{image_dir=}")
DALLE3 APIでの画像生成
生成APIエンドポイントは、テキストのプロンプトに基づいて画像を作成します。
APIリファレンス
必須入力:
prompt
(str): 生成する画像のテキストの説明。dall-e-2の場合は最大長が1000文字で、dall-e-3の場合は最大長が4000文字です。
オプション入力:
model
(str): 画像生成に使用するモデル。デフォルトはdall-e-2です。n
(int): 生成する画像の数。1から10の間である必要があります。デフォルトは1です。quality
(str): 生成される画像の品質。hdはより細かいディテールと画像全体の一貫性を持つ画像を生成します。このパラメータはdall-e-3でのみサポートされます。response_format
(str): 生成された画像の返される形式。"url"または"b64_json"のいずれかである必要があります。デフォルトは"url"です。size
(str): 生成される画像のサイズ。dall-e-2の場合は256x256、512x512、または1024x1024のいずれかである必要があります。dall-e-3モデルの場合は1024x1024、1792x1024、または1024x1792のいずれかである必要があります。デフォルトは"1024x1024"です。style
(str | null): 生成された画像のスタイル。"vivid"または"natural"のいずれかである必要があります。vividはハイパーリアルで劇的な画像の生成に傾斜させます。naturalはより自然でハイパーリアルではない外観の画像を生成します。このパラメータはdall-e-3でのみサポートされます。user
(str): お客様のエンドユーザーを表す一意の識別子。これにより、OpenAIが監視および悪用を検出できるようになります。詳細を見る
# 画像の生成
# プロンプトの設定
prompt = "A cyberpunk monkey hacker dreaming of a beautiful bunch of bananas, digital art"
# OpenAI APIを呼び出す
generation_response = client.images.generate(
model = "dall-e-3",
prompt=prompt,
n=1,
size="1024x1024",
response_format="url",
)
# レスポンスの表示
print(generation_response)
# 画像の保存
generated_image_name = "generated_image.png" # 好きな名前; ファイルの種類は.pngである必要があります
generated_image_filepath = os.path.join(image_dir, generated_image_name)
generated_image_url = generation_response.data[0].url # レスポンスから画像のURLを抽出
generated_image = requests.get(generated_image_url).content # 画像をダウンロード
with open(generated_image_filepath, "wb") as image_file:
image_file.write(generated_image) # 画像をファイルに書き込む
# 画像の表示
print(generated_image_filepath)
display(Image.open(generated_image_filepath))
Variations
バリエーションのエンドポイントでは、入力画像と似た新しい画像(バリエーション)を生成します。APIリファレンス
ここでは、上記で生成された画像のバリエーションを生成します。
必須入力:
image
(str): バリエーションの基になる画像。有効なPNGファイルで、サイズが4MB未満で、正方形である必要があります。
オプション入力:
model
(str): 画像バリエーションに使用するモデル。現時点ではdall-e-2のみサポートされています。
n
(int): 生成する画像の数。1から10の間である必要があります。デフォルトは1です。size
(str): 生成される画像のサイズ。"256x256"、 "512x512"、または "1024x1024"のいずれかである必要があります。より小さい画像は高速です。デフォルトは "1024x1024"です。response_format
(str): 生成された画像の返される形式。"url"または"b64_json"のいずれかである必要があります。デフォルトは"url"です。user
(str): お客様のエンドユーザーを表す一意の識別子。これにより、OpenAIが監視および悪用を検出できるようになります。詳細を見る
# バリエーションの生成
# OpenAI APIを呼び出す(create_variationではなくcreateを使用)
variation_response = client.images.create_variation(
image=generated_image, # 以前に生成した画像
n=2,
size="1024x1024",
response_format="url",
)
# レスポンスの表示
print(variation_response)
# 画像の保存
variation_urls = [datum.url for datum in variation_response.data] # URLを抽出
variation_images = [requests.get(url).content for url in variation_urls] # 画像をダウンロード
variation_image_names = [f"variation_image_{i}.png" for i in range(len(variation_images))] # 名前を作成
variation_image_filepaths = [os.path.join(image_dir, name) for name in variation_image_names] # ファイルパスを作成
for image, filepath in zip(variation_images, variation_image_filepaths): # バリエーションをループ処理
with open(filepath, "wb") as image_file: # ファイルを開く
image_file.write(image) # 画像をファイルに書き込む
# 元の画像の表示
print(generated_image_filepath)
display(Image.open(generated_image_filepath))
# 新しいバリエーションの表示
for variation_image_filepaths in variation_image_filepaths:
print(variation_image_filepaths)
display(Image.open(variation_image_filepaths))
DALLE3 APIで生成された画像の編集の方法
編集エンドポイントでは、DALL·Eを使用して既存の画像の特定の部分を生成します。3つの入力が必要です:編集する画像、再生成する部分を指定するマスク、および望ましい画像を説明するプロンプト。APIリファレンス
必須入力:
image
(str): 編集する画像。有効なPNGファイルで、4MB未満で、正方形である必要があります。マスクが提供されていない場合、画像には透明性が必要であり、それがマスクとして使用されます。prompt
(str): 望ましい画像のテキストの説明。最大長は1000文字です。
オプション入力:
mask
(file): 画像を編集する場所を示す追加の画像。有効なPNGファイルで、4MB未満で、画像と同じ寸法である必要があります。model
(str): 編集画像に使用するモデル。現時点ではdall-e-2のみサポートされています。n
(int): 生成する画像の数。1から10の間である必要があります。デフォルトは1です。size
(str): 生成される画像のサイズ。"256x256"、"512x512"、または"1024x1024"のいずれかである必要があります。より小さい画像は高速です。デフォルトは"1024x1024"です。response_format
(str): 生成された画像の返される形式。"url"または"b64_json"のいずれかである必要があります。デフォルトは"url"です。user
(str): お客様のエンドユーザーを表す一意の識別子。これにより、OpenAIが監視および悪用を検出できるようになります。
DALLE3 APIで編集領域を設定する
編集には、「マスク」が必要で、再生成する画像の一部を指定します。アルファが0(透明)のピクセルは再生成されます。以下のコードは、下半分が透明な1024x1024のマスクを作成します。
# マスクの作成
width = 1024
height = 1024
mask = Image.new("RGBA", (width, height), (0, 0, 0, 1)) # 不透明な画像マスクを作成
# 下半分を透明に設定
for x in range(width):
for y in range(height // 2, height): # マスクの下半分のみループします
# アルファ(A)をゼロに設定してピクセルを透明にします
alpha = 0
mask.putpixel((x, y), (0, 0, 0, alpha))
# マスクを保存
mask_name = "bottom_half_mask.png"
mask_filepath = os.path.join(image_dir, mask_name)
mask.save(mask_filepath)
DALLE3 APIでの編集の実行
次に、画像、キャプション、およびマスクをAPIに提供して、画像の編集の例を5つ取得します。
# 画像の編集
# OpenAI APIを呼び出す
edit_response = client.images.edit(
image=open(generated_image_filepath, "rb"), # 生成のセクションから
mask=open(mask_filepath, "rb"), # すぐ上のセクションから
prompt=prompt, # 生成のセクションから
n=1,
size="1024x1024",
response_format="url",
)
# レスポンスの表示
print(edit_response)
# 画像の保存
edited_image_name = "edited_image.png" # 好きな名前; ファイルの種類は.pngである必要があります
edited_image_filepath = os.path.join(image_dir, edited_image_name)
edited_image_url = edit_response.data[0].url # レスポンスから画像のURLを抽出
edited_image = requests.get(edited_image_url).content # 画像をダウンロード
with open(edited_image_filepath, "wb") as image_file:
image_file.write(edited_image) # 画像をファイルに書き込む
# 画像の表示
print(generated_image_filepath)
display(Image.open(generated_image_filepath))
# 編集した画像の表示
print(edited_image_filepath)
display(Image.open(edited_image_filepath))
このセクションは、DALLE3 APIによって生成された画像の編集を行う方法の続きであり、編集された画像を保存し、表示する方法に焦点を当てています。
DALLE3 APIから編集された画像を取得した後、保存するためのファイルに対して以下のPythonのコードスニペットを使用します。このコードは、APIのレスポンスから画像のURLを抽出し、画像をダウンロードして指定したディレクトリに保存します。
# 編集した画像の保存
edited_image_name = "edited_image.png" # 好きな名前の設定; ファイルの種類は.pngである必要があります。
edited_image_filepath = os.path.join(image_dir, edited_image_name) # ファイルのフルパスを作成します。
edited_image_url = edit_response.data[0].url # レスポンスから画像のURLを抽出します。
# URLから画像をダウンロードします。
edited_image = requests.get(edited_image_url).content
# バイナリ書き込みモードでファイルを開き、ダウンロードした画像を保存します。
with open(edited_image_filepath, "wb") as image_file:
image_file.write(edited_image)
編集した画像の表示
編集した画像を保存した後、Jupyterノートブック内で表示して結果を視覚的に確認することができます。以下のコードスニペットでは、PIL
パッケージのImage
クラスを使用して編集した画像ファイルを読み込み、表示します。
# 編集した画像の表示
print("編集した画像:")
display(Image.open(edited_image_filepath))
このセクションのコードは、以前に保存した編集した画像を読み込み、Jupyterノートブック内での表示にdisplay
関数を使用しています。これは、画像や他のマルチメディア要素をインラインで視覚化するためにJupyterノートブックで特に有用です。
DALLE3 APIのパフォーマンスを最適化する方法
効果的なプロンプトの作成
DALL Eのプロンプトガイドは、生成された画像の品質に重要な役割を果たします。DALL E 3とChat GPTを使用する方法では、プロンプトの作成の技術をマスターすることが重要であり、それが出力の関連性と創造性に大きな影響を与えることができます。
DALL-E 3の使用方法を効果的に行うには、さまざまなプロンプトのスタイルと構造を試行することで、望ましい結果を得るための実験を行うことが重要です。
DALLE3 APIのコストを管理する
DALL-Eの価格、DALL E 3の価格、およびDALL-E 2の価格は使用に応じて異なります。DALL Eの制限を管理し、DALL Eの量やDALL-E 2のコストがどれだけかを理解することは、パフォーマンスを最適化しながらコストを抑えるために重要です。
DALL-Eの寸法とDALLEの解像度も使用料金に影響を与え、品質と経費の間のバランスを提供します。
DALL-E 2からDALL-E 3への進化
DALL E 2 vs DALL E 3への移行は、AIによる画像生成の重要な進歩を示しています。
DALL-E 3のリリース日など、各リリースによりOpenAIは可能性の限界に挑戦し、高度に多目的で能力のあるDALL-E 3 OpenAIプラットフォームでまとめました。
結論
最後に、Anakin AIを見てみることをお勧めします。
100以上のAI APIの請求に問題がありますか? Anakin AIは、すべてを1か所にまとめたものです! GPT、DALL-E、Stable DiffusionなどのAIモデル。Anakin AIの特長は次のとおりです。
- オールインワンプラットフォーム:複数のAPIや請求アカウントを管理する必要がないため、さまざまなAIモデルに簡単にアクセスできます。
- 支払いの煩わしさなし:セットアップや支払いプロセスの複雑さを排除し、より幅広いユーザーにアクセス可能にします。
- コード不要のアプリビルダー:コーディング知識なしで、ユーザーがAIに基づいたアプリケーションを作成できるようにし、無限のイノベーションと創造性を開放します。
Anakin AIは人工知能のパワーを探索し活用するためのゲートウェイであり、プロジェクトやビジネスソリューションにAIを統合することがこれまで以上に簡単になりました。
将来を見据えて、DALL-E 3やDALL-E 2 API、DALL-E 2 APIなどの次のモデルの可能性はますます拡大しています。DALL定義、E API、E APIをOpenAI DALL-E APIエコシステム内で組み合わせることで、創造的なプロセスにおけるAIの役割がますます中心になる未来が示唆されています。
結論として、DALLE3 APIのマスタリングにより、デジタルクリエイティビティとイノベーションの広大なキャンバスを開くことができます。DALLE3の使用方法を理解することは、APIへのアクセスから効果的なプロンプトの作成とリソースの管理まで、AIによる芸術とデザインの世界で新たな地平を探求することをユーザーに約束するものです。プロジェクトや個人の探求にDALL-E 3を使用することに重点を置いている場合、AIによる画像生成の世界への旅は魅力的で報酬的なものになることでしょう。