PHPでChatGPT APIを使ってみた

2023/06/28 (水) - 00:00 PHP&CMS

OpenAIが提供している、人工知能チャットボットのChatGPT一気に広まりましたね。今日はPHPと無償のChatGPT 3.5のAPIを使用して、簡易的な返答プログラムを組みました。なお予めChatGPTへの会員登録とAPIキーを取得している前提です。ちなみにChatGPTの無料APIは利用可能期間とリクエスト利用上限があるので、もし期限を過ぎた場合やAPIを使いすぎて利用上限を突破した場合はAPIが停止してしまい継続利用するには課金する必要があります。

サンプルコード

$API = curl_init('https://api.openai.com/v1/chat/completions');
$API_KEY = '***********'; //取得したAPIキー
$INPUT = 'ポケットモンスターはなぜ世界で人気なのでしょうか'; //プロンプト

$header = array(
 'Authorization: Bearer '.$API_KEY,
 'Content-type: application/json',
);
$messages = [
 [
  'role' => 'user',
  'content' => $INPUT
 ]
];
$params = json_encode([
 'messages' => $messages,
 'model' => 'gpt-3.5-turbo'
]);

//APIに接続
$options = array(
 CURLOPT_POST => true,
 CURLOPT_HTTPHEADER =>$header,
 CURLOPT_POSTFIELDS => $params,
 CURLOPT_RETURNTRANSFER => true,
);
curl_setopt_array($API, $options);
$httpResponse = curl_exec($API);
$httpCode = curl_getinfo($API,CURLINFO_RESPONSE_CODE);
	
if($httpCode === 200){
 $jsonArray = json_decode($httpResponse, true);
 echo nl2br($jsonArray['choices'][0]['message']['content']); //レスポンス
}

上記を実行した場合のレスポンスは以下の通りでした。

「ポケットモンスター」(ポケモン)が世界で人気な理由は、いくつかの要因が組み合わさっています。以下にその主な要因をいくつか挙げてみましょう。

懐かしさと新しさのバランス: ポケモンは、1996年に最初に〜(中略)

あくまで触りだけですが、動かすことができました。またAPIリファレンスが公開されているので、これを参考にあらゆるカスタマイズを施すことも可能です。

語尾を変えてみるにゃん

例えば語尾に「ピカ」をつけたい場合は以下のように命令します。

$INPUT = 'いちばん人気のポケモンはなんですか'; //プロンプト
〜中略〜
$messages = [
 [
  'role' => 'system',
  'content' => '語尾にピカを付けてください'
 ],
 [
  'role' => 'user',
  'content' => $INPUT
 ]
];

上記を実行した場合のレスポンスは以下の通りでした。

いちばん人気なポケモンはピカチュウピカ!その愛らしい外見とかわいい鳴き声が、多くの人々に親しまれているピカピカ!他にもミュウツーピカやカビゴンピカ、リザードンピカなど、様々なポケモンがそれぞれの魅力でファンを魅了しているピカピカ!みんなお気に入りのポケモンを持って、楽しさを共有しているピカ!ピカピカ!

ピカピカうるさいでおじゃる。…考えてみたらピカチュウの語尾は「〜ピカ」じゃなく「〜チュウ」かな?

なお、ChatGPTの有償プランは2023年6月末現在で約月額20ドルになります。リクエスト上限が開放されるほか、もっと優秀なGPT-4(ChatGPT4)も使えるので課金してもいいかも知れません。…にしても円安のせいでApple製品もAWSも高く付くのが厄介ですねえ…。

にゃるぴはメイド(のコスプレ)をしながらお給仕がんばります。

おしまい

タグ:

記事をシェアする

  • facebookでシェアする
  • twitter(X)でシェアする
  • LINEでシェアする
  • はてなブックマークでシェアする
  • Pocketでシェアする
  • Pinterestでシェアする

トラックバック & ピンバック

この記事へのトラックバックURI
https://weblog.walk-life.me/php_chatgpt_api/trackback/

コメント

コメントは下記からどうぞ

ページの先頭へ