アプリケーション開発ポータルサイト
ServerNote.NET
Amazon.co.jpでPC関連商品タイムセール開催中!
カテゴリー【OpenAI/ChatGPTGoogle
GoogleスプレッドシートからChatGPT(gpt-3.5-turbo)を使う
POSTED BY
2023-06-06

OpenAIにユーザー登録をしてAPI KEYを取得すれば、Googleシートからでも簡単に呼び出せます。

登録方法は以下記事を参照してください。

OpenAIのChatGPTを試す【1】

APIキーを取得したら、Googleスプレッドシートを開きます。

https://docs.google.com/spreadsheets/u/0/

とりあえず新しいスプレッドシートを作成して、メニューバー→拡張機能→Apps Scriptを開きます。

ほとんどJavaScriptなGSコードとやらを編集できますので、コード.gsのコードを以下のようなコードに変更します。

sourceGPT3.gsGitHub Source
const OPENAI_API_KEY = "取得済みのOpenAI API KEY";
const OPENAI_API_URL = "https://api.openai.com/v1/chat/completions";

function GPT3(prompt) {
  var payload = {
    model: "gpt-3.5-turbo",
    messages: [{role:"user", content:prompt}],
  };
  var options = {
    contentType: "application/json",
    headers: {Authorization: "Bearer " + OPENAI_API_KEY},
    payload: JSON.stringify(payload),
  };
  var response = JSON.parse(UrlFetchApp.fetch(OPENAI_API_URL, options).getContentText());
  return response.choices[0].message.content.trim();
}

OPENAI_API_KEYを取得した自身のAPIキー文字列に差し替えます。

フロッピーディスクアイコンをクリックして「プロジェクトを保存」します。

Googleスプレッドシートに戻って、呼び出してみます。任意のセルに、さきほどの関数式を質問文と一緒に書きます。

=GPT3("なんでgpt-3.5-turboをAPIで呼ぶと遅いのですか?")

すると、Loading...ののち、セルがChatGPTからの答えに差し替わります。

"いくつかの可能性がありますが、主な理由は次のとおりです。

1. コンピューターの性能が低い:GPT-3.5-Turboを呼び出すために必要な計算リソースが高いため、コンピューターのスペックが低い場合、APIの呼び出し時間が遅くなる可能性があります。

2. ネットワーク遅延: APIリクエストを送信して、GPT-3.5-Turbo APIからの応答を待つときに、ネットワークの遅延が生じることがあります。これは、データがAPIサーバーまで到達するのに時間がかかるためです。

3. ベンダーのAPI制限: GPT-3.5-TurboのAPIを提供するベンダーが、APIにアクセスできる利用者数や、APIを利用できる回数などを制限している場合、呼び出し時間が遅くなることがあります。 

以上の理由により、GPT-3.5-TurboをAPIで呼び出すと遅くなることがあります。"

OpenAIのAPIは補完モデル(AdaやDavinci)は速いのですが、何故かChatモデルgpt-3.5-turboは異常に遅くて、実用ではほぼ使い物にならないレベルです。同じgpt-3.5-turboを使っているとうたっている公式のChatGPT(chat.openai.com)は爆速なのに、なんででしょうね…、上のように質問してみても的を得ない回答ですし…

ともあれ、Apps ScriptはほとんどJavaScriptなので、OpenAIのみならずいろんなプログラムが自力コードでスプレッドシートで動かせそうですので、今後色々試してみます。

※本記事は当サイト管理人の個人的な備忘録です。本記事の参照又は付随ソースコード利用後にいかなる損害が発生しても当サイト及び管理人は一切責任を負いません。
※本記事内容の無断転載を禁じます。
【WEBMASTER/管理人】
自営業プログラマーです。お仕事ください!
ご連絡は以下アドレスまでお願いします★

☆ServerNote.NETショッピング↓
ShoppingNote / Amazon.co.jp
☆お仲間ブログ↓
一人社長の不動産業務日誌
【キーワード検索】