雑談ジャーナルのプロトタイピング(実装編)
- 日々の雑談内容を記録できること
- 成長が定量的に可視化できること
- 次回の雑談に向けてのアドバイスを提案できること
- 実際の音声から雑談内容を評価できること
の機能をもった雑談ジャーナルのプロトタイプを作製する。
1.日々の雑談内容を記録できること
自分のQiita記事も参考にして、
- 雑談相手の名前
- 雑談トピック
- 日付
- 雑談時間[分]
- 良かった点
- 悪かった点
を記録できるようにした。
2.成長が定量的に可視化できること
2次情報からグラフ機能があることがわかった。
日々の雑談時間の総計を棒グラフにして表示するタブを作製した。
3.次回の雑談に向けてのアドバイスを提案できること
提案はLLMが考えたブラックボックスな内容よりもエビデンスのある提案の方がよいと考える。
以前、Difyのワークフローを利用して、Google検索した内容をLLMに入力して回答をさせるRAGを実装したところ精度が悪かった。
そこで純粋にPerplexityやGensparkを使うことができれば精度が向上するのではないかと考えた。
Gensparkは見当たらかったが、PerplexityはAPI利用ができるということで、Peplexity APIを利用したいと考えた。
APIリファレンスによるとLLMはLlama3.1
のみとのこと。
連携できるワークフローツールを調査したところ、DifyのIssuesで試している方を見つけたのでDifyを選定することにした。
AppSheetーGASーDifyと連携させて、良かった点や悪かった点からエビデンスを示した次回アドバイスを出力させることができた。
3.次回の雑談に向けてのアドバイスを提案できること(つづき)
また、事前に雑談する相手が決まっている際にどのようなトピックを話せばよいか提案してくれれば雑談が捗るのではないかと考えた。
そこで、相手の性別、年代、特徴を入力することで雑談のアドバイスを提案してくれるタブを作製した。
これもAppSheetーGASーDifyと連携させて、GPT-4oの最新モデルで提案内容を生成した。
4.実際の音声から雑談内容を評価できること
PO9のわちさんが録音した歌の評価をしているQiita記事をみつけた。
AssemblyAI
というAPI利用可能な感情分析ができるサービスがあるとのことであった。
感情分析はPositive
、Neutral
、Negative
の3段階評価。
ただ、記事の内容がPythonであったため、GASでは実行できない。
APIリファレンスからTypeScript
のサンプルコードを見つけた。
GPT-4oにTypeScriptのサンプルコードをGASで実行できるコードに変換してもらった。
4.実際の音声から雑談内容を評価できること(つづき)
iPhone標準のボイスメモの音声ファイルをAppSheetからGoogle Driveにアップロードし、その音声ファイルについて感情分析をすることにした。
が、iPhoneの音声ファイルはm4a形式のためAppSheetでアップロードできなそう。
AppSheetのフォーラムでも同じことを嘆いている投稿をみた。
WindowsのPCからmp3、mp4、wav形式などのファイルをAppSheetでアップロードしたところ感情分析ができることを確認した。(結果は日本語に翻訳している)
ただ、入力した音声がほとんどニュートラル判定となってしまう。
現状、実用的な機能とは言えない状態である。