スプレッドシートとazureのchatgpt・GASで最強にレポートを効率化する方法
日々の業務でデータ分析やレポート作成に追われている皆さんにとって、効率的なレポートの自動化は一つの理想ではないでしょうか。
特に、ExcelやGoogleスプレッドシートを活用しているマーケターやアナリストにとって、手作業でのデータ入力や計算は多くの時間を奪います。
本来であればデータ集計をする部分に時間を使うのではなく、考察を書いたり、提案を考える部分に時間を使いたいはずです。
なので今回はデータを集計する作業。そこに加えてある程度見るべきデータにあたりをつけるところまで自動化をできないか考えました。
これらのタスクを自動化する方法として、Google Apps Script(GAS)とAzureのOpenAI APIを組み合わせることで、圧倒的な効率化が可能です。
本記事では、これらのツールを連携させて、スプレッドシートでのレポート作成を自動化する具体的な方法を紹介します。
目的と狙い・効果
まずは今回実施したい内容の背景や目的について改めてお伝えします。
最初の発端は純粋に「レポートをもっと効率化できないかなぁ~」というざっくりとした物思いから始まりました。
レポート効率化という話であれば、スプレッドシートのアドオンを使ったり、Looker studio、Tableauなどを使ったりもしています。
ただ若手社員からの悩みとして「データをどうやって見たらいいかわからない」「どこにあたりをつけていいかわからない」などの声が上がっていました。
なので、そこをAIのアシストを借りて効率化+育成ができないかと模索したいと思ったのが発端です。
そして思いついたのが、「chatGPTにデータを自動で整理してもらって当たりをつけてもらおう」という発送です。
従来のレポート効率化でいえば、「データを出す部分」が中心でした。スプレッドシートのアドオンやLooker studioなどの効率化ツールもデータ集計やデータの可視化を得意としています。
しかしレポートを誰かに出すのは「データ」を知りたいのではなく、「そこから何がわかったのか」の傾向や考察の部分を知りたいはずです。
ただ、考察を各部分はまさに属人化している企業が多いのではないでしょうか。そこをAI(ChatGPT)にアシストしてもらうことで、効率化を図れないかを模索してみたのが今回の取組です。
では具体的にどのような準備が必要でどんな仕組みを使っているかをご説明させていただきます。
仕組み (画像を加える)
詳しい話は後ほど説明しますが、ここでは図を用いて概要の仕組みについて説明します。今回実施している内容は、AzureというMicrosoftが提供するクラウドプラットフォームでセキュアかつクローズドな安全にAI(chatGPT)を使える環境を作ります。
※Azureを介さずOpenAIのAPIキーをダイレクトにGAS・スプレッドシートに組み込む方法もありますが、これについては別の記事で解説予定です。
その環境下(クローズド)でChagGPTを使うので、外部へデータが漏れることないし、学習される心配もありません。
Azure上でAPIキーを発行してそれをスプレッドシートのGASに組み込みます。
そしてセルに入力したデータとプロンプトをスプレッドシート上(厳密にはGAS)で作った関数と連動させて、データの示唆や考察を吐き出すという仕組みです。
まずは大枠を説明しましたが、このアウトプットを出すのに色々と準備や手順を踏む必要があるので解説していきます。
準備するもの
まずは、スプレッドシートとGAS、そしてAzureのOpenAI APIを活用するために必要なツールや情報を準備しましょう。具体的には、以下のものが必要です
Googleアカウント: GASを利用するために必須です。Googleスプレッドシートも同様に使用するので、アカウントを作成しておきましょう。
Azureアカウント: OpenAIのAPIを利用するには、MicrosoftのAzureアカウントが必要です。無料で作成できるので、まずはAzureポータルに登録します。
APIキー: AzureでOpenAIのAPIを利用するためにはAPIキーが必要です。このAPIキーをGASで利用することで、スプレッドシートとAzureを連携させることが可能になります。
GASの基本的な知識: GAS(Google Apps Script)は、スプレッドシートの自動化に欠かせないツールです。JavaScriptに似た文法なので、多少のプログラミング知識があるとスムーズに作業が進むでしょう。
クレジットカード:AzureのAPI(厳密にはOpenAIのAPIキー)を使うのには料金がかかります。といっても従量課金制で、1トークン(約1,000文字)あたり約2.4円になります。筆者も利用を頻繁していますが、今回の仕組みで毎月約500円程度しか発生していません。
利用登録の際にクレジットカードが必要のため準備をお願いします。最初はUSD$200 (約30,000円分)のクレジットが無料でついてくるので最初から費用を払って使うのが怖いという方はまずトライアルをしてみてはいかがでしょうか。
https://azure.microsoft.com/ja-jp/pricing/details/cognitive-services/openai-service
Azureとは(API・OpenAI)
Azureは平たく言えば「密室の作業部屋」です。この作業部屋には工具や資材などが揃っていて、誰にも邪魔されず、外部に作業の内容が漏れることもなく作業ができます。
専門用語を用いて言えば、Microsoftが提供するクラウドプラットフォームで、さまざまなサービスやAPIを利用することができます。
その中でも注目すべきは、Azure OpenAIサービスで、これを利用することで、chatGPTのような高度な自然言語処理を実現できます。
AzureのOpenAI APIを使用すると、従来のAPIと同様にデータを送信し、AIモデルに基づいた回答や文章生成を得ることが可能です。
なぜ大企業向けなのか
今回のタイトルにも「大企業向け」という表記をしています。なぜそもそも企業向けなのか。
それはAzureに組み込まれているOpenAIのAPIを使っているからです。ChatGPTをリリースしたOpenAIはAPIキーを公開しています。
しかし、取り扱うデータによってはOpenAI側へデータが流れてしまい学習されてしまう可能性があります。
企業によっては自社のデータが外部に流れているのと同じなため、Azureというクローズドな環境(学習されない環境)を用いてAI機能+スプレッドシート・GASを使うことが安心してAI(chatGPT)を使って業務を効率化する手段だからです。
また多くの大企業がセキュアなマイクロソフトの環境を使っていることも理由の1つです。
大企業ではスプレッドシートを禁止されているところもあるので、もしかしたら利用は難しいかもしれませんが、プロンプトなどは応用できる部分もあるかと思い、マイクロソフト環境でいえば、Copilotが使えるかと思うので、参考になる部分を抽出していただけると幸いです。
大企業向けとかかせていただきましたが、無論どの企業でもこの仕組みは取り入れられます。
設定手順について
まず、AzureでOpenAI APIを利用するための準備を行います。Azureポータルにアクセスし、OpenAIサービスを有効化する必要があります。以下の手順に沿って進めていきましょう。
- Azureアカウントの作成: 公式サイトでアカウントを作成し、Azureポータルにログインします。
- OpenAI APIサービスの有効化: Azureのポータルから、”OpenAI”と検索し、APIサービスを有効化します。APIキーの発行もここで行われます。
- APIキーの発行: APIキーは、後ほどGASでの連携時に使用する重要な情報です。必ずメモしておきましょう。
- 料金プランの確認: AzureのAPIサービスは無料枠もありますが、利用量によっては課金が発生することがあります。プロジェクトの規模に応じて適切なプランを選択しましょう。
大枠の流れについては上記の通りです。以下で画像を用いて詳しく解説していきます。
ステップ1:サインアップ
まずはazureにサインアップ(会員登録)をします。マイクロソフトのアドレスを持っていない場合は作成が必要となるので、作りましょう。
またサインアップ時にクレジットカードも必要なので、事前に準備をすることをお勧めします。(最初は$200分(約30,000円)の無料クレジットがついているので、いきなりかなりの従量を使わない限りは課金されることはないでしょう)
ステップ2:OpenAIのAPI有効化
サインインが無事にできたら、次はOpenAIのAPIキーを取得・有効化しましょう。
簡易的に言えば、密室の環境には工具や資材がいっぱいありますが、全部鍵がかかってクローゼットに保管されている状態です。
その中で使う資材と工具が入ってるクローゼットの鍵を開けて取り出す作業になります。
詳しく言えば、OpenAIのリソースをGPTモデルの作成を行い、APIを有効化します。
まずはリソースの作成を選び「open ai」と検索をしましょう。
検索すると表示されるOpenAIの画面をクリックしてリソースを作成していきます。
「Azure Open AI」を選択すると以下の画像が表示されるかと思います。
入力する項目は主に以下の内容になります。
番号 | 項目名 | 詳細 |
---|---|---|
① | サブスクリプション | Azureサブスクリプションを選択します。 |
② | リソースグループ | リソースを保持するグループを選択するか、新たに作成します。 |
③ | リージョン | 利用するリージョンを選択します。 |
④ | 名前 | リソースの名前を入力します。 |
⑤ | 価格レベル | 価格レベルを選択します。 |
リージョンはAzureのデータセンターが配置されている場所を指しています。
今回関係していそうな話で言えば、リージョンによってGPTモデルが対応している・していないが別れます。
会社単位で使うのであれば、システムを取り扱う部署へ確認をした方がいいでしょうが、基本的には米国のリージョンを選ぶと対応しているモデルが多い傾向があります。会社にもよりますが、米国東部2(East 2)を選択されることが多いようです。
リージョンと価格、対応モデルについてはこちら
https://azure.microsoft.com/ja-jp/pricing/details/cognitive-services/openai-service
OpenAIのリソースを作成すると概要ページに遷移します。
次はAPIリソースの概要画面で「Exoplore」をクリックしてAzure OpenAIを「Deployments」します。
簡単に言えば、GPT4oなのか、Turbo3.5なのか使うモデルを選ぶということです。
ステップ3:APIキーの取得
続いてはOpenAIのAPIキーを取得します。これを後ほどのスプレッドシートやGASの連携の際に使います。
こちらの画像にも表示されている通り、前のステップでOpenAIのリソースを有効化すれば自動的にAPIキーが発行されます。
(この画面ではAPIキーやエンドポイントは非表示ですが、画面左のタブに「キーとエンドポイント」の表示があるのでそこから閲覧が可能です。
APIキーはクレジットカードの暗証番号のようなものなので、外部に漏れないように大切に保管しましょう。
またエンドポイントは「https://リソース名.opneai.azure.com/バージョン名」になるかと思います。(バージョン名は任意で指定のgptモデルによって追加)
スプレッドシートとGASの繋ぎ方(事前準備と手順)
続いても事前準備です。
Azureから少し離れてもう一つの準備であるスプレッドシートとGAS(Google app script)を連携させます。
Googleスプレッドシートの自動化を進める上で、GASは非常に強力なツールです。
これにより、手作業で行っていたルーチンワークをコード化し、自動実行させることができます。
事前準備内容と細かい手順
Googleスプレッドシートの準備: スプレッドシートを作成し、自動化したいデータを入力します。このデータが後にGASを通じて操作される対象となります。
GASのスクリプトエディタを開く: スプレッドシートを開いた状態で、メニューから「拡張機能」→「スクリプトエディタ」を選択します。これでGASの編集画面が表示されます。
GASプロジェクトの作成: スクリプトエディタにて新しいプロジェクトを作成します。プロジェクト名は、作業内容に関連する名前にしておくと後々管理がしやすいです。
今回GASに記入する内容はこちらになります。
【コピペ可】GASのスクリプト
今回使う、GASのスクリプトはこちらです。APIキーとURLだけAzure上で発行したものが必要ですがあとはコピペで活用ができるかと思います。
またモデルはgpt-4oを選択していますが、ここはturboでもminiでもカスタマイズ可能です。
var apikey = "APIキーを入力";
var model = "gpt-4o";
var temperature = 0;
var url = "Azure上で発行したエンドポイントのURLを入力";
function GPT(content, maxTokens=2048) {
if(content){
const requestBody = {
"model": model,
"messages": [{'role': 'user', 'content': content}],
"temperature": temperature,
"max_tokens": maxTokens
};
const requestOptions = {
"method": "POST",
"headers": {
"Content-Type": "application/json",
"api-key": apikey
},
"payload": JSON.stringify(requestBody)
};
var response = JSON.parse(UrlFetchApp.fetch(url, requestOptions).getContentText());
return response.choices[0].message.content.trim();
}else{
return "no result";
}
}
// 新しい関数 GPTScope を追加
function GPTScope(range) {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var values = sheet.getRange(range).getValues();
var content = values.flat().join('\n'); // すべてのセルの内容を改行で連結
return GPT(content);
}
GAS関数のポイントとしては今回複数のセルに跨ってデータを取り扱うため、新しく関数を作る必要がありました。
今回はGPTRangeと名付けていて、これを実行することでスプレッドシート上で新しく関数を使うことができます。
プロンプトの準備
いよいよ準備の最終段階です。Azure、スプレッドシート、GASが準備できたら次はプロンプトを準備します。
最終的にやりたいことはスプレッドシート上に表示したローデータを分析して傾向を探りたいので、それを探るための指示出しを行います。
プロンプトは今回公開はしていないのですが、問い合わせいただければ無料でお出しするので、ぜひお問い合わせください。
今回はプロンプトを3段階に分けています。
というのは後ほどの注意点で解説しますが、chatGPTを使っても一気にではなく、1つ1つ指示を出さないときちんとした出力が出ないからです。
まず1つ目がグルーピングです。今回はSEOレポートをベースなのでキーワードの当たり・傾向をつけるプロンプト。そして特定のクエリに対して表示回数やクリック数などの傾向を前月比で教えてくれるプロンプトが2つ目。
最後に1つ目、2つ目を踏まえて傾向を日本語で記述してくれるプロンプトです。
結論だけ言ってしまうと、ヒューマンチェックは必要ですが、レポートに書く傾向としてはこのChatGPTの出力で事足りていますし、違和感ない日本語をきちんと書いてくれています。
プロンプトを一部公開
ちょっと秘匿レベルの内容が入ってるので、部分的にはなりますが、プロンプトも公開します。
#指示
貴方はとても優秀なAIスペシャリストです。
指示されたことの内容のみ出力してください。
#step1
・【重要】インプットする情報を「##情報内容」を基に理解してください。
・⚪︎列と⚪︎列のクリック数を確認してください。
・⚪︎列と⚪︎列の表示回数を確認してください。
・このステップでは何も出力しないでください。
##情報内容
"""
・⚪︎にはクエリ名が記載されています。・1行目は見出しです。
・⚪︎にはクエリ名が記載されています。
・⚪︎行目以降はA列の名前に該当する行のまとまりです。
・⚪︎はクエリの名前に適した今月のクリック数、⚪︎列には先月のクリック数が記載されています。
・⚪︎列にはクエリの名前に適した今月の表示回数、⚪︎列には先月の表示回数が記載されています。
"""
#step2
・「##グルーピングの条件」を必ず守って「##例」のように出力してください。
##グルーピングの条件
"""
・クエリのクエリ名から似たような名前のものが3つ以上ある場合は全てタイトルをつけて、該当するクエリ名を抽出してください。
"""
##例
"""
●グルーピング名{就活関連}
該当するクエリ名:
{就活ランキング}
{就活生 企業選び}
"""
上記プロンプトは3段階あるうちの1つになります。
ポイントは「ステップを分ける」「前提をきちんと定義する」ことです。
前提定義についてはプロンプト冒頭にも書いてありますが、言われたことだけを出力することや役割として「優秀なアナリスト」などを定義してあげることです。ここで出力内容の質が変化してきます。
そしてステップを分けることも重要で、行を分けて箇条書きなどで出力するのも良いのですが、トライ&エラーしている最中でどうしてもアウトプット内容が安定しなかったり、思った通りの出力を出してくれなかったりと色々な課題が作成途中に発生しました。
前提定義もですが、ステップを分けることで思った以上に期待通りのアウトプットが出るようになったので非常に重要ということがわかりました。
関数の組み込みとプロンプトとの連携
ここでGPTScope関数とプロンプトの繋ぎこみを説明します。(GPTScopeというのは仮名なので関数の命名は任意名で大丈夫です)
使うのはこちらのスプレッドシート関数です。
"=GPTScope("データ範囲のセル","プロンプト記入されているセル")"
GPTScopeという新しい関数を作り、そこに範囲指定をさせています。この関数をスプレッドシート上で入力することで、範囲指定とプロンプトが記入されているセルを選び、連携されるのが今回の仕組みのポイントです。
実装の手順(Azure・スプレ・GAS・プロンプトの連動)
ここまででベースの準備は整いました。
ここからが本題で、Azure、スプレッドシート、GASの連携によって、レポート作成の自動化を実現します。
具体的には、AzureのchatGPTを通じてデータを分析し、その結果をスプレッドシート上に自動出力する仕組みを構築します。
ステップ1:GASでコードを記述
GASのスクリプトエディタで、Azure APIとの接続を行うコードを記述します。ここでは、APIリクエストの発行や、スプレッドシートとのデータ連携部分を主に書いていきます。まずは、Azureから取得したAPIキーをGASに記述する部分を設定しましょう。
コードは上記に記述した通りです。
GASはスプレッドシート上タブの拡張機能からApp scriptを押せば開きます。
コードを添付して「保存」→「実行」の手順で行います。最初だけ以下のような「承認」の画面が開きますが、気にせず進めてください。
ステップ2:Azureで発行したAPIキーやリソースURLををGASのコードに記述
次に、Azureで発行したAPIキーをGASに組み込んで、Azure OpenAIサービスと連携させます。APIキーは、Azureが提供するサービスにアクセスするための認証情報です。GASを通じてAzureにリクエストを送るためには、このAPIキーが必要になります。
ステップ3:GASとスプレッドシートを連携
最後に、スプレッドシートとGASを連携させます。今回はトリガーなどの設定はしておらず、関数を入力することによって、示唆を出すようにしています。
応用編ですが、スプレッドシートに自動でデータを吐き出して、プロンプトを事前に書いておけば、自動でデータの抽出と傾向だしを行うこともできるでしょう。
実際にAzureのOpenAIとスプレ・GASを繋げて使ってみた
ここまでの手順を踏むと、スプレッドシートとAzureのOpenAI API、GAS、そしてプロンプトを連携させたシステムが完成します。
では、実際にこの連携を使ってどのような結果が得られるのか、使い心地や費用対効果を詳しく見ていきます。
【アウトプット結果】今回はSEOのサーチコンソールのデータを使って試してみます
今回はサーチコンソール(Search Console)のデータを使ってみます。なのでローデータの中身はキーワードを軸とした表示回数やクリック数、クリック率、検索順位などがメインの指標になります。
このデータを使って出したい内容は「どんな検索キーワードが過去対比(今回は前月)で上昇・下落しているのか」「表示あるいはクリックされているキーワードの傾向やキーワードのカテゴリーは?(社名が多いのか、一般的な表現のワードが多いのか等)」です。
それをアウトプットした形がこちらです。
グレーアウトゾーンが多く分かりづらいかもしれませんが、大きく3部構成に分けています。
一番左のグレーアウトが「Seach console」の検索クエリ。そのクエリ単位の数値を隣に表示しています。
そして真ん中の青いセルのパートが関数が入るところです。つまりGPTScope関数を入れて実際に傾向やファクトの日本語を書いてくれるアウトプットパートになります。
最後に一番右側の赤い見出しセルのパートがプロンプトを入力するセルです。
使ってみた感想
実際にAzureのchatGPTを利用してレポート作成を自動化してみると、非常にスムーズに動作し、手動で作業するよりもはるかに効率的です。
特に、データをもとに自動で文章を生成し、まとめ上げる作業が短時間で完了するため、手動で行うよりも作業時間を大幅に短縮できました。
また、スプレッドシートとの連携により、データの更新に合わせてレポートも自動で更新されるため、リアルタイムでのデータ分析やレポート作成が容易になります。
そしてプロンプトにはまだまだ改良余地があると感じました。これでも一定量の
ステップ1の出力結果(キーワードのグルーピング)
具体的に今回の仕組みを使ってどんなアウトプットが出たのかご紹介したいと思います。
まずはステップ1のキーワードに当たりをつけるところのステップ1です。
"
●グルーピング名{医療関連}
該当するクエリ名:
{海外医療}
{海外 医療}
{海外 医療 保険}
{医療 保険}
{医療 保険 緊急}
●グルーピング名{駐在}
該当するクエリ名:
{駐在}
{駐在 保険}
{駐在 医療}
{駐在 家族 保険}
●グルーピング名{保険関連}
該当するクエリ名:
{海外 保険}
{海外 病院 保険}
{海外 病院 保険適応}"
まさにキーワードのグルーピングをするアウトプットが得られました。軸となるキーワード別に検索クエリを分けてくれたのでどんなキーワードが検索されている傾向にあるか一目で分かるようになりました。
ステップ2の出力結果(キーワードの数値把握)
続いてステップ2の出力結果です。
ステップ2では、具体のキーワードの前月対比増減数を出しています。
"●クエリ名:海外 医療:D5
クリック数:-41.85%、表示回数-63.02%
●クエリ名:海外 保険 セル:D18
クリック数:-22.86%、表示回数12.32%
●クエリ名:駐在 保険 セル:D24
クリック数:-33.04%、表示回数12.59%
SEOデータであるSearch consoleからの抽出なので検索クエリに対して表示回数やクリック数が中心のデータになります。
これが前月対比でどう増減したかで傾向を把握できるようになります。上記では3つのクエリしか表示していませんが、プロンプト次第でいくらでも出せます。
【ここが一番重要】ステップ3の出力結果(傾向出し)
続いてステップ3の傾向出しについてです。今回お見せしたかった内容も実はここがメインです。
●「海外 セキュリティ」関連のクエリの検索が減少
「海外 セキュリティ」や「セキュリティ 海外 」などのクエリで表示回数が大きく減少。特に「海外 セキュリティ 保護」のクリック数が大幅に減少し、CTRも低下している。これは、ユーザーの関心が他のサービスに移っている可能性がある。
●「駐在」関連のクエリの検索が上昇
「駐在」や「駐在 保険」などのクエリによるクリック数・表示回数が上昇。特に「駐在 保険 緊急」のCTRが向上しており、ユーザーの関心が高まっていることが示唆される。これは、世界情勢の変化やイラン・イスラエルなど中東情勢の動向に対する関心が高まっているためと考えられる。
繰り返しになりますが、これまでレポート自動化という話は主にデータを出したり、可視化したりすることがメインでした。
しかし生成AIを活用することで、その先の傾向出しまで自動で出力してくれます。その結果がこちらです。
特定のキーワードに対して検索クエリの表示回数やクリック率などの減少があったというファクト。簡単にではありますが、その考察としてどういったことが考えられるのかまで出力してくれます。
示唆だしという話は直近のトレンドや施策の背景まで考えたり、データとして組み入れないと難しい部分はありますが、一定レベルの内容は書いてくれます。
費用対効果
AzureのOpenAI APIには無料枠が存在しますが、大量のデータを処理したり、頻繁にAPIを利用する場合にはコストが発生する可能性があります。
実際に弊社も有料で活用していますが、1ヶ月だいたい500円以下で利用できています。
500円でも今回のレベルの内容を人間主導でやるとしても5~10時間以上かかるのではないでしょうか。時給を仮に1,500円としても7,500円〜15,000円程度かかります。そう考えると相当費用対効果は良いのではないでしょうか。
業務の効率化やレポート作成のスピードアップを考えると、そのコストは十分に投資に見合う価値があると言えます。また、手作業で行っていた場合の人件費や時間を考慮すると、長期的にはコスト削減にも繋がるかと思います。
注意点
この仕組みでは関数でプロンプトやデータを制御するので、関数を組み込んだままだと、スプレッドシートが読み込みをされる毎にプロンプトやデータが読み込まれて出力をされてしまいます。
つまり、Azureのトークンが自動で使われてしまうので、使わないときは関数の「=(イコール)」を外しておくことをおすすめします。
必ずヒューマンチェックをしてください
この記事を読んで「お!レポート業務サボれるやん」とか思っている方。すいません。それはまだまだ難しいです。
弊社も今回の仕組みを活用はしていますが、AIが嘘を言っている場合があります(人間も嘘をつきますが)。
情報が古かったり、根拠がない内容を発言していたりとまだまだ人間の確認は必要です。(特にクライアントに出す場合)
なので、これで完全自動化というのはまだ難しく、弊社でも自動化率は75%程度で、残りは人の手でチェックしていますことだけご留意ください。
使えそうなシーン・レポート内容
今回解説した仕組みを活用することで、様々な業務に応用が可能です。
特にマーケティングレポートやデータ分析を自動化する場合にはかなり有効です。
SEOレポート
今回テストで試したデータもサーチコンソール(Search Console)から引っ張ってきたデータになります。
Azure OpenAIとスプレッドシート、GASの連携を活用してSEOレポートを自動化することは、特にデジタルマーケティングの現場で非常に有効です。
通常、SEOレポートは検索エンジンのランキングデータやトラフィックデータ、キーワードの動向を定期的に追跡し、それをもとに報告を行う必要があります。
これらのデータはGoogle AnalyticsやSearch Consoleなどから得られるため、膨大な量の情報を手作業でまとめるには時間と手間がかかります。
GASを使ってSearch Consoleのデータを自動で取得し、スプレッドシートに記録することで、SEOデータの集計作業を大幅に簡素化できます。
そして、そのデータをAzure OpenAI APIを活用して解釈し、要点をまとめたり、改善点を文章化することが可能です。
例えば、「今月の主要なキーワードランキングの変動」といったデータを基に、AzureのAIが自動で分析レポートを作成し、「特定のキーワードでの流入が減少した理由」といった内容まで含めた詳細な解説を自動生成できます。(ここはプロンプト次第でいくらでも調整が可能です)
【応用編】さらに効果的なSEOレポート
生成されたレポートは、クライアント向けや社内報告用としても使えますし、これに見やすいグラフや表を追加することで、プレゼン資料としても活用可能です。
これにより、SEO戦略の評価や改善が素早く行え、チームやクライアントとのコミュニケーションもスムーズに進行します。
GA4のレポート
SEOレポートもですが、Google Analytics 4(GA4)のデータを利用して、自動化されたレポートを作成することも、このスプレッドシートとAzure OpenAIの連携により実現可能です。
GA4はウェブサイトやアプリのユーザー行動を分析するための強力なツールですが、その膨大なデータを分析し、わかりやすいレポートとしてまとめるには時間がかかります。
今回の仕組みを利用してデータ抽出から傾向出しまでまとめることができればレポート業務を大幅に削減することも可能です。
例で出したデータはキーワード別でしたが、GA4ではランディングページ別のデータやチャネル別のデータなども今回の仕組みを使って傾向出しをすることができます。
【応用編】GASとGA4のデータ連携
またGASを使えば、GA4のAPIを通じてスプレッドシートにデータを自動的に取得することができます。
例えば、特定の期間内のユーザーの訪問数、コンバージョン率、エンゲージメントなどの指標を定期的に取得し、それをAzureのAIに渡すことで、具体的なユーザー行動の傾向や改善点を提案するレポートをスプレッドシート上に自動で生成することが可能です。
これによってスプレッドシート上にデータを自動転記、そしてそのデータをChatGPTのAPIを使って自動で分析・傾向出しをすることによってレポートの大部分を自動化することが可能です。
広告のレポート
広告キャンペーンのパフォーマンスを分析するレポート作成も、Azure OpenAIとスプレッドシートの連携により簡単に自動化できます。
広告もキャンペーン、広告クリエイティブ、検索語句の傾向などいろいろな切り口のデータを分析することが可能です。
Tableauのレポート
Tableauはアクセスログ上のデータだけではなく、CRMや基幹データに近いものも可視化していることが多いかと思います。
複合的なデータを元にTableauからスプレッドシートにデータをエクスポートし、それをもとにAzure OpenAIを活用して、詳細なデータ分析やインサイトを得ることも全然可能です。
例えば、ビジュアル化されたデータをもとに、「売上トレンドの分析」や「市場の変動に対する提案」など、実用的なレポートをAIが自動で作成します。
まとめ
いかがだったでしょうか。今回はAzure、スプレッドシート、GASとしてOpenAIのchatgptを使ってレポートを自動化する方法についてご紹介しました。
秘匿情報の関係で全てはお伝えできていないですが、公開できていないプロンプトもお問い合わせいただければ、ある程度まではご共有可能なので、気になる方はお申し付けください。
今回紹介した、スプレッドシート、AzureのOpenAI、GASの連携によるレポート自動化の手法は、現代のビジネス環境において非常に強力なツールとなります。これにより、手作業によるデータ処理の負担を大幅に削減し、より効率的に、かつ正確なレポートを作成できるようになります。業務の自動化によって浮いた時間を、よりクリエイティブな作業や戦略的な業務に充てることができるため、ビジネスの成長を促進するための一助となるでしょう。
特に、マーケティングレポートやSEO、GA4、広告パフォーマンスのレポート作成においては、スピードと正確さが求められます。
これらをAzure OpenAIの高度なAI機能と組み合わせることで、データの洞察をさらに深め、競争力のあるビジネス戦略を立てるための大きな助けになれればと思います。