GeminiAPIで手書きのアンケート画像を読み込んで分析し、kintoneに保存しよう
警告
2020年8月改訂のセキュアコーディングガイドライン
に抵触する内容が含まれています。認証情報が漏洩した場合の影響を考慮して慎重に検討してください。
該当箇所:JavaScriptプログラムの12行目。
はじめに
お客様からの手書きアンケートをkintoneに取り込んで分析したいことはありませんか。
この記事では、手書きのアンケートをGeminiAPIを使って読み込んで分析し、kintoneに保存するカスタマイズを紹介します。
完成イメージ
アプリの新規入力フォームで手書きアンケートの画像ファイルを添付して保存すると、Geminiが画像を解析してテキストを抽出します。
さらに、その内容を基に「良い点」「悪い点」「改善点」を自動的に分析し、結果をkintoneに保存します。
画像データを解析する流れ
- 「ファイルを選択」ボタンで、解析したい画像ファイルを読み込みます。
- 「保存する」ボタンを押すと、GeminiAPIで手書きのアンケート画像を読み込んで分析し、結果をkintoneに保存します。
実際の操作の流れは、下記GIF画像を確認してください。
アプリの準備
「はじめから作成」でアプリを新規作成し、フィールドを次のように設定します。
フィールド名 | フィールドの種類 | フィールドコード | 備考 |
---|---|---|---|
添付ファイル | 添付ファイル | image | 解析したい画像ファイルをkintoneに格納するためのファイルフィールドです。 |
読み込んだ日本語テキスト | 文字列(複数行) | extractedText | 解析した画像の日本語テキストを格納するためのフィールドです。 |
良い点 | 文字列(複数行) | goodPoints | 読み込んだ日本語テキストから良い点を抽出して格納するためのフィールドです。 |
悪い点 | 文字列(複数行) | badPoints | 読み込んだ日本語テキストから悪い点を抽出して格納するためのフィールドです。 |
改善点 | 文字列(複数行) | improvements | 読み込んだ日本語テキストから改善点を抽出して格納するためのフィールドです。 |
GeminiAPIの準備
APIキーの取得
Google AI Studio
にアクセスし、APIキーを作成ボタンをクリックします。
コピーボタンが表示されたらクリックしてAPIキーをコピーし、控えておきます。
サンプルコード
kintone-geminiAPI.js
本サンプルのプログラムです。
12行目の{APIキー}
を、先ほど取得したAPIキーで置き換えてください。
|
|
サンプルコードの解説
保存に成功した後のイベントで画像データを取得する
保存に成功したあとでなければ、レコードの情報からfileKeyを取得できません。
そのため、app.record.create.submit.success
イベントで画像データを取得します。
|
|
解析結果を上書き保存する
保存したレコードから画像データを取得し、GeminiAPIを使って画像を解析します。
解析結果をレコードに保存します。
|
|
画像の解析
Blob形式に変換した画像データを解析するための関数に渡します。
|
|
GeminiAPIに画像データを送信し、解析結果を取得します。
取得した解析結果をJSON形式に変換し、JSON形式のブロックを抽出し、解析結果を返します。
|
|
動作の確認
画像を解析する
以下の手書きアンケートをダウンロードし、カスタマイズしたアプリ上に保存し、動作を確認してください。
おわりに
今回の記事は、Gemini APIを利用して画像から日本語テキストを抽出、分析し、kintoneに保存するカスタマイズを紹介しました。
手書きアンケートの画像を読み込んで分析することで、アンケートの集計作業を効率化できます。
なお、Google Cloudの利用には課金が発生する可能性がありますので、ご利用前に料金プランを確認してください。
このTipsは、2024年11月版kintoneで動作を確認しています。