ChatGPTの教科書

Stable Diffusion, Python, Visual Studioなど

Stability AIのAPI、PHPのサンプルは?

Stability AIのAPI、PHPのサンプルです。

Stability AIのAPI、PHPのサンプルは?

プロンプトからイメージのサンプルです。

 

$apikey = '{取得したAPIキー}';

$steps = 15;//ステップ数
$num_samples=1;//作成する画像数
$width = 512;//はば
$height = 512;//高さ
$prompt = 'bikini girl';//プロンプト

$fn="stable.png";//保存する画像のファイル名

 

        $ch = curl_init();
        $headers  = array(
            'Accept: application/json',
            'Content-Type: application/json',
            'Authorization: Bearer ' . $apikey . ''
        );

        $postData = array(
            'text_prompts'=>[array('text'=>$prompt)],
            'cfg_scale'=>7,
            'clip_guidance_preset'=> 'FAST_BLUE',
            'height'=> $height,
            'width'=> $width,
            'samples'=> $num_samples,
            'steps'=> $steps
        );

        curl_setopt($ch, CURLOPT_URL, 'https://api.stability.ai/v1/generation/stable-diffusion-v1-5/text-to-image');
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($postData));
        curl_setopt($ch,CURLOPT_SSL_VERIFYPEER, false);

        $output = curl_exec($ch);


$joutput = json_decode($output,true);
if($joutput["artifacts"][0]["finishReason"] != "SUCCESS"){
    print $joutput["artifacts"][0]["finishReason"];
}

file_put_contents($fn, base64_decode($joutput["artifacts"][0]["base64"]));

 

戻ってくるデータは

Array ( [artifacts] => Array ( [0] => Array ( [base64] => iVBORw0......., [seed] => 3548414900 [finishReason] => SUCCESS ) ) )

のような内容です。

 

これで画像ファイルが保存できればOK。

候補は複数枚生成できるので、配列番号ごとに保存しましょう。

 

このブログは、ネットや書籍上の情報、個人の体験や感想を中心にまとめたものです。 正確性を期していはいますが、間違い・誤訳等あるかもしれません。 当サイトの情報によって生じたいかなる損失について一切の責任を負わないものとします. あらかじめご了承ください。

プライバシーポリシー |〇利用規約 |〇問い合わせ