技術ブログ

ChatGPT APIとGAS連携!AIを業務自動化に活用

/ 初心者向け

ChatGPT APIとGAS連携!AIを業務自動化に活用

ChatGPT APIとGASを連携させる!AIを業務自動化に活用

近年、AIの進化は目覚ましく、中でもChatGPTは自然な文章生成能力で多くの人々を魅了しています。この強力なAIを、普段使い慣れたGoogle Apps Script (GAS) と連携させることができたら、私たちの業務はどれだけ効率化されるでしょうか?

この記事では、GASの専門家ブロガーとして、ChatGPT APIとGASを連携させるための具体的な方法を、初心者の方にも分かりやすく解説します。メール作成の自動化、データ分析の補助、アイデア出しなど、ChatGPTの能力をGASから引き出すことで、あなたの業務を次のレベルへと引き上げましょう。

1. ChatGPT APIとは?

ChatGPT APIは、OpenAIが提供する、ChatGPTの言語モデルをプログラムから利用できるようにしたインターフェースです。これにより、開発者は自身のアプリケーションやスクリプトに、ChatGPTの高度な自然言語処理能力を組み込むことができます。

2. GASとChatGPT API連携のメリット

GASとChatGPT APIを連携させることで、以下のようなメリットが期待できます。

  • 業務自動化の強化: 定型的なメールの作成、レポートの要約、FAQの自動応答など、これまで手作業で行っていた作業をAIが代替します。
  • データ分析の高度化: テキストデータの感情分析、トピック抽出、要約などをGASから実行し、より深い洞察を得られます。
  • コンテンツ生成の効率化: ブログ記事のアイデア出し、キャッチコピーの作成、プレゼンテーション資料のドラフト作成などをAIがサポートします。
  • プログラミングの補助: コードの生成、デバッグ、コメントの自動挿入など、GAS開発自体の効率化にも活用できます。

3. 連携の準備

連携を開始する前に、以下の準備が必要です。

1. OpenAIアカウントの作成: OpenAIのウェブサイトでアカウントを作成します。

2. APIキーの取得: アカウント設定画面から、APIキーを生成・取得します。このAPIキーは、GASからChatGPT APIにアクセスする際に認証情報として使用するため、絶対に他人に漏らさないように厳重に管理してください。

3. GASエディタの起動: Googleドライブから新しいスプレッドシートを作成し、「拡張機能」>「Apps Script」を選択してGASエディタを開きます。

4. GASからChatGPT APIを呼び出す基本コード

まずは、GASからChatGPT APIを呼び出す基本的なコードを見てみましょう。

function callChatGPT() {
  const apiKey = 'YOUR_OPENAI_API_KEY'; // ここに取得したAPIキーを入力
  const apiUrl = 'https://api.openai.com/v1/chat/completions';
  const prompt = 'こんにちは、ChatGPT!GASから呼び出されています。'; // 質問や指示

  const response = UrlFetchApp.fetch(apiUrl, {
    method: 'post',
    contentType: 'application/json',
    headers: {
      'Authorization': 'Bearer ' + apiKey
    },
    payload: JSON.stringify({
      model: 'gpt-3.5-turbo',
      messages: [
        { role: 'system', content: 'あなたは親切なアシスタントです。' },
        { role: 'user', content: prompt }
      ],
      temperature: 0.7 // 回答のランダム性を調整 (0〜2)
    })
  });

  const jsonResponse = JSON.parse(response.getContentText());
  Logger.log(jsonResponse.choices[0].message.content);
}

コードの解説:

  • apiKey: 取得したOpenAIのAPIキーを設定します。
  • apiUrl: ChatGPT APIのエンドポイントを指定します。
  • prompt: ChatGPTに投げかける質問や指示です。
  • UrlFetchApp.fetch(): GASで外部APIにHTTPリクエストを送信するための関数です。
  • method: 'post': POSTメソッドでリクエストを送信します。
  • contentType: 'application/json': 送信するデータの形式をJSONに指定します。
  • headers: 認証情報としてAPIキーをBearerトークン形式で設定します。
  • payload: APIに送信するデータ本体です。
  • model: 使用するChatGPTのモデルを指定します(例: gpt-3.5-turbo, gpt-4)。
  • messages: 会話の履歴を配列で渡します。rolesystem (システムメッセージ)、user (ユーザーからのメッセージ)、assistant (AIからの応答) を指定できます。
  • temperature: 回答の創造性やランダム性を調整します。値が高いほど多様な回答になり、低いほど一貫性のある回答になります。

Logger.log() で、AIからの応答をGASのログに出力しています。この応答をスプレッドシートに書き込んだり、メールで送信したりすることで、様々な自動化に繋げることができます。

5. 応用例:メール作成の自動化

この連携を活用して、例えば「顧客からの問い合わせ内容を元に、返信メールのドラフトを作成する」といった自動化が考えられます。GASで問い合わせメールの内容を取得し、ChatGPT APIに「この問い合わせに対して、丁寧な返信メールを作成してください。」といった指示を与えてドラフトを作成させ、それをスプレッドシートやメールの下書きに挿入する、といったワークフローを構築できます。

まとめ

ChatGPT APIとGASの連携は、あなたの業務効率を劇的に向上させる可能性を秘めています。今回ご紹介した基本コードを参考に、ぜひ色々なアイデアを形にしてみてください。APIキーの管理には十分注意し、安全に活用していきましょう!

次回のブログでは、より実践的な応用例をいくつかご紹介する予定です。お楽しみに!

GAS自動化の導入相談

請求書PDF作成、Gmail自動送信、Slack通知、スプレッドシート連携などを業務に合わせて実装できます。

請求書自動生成ツールを見る / SNS自動投稿ツールを見る