はじめに
ChatGPTもいいけどGeminiもアツいよね、ということで使おうとしたのですがどうにも資料が少なくずいぶん苦労したのでやり方をまとめました。
環境
$ php -v
PHP 8.2.20 (cli) (built: Jun 4 2024 13:22:51) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.20, Copyright (c) Zend Technologies
with Zend OPcache v8.2.20, Copyright (c), by Zend Technologies
$ php artisan --version
Laravel Framework 11.22.0
手順
1. Google Cloud Platformへの登録&APIキーの発行
・Google Cloud Platformにユーザ登録
・「APIとサービス」の「Generative Language API」を有効にする
・「APIとサービス」の「認証情報」からAPIキーを作成する
・このとき、APIの制限で「Vertex AI API」と「Generative Language API」にチェックを入れておく
・Generative Language APIのみで良い可能性あり
2. Laravelプロジェクトへライブラリをインストール
$ composer require google-gemini-php/laravel
$ php artisan gemini:install
3. envの設定
.env に追記
GEMINI_API_KEY={1.で作成したAPIキー}
4. クラスの作成
<?php
namespace App\Libs;
use Gemini\Laravel\Facades\Gemini;
class GeminiApi
{
/**
* Gemini API 呼び出し
*/
public function callGeminiApi(string $prompt): string
{
return Gemini::geminiPro()->generateContent($prompt)->text();
}
}
まとめ
ChatGPTのAPIを使用したときはなんだかんだcurlになったのですが、Geminiの場合は専用のライブラリがあり実際に記述するコード量も非常に少なくなりました。
が、やっぱり資料の少なさが非常にネックですね。
この記事が誰かの一助になれば幸いです。