GoogleスプレッドシートにChatGPT関数を作成する

 

準備

Chromeブラウザのインストール、Googleアカウント、ChatGPTアカウント(OpenAIアカウント)が必要であるため別途作成しておく。

openai.com

Chrome拡張機能「ChatGPT for Google」をインストール

以下のリンクからChrome拡張機能「ChatGPT for Google」をインストールする。

chrome.google.com

 

OpenAIのAPIキーを取得する

以下のリンクからAPIキーを作成する。

beta.openai.com

 

リンク先に進むと、以下の画面になるので、「Create new secret key」をクリック。

APIキーが作成されるのでメモしておく。

 

GAS(Google Apps Script)でスクリプトを作成する

Googleスプレッドシートで新しいシートを作成する。メニューの拡張機能を選び、「Apps Script」を選択。

 

初期設定されているコードは不要なため削除する。

以下のコードを貼り付ける。

/**
* GPT-3 and Google Sheets
*
* @param {string} prompt Prompt.
* @param {number} temperature (Optional) Temperature.
* @param {string} model (Optional) GPT-3 Model.
* @return Response returned by GPT-3.
* @customfunction
*/
const SECRET_KEY = "API keysで取得したSECRETKEYを入力";
//const MAX_TOKENS = 10;
const MODEL_NAME = "text-davinci-003"; // more structured and deterministic: for data
//const MODEL_NAME = "davinci"; // more flexible and creative: for stories, chatbots
const MODEL_TEMP = 0.3;
function GPT(prompt,max_tokens=30) {
const url = "https://api.openai.com/v1/completions";
const payload = {
model: MODEL_NAME,
prompt: prompt,
temperature: MODEL_TEMP,
//max_tokens: MAX_TOKENS,
max_tokens: max_tokens
};
const options = {
contentType: "application/json",
headers: { Authorization: "Bearer " + SECRET_KEY },
payload: JSON.stringify(payload),
};
const res = JSON.parse(UrlFetchApp.fetch(url, options).getContentText());
return res.choices[0].text.trim();
}

「SECRET KEY」には先ほど作成したAPIキーを入力する。

「無題のプロジェクト」となっているため、わかりやすい名称に変更。

実行の横にある💾フロッピーディスクのアイコンをクリックして保存。

 

スプレッドシートに戻り「=GPT()」という関数で、ChatGPTから回答を受領できる。

 

関数であるため、通常の関数と同様に記述可能。整理すれば纏めて質問できる。

 

以上