DALL-E 3 APIを使って画像生成するPHPのシンプルなコード

コード
<?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

期待通りに画像が生成されるまで、何度もチャレンジしがちです。あっという間に数千円、数万円と費用が膨れ上がりますので、注意が必要です。