📋 プロジェクト概要
- カテゴリ: チャットボット / RAG(簡易ベクトル検索)
- 期間: 2026/05/17 -(検証中)
1. 背景と目的
- 新規チャットボット案件。利用者が3つの選択肢から順に回答し、最後に質問を入力するフローが求められている。
- クライアントはDifyのナレッジベースを直接操作せず、Googleスプレッドシート上でのデータ管理を希望。Difyの操作をせずスプレッドシートのみで完結する運用を求めている。
- 本案件はLINEでの利用を想定。リッチメニュー経由での質問受付を確認しつつ、質問入力用の画面が別途必要という整理。
- Difyのナレッジ機能を使わずに、どう回答精度を担保するかが議論の中心的な論点。
2. 取り組み内容
実施した施策・活動
- チャットボット案件の技術構成と運用要件を協議し、Googleスプレッドシート+埋め込みモデルを用いた実装方針を決定。
- Difyの開始ブロックにプルダウン形式の入力フィールドを追加しカテゴリ選択させる設定を、実機で確認。
- 3段階の開発工程(①スプレッドシート項目定義 ②埋め込みモデル呼び出しGAS構築 ③全体統合)を確認・合意。
使用したツール・技術
- Googleスプレッドシート(データ管理+簡易ベクトルDB)
- Google Apps Script(GAS):差分検知・埋め込みAPI呼び出し・ベクトル処理・OpenAI API直叩き
- 埋め込みモデル(Embedding Model):テキストの数値化・意味の近さ判定
- 大規模言語モデル(LLM/OpenAI API):抽出候補の最終判定
- Dify:開始ノードでカテゴリ選択入力、Web公開URLでLINE→Web回答画面へ誘導
- LINE:リッチメニュー/チャット画面からの導線
主要な意思決定とその理由
- スプレッドシート+GASを軸としたシステム構成を採用(クライアント要件=Dify非操作・スプレッドシート完結のため)。
- DifyのWeb公開URL機能を利用し、LINEのチャット画面からWebの回答画面へ誘導する仕様に合意。Difyの開始ノードからGASへデータを中継する構成で実装。
- キーワード検索の限界に対し、埋め込みモデルでベクトル化+コサイン類似度で回答候補を抽出する方式を導入。
- 抽出した上位候補(例:5件)に対しLLMで適切性を判定。マッチングスコアが一定(例:0.7以上)を超えた場合のみ回答を返す制御。
- スプレッドシートの差分を監視し、埋め込みモデルでベクトル化して保存する構成。数百行規模ならGAS運用が可能。
- データ更新はリアルタイム不要。1日1回等の定期実行、または運用担当者の手動実行で対応。
- OpenAI APIはK W社アカウントの余剰枠を活用するため、GAS側から直接呼び出す構成とする。
- Dify開始ブロックのカテゴリ選択入力を必須化し、入力ミス防止とデータ整理を両立。
3. 進捗と成果
達成できたこと
- GAS/スプレッドシート/埋め込みAPI/LLMを組み合わせたシステム全体像と開発フローのイメージが明確化。
- 3ステップの開発工程と次回までの役割分担を合意。
定量的な成果
- (情報なし)
定性的な成果
- 今回の議論を通じてシステム構築のイメージ・全体像が明確になり、今後の進め方の見通しが立ったとの確認。
4. 学びとナレッジ
うまくいったこと(Good)
- 埋め込みモデル+コサイン類似度の導入で、単純なキーワード一致より高い正答率が期待できるという方針整理ができた。
- 実機でDify開始ブロックのプルダウン設定を確認でき、認識を揃えられた。
うまくいかなかったこと(Bad)
- (情報なし)
改善ポイント(Improve)
- (随時更新)
技術的な発見・Tips
- 埋め込みモデルはキーワード一致でなく「意味の近さ」を数値で判定でき、関連性の高い回答抽出に有効。
- スプレッドシートを簡易ベクトルDBとして使い、数百行規模ならGASで運用可能。データ増加時もベクトルDBに近い検索へ寄せられる余地がある。
- 抽出候補に対するLLM判定+スコア閾値(例:0.7)で、回答可否を制御できる。
5. 課題と対応
発生した課題
- ユーザーの質問がスプレッドシート上の既存データと完全一致しないケースの判定方法。単純なキーワード検索では限界がある。
- GPT/GeminiのAPIを都度呼び出すと将来的にコストが増大するリスク。
- 埋め込みモデルとLLMは異なる軸で運用され、それぞれにAPI利用料が発生(二重課金)。埋め込みモデルを選択できない環境ではコスト・運用の複雑さが課題。
- LLM利用は検索品質が上がるが管理が煩雑、キーワード検索は品質が下がるが管理が容易、というトレードオフ。
対応方法
- 埋め込みベクトル化+コサイン類似度+LLM最終判定の三段構えで精度とコストを両立させる方針。
- LLMのAPI利用に集約する選択肢も比較検討対象とし、現構成と運用コストの観点で最適解を継続検討。
未解決の課題
- 埋め込みモデルとLLMの最終的なコスト配分・構成の最適解
6. コストとリソース
人的リソース
- リサーチに1H、実装に5H
金銭的コスト
- 埋め込みモデルとLLMで別軸のAPI利用料が発生する
コスト対効果
- (マニュアルに従って動くだけの)チャットオペレータの人件費が割愛できるコスト効果