エンジニア プログラミング

Google Gemini APIをGoogle Apps Script (GAS) から呼ぶ方法

はじめに

Google Geminiは、Googleが提供する高性能なAIモデルです。
今回は、Google Apps Script(GAS)を使ってGoogle GeminiのAPIを呼び出す方法を紹介します。
GASはGoogle WorkspaceのスプレッドシートやGmailなどと連携しやすく、簡単にスクリプトを作成できるため非常に便利です!
最初はChatGPTのAPIをGASから呼ぼうかと思ってたのですが、無料枠が存在しないためやめました。そこで無料で試すことができ親和性の高いGoogleのサービスのGeminiのAPIをGASから呼んで試してみることにしました!

Geminiの使用感について

https://gemini.google.com/app?hl=ja
Geminiは上記からWeb上で試すことができます。
使用感としては日本語でもかなり自然に返してくれて最高です。ただハルシネーションには少々注意が必要そうです。

必要な準備

Google Gemini APIキーの取得

Google GeminiのAPIを利用するためには、まずAPIキーを取得する必要があります。
Google AI Studioにアクセスし、APIキーを発行します。
https://aistudio.google.com

Google Apps Scriptの設定

Googleスプレッドシートを開き、「拡張機能」->「Apps Script」を選択してスクリプトエディタを開きます。

GASスクリプトの作成

以下のコードを使用してGoogle Gemini APIを呼び出します。
APIキーとは自身のものに置き換えてください。APIキーは他人に知られないように注意してください。誤って公開してしまうと、悪用される可能性があります。
プロンプトは適当に「元気なあいさつ文を5個考えて」となってるので依頼したい内容に合わせて変えましょう。

const GEMINI_API_KEY = 'GeminiのAPIキーを入力';

function getGreetingByGemini()
{
  const orderPrompt = `元気なあいさつ文を5個考えて`;
  var result = getMessageByGemini(orderPrompt);
  return result;
}

function getMessageByGemini(orderPrompt)
{
  const url = `https://generativelanguage.googleapis.com/v1/models/gemini-1.5-flash:generateContent?key=${GEMINI_API_KEY}`
        , payload = {
            'contents': [
              {
                'parts': [{
                  'text': orderPrompt
                }]
              }
            ]
          }
        , options = {
            'method': 'post',
            'contentType': 'application/json',
            'payload': JSON.stringify(payload)
          };

  const res = UrlFetchApp.fetch(url, options)
        , resJson = JSON.parse(res.getContentText());

  console.log(JSON.stringify(resJson));

  if ((resJson && resJson.candidates && resJson.candidates.length > 0) == false) {
    throw new Error("Geminiの通信に失敗しました");
  }

  var message = resJson.candidates[0].content.parts[0].text;
  var result = trimString(message )
  console.log(result);
  return result;
}

function trimString(str) {
  // 文字列全体からスペースと改行コードを削除
  return str.replace(/[\s\n\r]+/g, '');
}

スクリプトの実行

スクリプトエディタで上記のコードを貼り付け、保存します。
スクリプトを実行するために「実行」->「関数を選択」->「getGreetingByGemini」を選択し、実行します。
実行すると以下のようにログに取得結果が表示されます。

まとめ

Google Apps Scriptを使ってGoogle GeminiのAPIを呼び出す方法を紹介しました。
スプレッドシートやGmailなどと連携することで、より高度な自動化や分析が可能になります。GASと組み合わせれば色んなことに応用が利きそうです。なんといっても、これだけのことを無料で試すことができるのは最高ですね!

  • この記事を書いた人

あるせ

上場ゲーム会社のクリエイターで1児の父です。 プログラミングなどクリエイター向けの記事から日々のお役立ち記事まで幅広く発信します!

PickUp

1

はじめに Google Geminiは、Googleが提供する高性能なAIモデルです。今回は、Google Apps Script(GAS)を使ってGoogle GeminiのAPIを呼び出す方法を紹 ...

2

Cursorとは? Cursorは、AIを利用したコード補完ツールで、プログラムを書く際に提案をしてくれるだけでなく、指示に基づいてコードを生成してくれます。スクリプトを自動生成したり、バグの修正やリ ...

3

bool変数の命名の重要性 プログラムを書くとき、bool型の変数名の付け方はとても重要です!なぜなら、コードを読む人にとって、変数名からその役割が直感的に分かることが求められるからです。bool値は ...

4

記事文章 はじめに WordPressを使ってブログを運営していると、毎回アイキャッチ画像を設定するのが手間ですよね!今回は、アイキャッチ画像を自動で生成するプラグインの作り方をご紹介します。これで作 ...

5

第1位: SourceTree SourceTreeは、無料で使える高機能なGitクライアントです。直感的なUIで操作がしやすく、初めてGitを使う人にもぴったり!ブランチの管理やマージが簡単にできる ...

6

はじめに インターネットの回線速度が気になることってありますよね!今回は、5分ごとに回線速度を計測し、そのデータをグラフにする方法を紹介します。PythonとSpeedtest CLIを使えば、比較的 ...

7

Pythonで画像ファイルを連番リネームをしてみたのでやった方法について記載します!連番リネームは、画像を整理する際や特定の用途に合わせてファイル名を統一したいときに便利です。 Pythonでの連番リ ...

-エンジニア, プログラミング
-, , , , , ,