<?php
// プロンプト(postで取得する)
$image_prompt = "青い空";
// 1024x1024 or 1024x1792 or 1792x1024
$image_size = "1024x1024";
// OpenAI API endpoint URL
$url = 'https://api.openai.com/v1/images/generations';
// API KEY
$api_key = 'xxxxxxxxxxxxxx';
// Request parameters
$data = array(
'model' => "dall-e-3",
'prompt' => $image_prompt,
'num_images' => 1,
'size' => $image_size,
);
// Set headers
$headers = array(
'Content-Type: application/json',
'Authorization: Bearer ' . $api_key
);
// Create cURL request
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
// Send request
$response = curl_exec($ch);
// Check for errors
if ($response === false) {
die(curl_error($ch));
}
// Decode response
$result = json_decode($response, true);
// 出力
echo '<img src="'.$result["data"][0]["url"].'" style="width:1024px;height:auto">';
?>
DALL-E 3 の利用手順
1 OpenAIのアカウント取得
OpenAIの公式ウェブサイトにアクセスし、アカウントを作成します。ChatGPT利用時と一緒です。
2 APIキーの取得
アカウントにログインした後、APIキーを生成する必要があります。これは、APIを利用するための認証キーとなります。ChatGPTと同じAPI KEYでも大丈夫です。
3 PHPでAPIを利用
上記はサンプルコードです。POSTでプロンプトを送信し、画像を生成する形が一般的かと思います。
DALL-E 3 のAPI料金(1イメージあたり)
1024×1024 | $ 0.04 |
---|---|
1024×1792 or 1792×1024 | $ 0.08 |
期待通りに画像が生成されるまで、何度もチャレンジしがちです。あっという間に数千円、数万円と費用が膨れ上がりますので、注意が必要です。