【コピペOK】GPT-4oをスプレッドシートの関数で使う方法!(APIキー必要)

2024年6月30日

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モデルをスプレッドシートで利用しましょう。