【コピペOK】GPT-4oをスプレッドシートの関数で使う方法!(APIキー必要)
2024年5月に発表されたOpenAIの最新AIモデルであるGPT-4oはGPT-4 Turboがパワーアップし、高速で高精度な応答が可能です。
そんなGPT-4oをスプレッドシートから関数として利用する方法を解説します。
OpenAIのAPIキーが必要になりますが、コピペするだけで誰でも利用可能です。
スプレッドシートでGPT-4oを使えると便利
OpenAIが2024年5月に発表したGPT-4oはGPT-4 Turboよりも優れている最新のAIモデルです。
応答精度に加えて、応答速度が飛躍的に向上していて、応答結果を待つ時間が短縮されました。
そんな最新のGPT-4oがスプレッドシートの関数として利用できるととても便利です。
GASカスタム関数でGPT-4oがスプレ利用可能に
GPT-4oはOpenAI社が開発しているAIモデルのため、Googleが提供するスプレッドシートには標準関数としては用意されていません。
しかし、実はGPT-4oをスプレッドシートから関数として利用することができます。
その方法はGoogle Apps Script(GAS)を使い、カスタム関数を作成する方法です。
GASのコードでプロンプトを引数にしてGPT-4oを呼び出す関数を自作すれば、スプレッドシート上からGPT-4oの応答を得ることができます。
コピペで5分でGPT-4o関数が導入可能
ただ、スプレッドシート利用ユーザーが、Google Apps Script(GAS)を使ってGPT-4oを呼び出すカスタム関数を作るのは大変です。
そこで、AutoworkerでGPT-4oから応答が得られる自作関数を用意しました。
後述するセットアップ手順に従い、いくつかの設定とコピペするだけでGPT-4oをスプレッドシートで利用可能になります。
事前準備:OpenAIのAPIキー発行
スプレッドシートのGPT-4oを呼び出すカスタム関数を利用するにあたって事前準備が1つあります。
それはGPT-4oを呼び出すためにAPIキーを取得することです。
そのためにはOpenAIにサインアップした上で、APIキーを発行する作業が必要です。
※すでにChatGPTで会員登録しているとして、OpenAIの会員登録手順はスキップします。
1.OpenAIのAPIのダッシュボードページにログインし、左メニューにある「API Keys」を選択します。
2.APIキー管理画面で右上にある「Create new secret key」ボタンをクリックします。
3.ダイアログが立ち上がるので、APIキーの名前を任意に入力し、Create secret keyボタンをクリックします。
4.OpenAIのAPIキーが発行されるので、「Copy」ボタンを推してAPIキーの文字列をコピーします。
※念の為、メモ帳などのテキストエディタにAPIキーを貼っておくのがおすすめです。
以上で事前準備となるOpenAIのAPIキーの準備ができました。
スプレッドシートでGPT-4o関数の設定手順
続いてスプレッドシート側でGPT-4oのカスタム関数のセットアップに移ります。
GPT-4oを呼び出すためのAPIキーとGoogle Apps Script(GAS)で作成したGPT-4oを呼び出すカスタム関数をスプレッドシートに設置していきます。
なお、このセットアップはGPT-4o関数を使いたいスプレッドシートのファイル単位で設定が必要です。
※あるスプレッドシートで設定しても、新しいスプレッドシートで使いたい場合は再度セットアップします。
1.GPT-4o関数を使いたいスプレッドシートを開き、「拡張機能>Apps Script」を選択します。
2.GASのスクリプトエディタが表示されるので、左にある「プロジェクトの設定」を選択します。
3.スクロールして表示される「スクリプトプロパティを追加」ボタンをクリックします。
4.プロパティ:APIKEY、値:OpenAIのAPIページで取得したAPIキーを貼り付けて、.「スクリプトプロパティを保存」ボタンをクリックします。
5.左メニューにある「コード」を選択します。
6.GASのスクリプトエディタの画面に下記コードをコピペして保存アイコンをクリックし、保存します。
/**
* GPT-4oにリクエスト
* @param {'質問文'} prompt GPT-4oへのプロンプト
* @customfunction
*/
function GPT4O(prompt, temperature=0.9, maxToken=1024) {
//スクリプトプロパティに設定したOpenAIのAPIキーを取得
const apiKey = PropertiesService.getScriptProperties().getProperty('APIKEY');
//OpenAIのAPIで利用するモデルとしてgpt-4oを設定
const model = 'gpt-4o';
//GPTのAPIのエンドポイントを設定
const apiUrl = 'https://api.openai.com/v1/chat/completions';
//GPTに投げるメッセージを定義(ユーザーロールの投稿文のみ)
const messages = [{'role': 'user', 'content': prompt}];
//OpenAIのAPIリクエストに必要なヘッダー情報を設定
const headers = {
'Authorization':'Bearer '+ apiKey,
'Content-type': 'application/json',
'X-Slack-No-Retry': 1
};
//GPTのモデルやトークン上限、プロンプトをオプションに設定
const options = {
'muteHttpExceptions' : true,
'headers': headers,
'method': 'POST',
'payload': JSON.stringify({
'model': model,
'max_tokens' : maxToken,
'temperature' : temperature,
'messages': messages})
};
//OpenAIのGPTにAPIリクエストを送り、結果を変数に格納
const response = JSON.parse(UrlFetchApp.fetch(apiUrl, options).getContentText());
return response.choices[0].message.content;
}
以上でスプレッドシートで使えるGPT-4o関数のセットアップは完了です。
スプレッドシートでGPT-4o関数を試してみる
GPT-4oから応答を得られるスプレッドシートのカスタム関数が使えるか試してみます。
セットアップしたスプレッドシートに数式で「=GPT4O」と入力してみます。
すると、スプレッドシートの関数候補にGPT4O関数が表示されるようになりました。
設定前は表示されないため、カスタム関数のコードが反映されていることが確認できます。
GPT4O関数では引数としてプロンプトを指定するため、GPT-4oに調べてほしいことを入力します。
すると少し読み込みの時間が発生しますが、10秒ほど待つとスプレッドシートのセルにGPT-4oからの応答結果が表示されます。
このようにコピペして5分程度のセットアップをするだけでスプレッドシートでGPT-4を呼び出す関数が使えるようになりました。
引数指定でトークン数などパラメータ調整も
前述したスプレッドシートのGPT-4oを呼び出すGPT4O関数は、プロンプトを指定する第1引数のみでした。
実はそのほかに出力トークン数や応答結果のランダム性を調整するパラメータも引数に指定可能です。
応答結果を一定にしたい場合は0に近づけて創造性の高い応答がほしい場合は1に近づけます。
このように用意したGPT4O関数では応答結果も調整できるようになっています。
GPT-4oのAPI利用料がかかるので注意
なお、今回説明したスプレッドシートのGPT4O関数には注意点があります。
GPT-4oをスプレッドシートから呼び出す際にはAPIを利用しています。
OpenAIのAPIは無料ではないため、使った分だけ利用料が発生します。
※GPT-4oのAPI利用にかかる料金は前回の記事で解説しています。
使うごとにGPT-4oのAPI利用料が発生することに留意しておきましょう。
さらにスプレッドシートを開くたびにGPT4O関数が再実行されるときも利用料がかかります。
OpenAIのAPI利用方法は前払い方式のため、チャージした金額までAPIを使うと、実行できなくなる点も注意しましょう。
まとめ・終わりに
今回、スプレッドシートでGPT-4oの応答を得るカスタム関数であるGPT4O関数の導入方法と使い方を紹介しました。
OpenAIのAPIキーを用意してGoogle Apps Script(GAS)でGPT-4oを呼び出す自作関数を用意すれば、スプレッドシートでもGPT-4oが利用可能です。
Autoworkerで自作関数のコードを用意したので、APIキーを用意してコピペすれば5分で設定できます。
ChatGPT→GPT-4→GPT-4oと性能アップしてきた最新のAIモデルをスプレッドシートで利用しましょう。
ディスカッション
コメント一覧
まだ、コメントがありません