見出し画像

miiboでAIチャットボットを構築して自社サービスに組み込んでみた

株式会社シクミヤでは資本政策データベース「shihon」を提供しています。先日、以下のプレスリリースを発表しました。

サービス内にサービスのデータベースに基づいて回答するAIチャットボットを設置したのですが、今回はその技術構成や構築手順について書いていきます。


なぜチャットボットなのか

shihonにはスタートアップ企業の資本政策に関わる資本取引、企業、個人の情報をデータベース化して各ページを組み立ています。もちろん検索性を高めるために一覧での検索機能も実装しています。ただ、shihonはデータベースサービスという特性からデータ量が多く、収録している情報の中から効率良くユーザーが欲しい情報として提供するのは難しいのではという課題がありました。

その解決策として生成AIに、データベース内の情報を利用して回答させることで、ユーザーが欲しい情報に辿り着くためのショートカット的な機能としてshihon botを開発しました。

これによってページ遷移を経ることなく、知りたいことを元に関連するページへとダイレクトに移動できるようになりました。また、各資本取引には解説が記載されているのですが、質問に沿った解説も交えて回答を得ることができるようになりました。
例えば「創業時の持分比率についてアドバイスください」「各投資家のIRRは?」「IPO時の事例」といった質問に回答してくれます。

実際のshihon botの会話

どうやって作ったか

今回shihon botの実装には、会話型AI構築プラットフォームである「miibo(ミーボ)」というサービスを採用しました。
miiboは、ノーコードでGPT-4oなど複数のLLMに対応した高度な会話型AIを簡単に作成できます。無料トライアルを含む柔軟な料金プランが用意されており、個人から企業まで幅広く利用できます。

PoCを経てmiiboへ

miiboを検討する前段階としてPoCを行いました。
具体的には、PineconeとOpenAI APIを用いて、RAGによりshihonのデータに基づく回答をするというshihon botのプロトタイプを、外部のパートナーと協力して作成しました。
プロトタイプはNode.jsで実装し、ローカル環境のコンソール上で動作するものでした。

実際のshihon botのプロトタイプ

プロトタイプを数人の起業家や専門家に触ってもらい、実際に資本政策に悩んでいる人に対して提供しても問題ない水準だとのフィードバックをいただきました。

本格的なプロダクトへの実装を行う前に、利用頻度等を測定するための環境をユーザーに提供するためのローコードあるいはノーコードツールを探しました。プロトタイプで得られた実現できそうなツールとして、以下の3つの理由からmiiboを選定しました。

  1. 効果測定が容易にできる

  2. カスタマイズできる範囲が広い

  3. RAGを実現するための環境(ナレッジデータストア)の使い勝手が良い

技術構成

生成AIの言語モデルにはGPT-4oを、ナレッジデータストアへの入稿にはmiiboのAPIを、shihon DBからデータ抽出し入稿する処理にはGASを使用しました。

shihon botの技術構成図

データ入稿のためのAPI仕様書は次のものを参照しました。

直面した課題

shihonに収録されている資本取引数は1,000を超えます。ナレッジデータストアの上限数はプレミアムプランでも1,000件のため、上限との闘いとなりました。

執筆時点でのmiiboプラン

最初に試してみたのは、外部サービス連携のWebhookを使ってAIが回答時にshihonのデータを参照し回答するという手法でした。参照するデータはJSON形式で返すように組んだのですが、あまりにもデータ量が多く、JSONデータは1MBをも超えるサイズとなってしまいました。
Webhookの手法ではデータが途切れてしまい、先頭の何十件かのデータしか読み込まれていない、ということがわかりました。しかもシステムプロンプトの組み方によってはshihonに収録されていない企業のデータまで挙げられてしまう始末でした。
Webhookはmiiboの応答プロンプトにWebhookからの返却データを埋め込むという手法であることがわかり、プロンプト上限を超えたところでデータが途切れていることがわかりました。そもそもWebhookの手法自体が大量データを扱うのに適していなかったのです。

Webhookを利用した手法の問題点

そこで、あらかじめデータを学習させておき、学習データを参照して回答をさせるといった手法へと軌道修正しました。そのためにはナレッジデータストア機能を使う必要があり、1,000件の上限内でやり繰りするために学習データ件数を絞ることにしました。
しかしながら、今後もデータは増えて行くため、いつかはこの制限をどうにか超えなくてはなりません。

おわりに

課題は残りましたが、miiboでチャットボットを構築することができました。shihonで会員登録を行うとshihon botを利用することができます。

shihonでは1週間の無料トライアルがありますので、気になった方はぜひ試してみてください。(下記のリンク↓から登録ができます)

資本政策DB「shihon」
URL: shihon.com
X: @shihon_jp

株式会社シクミヤ
note: Visionary Base編集部
X: @visionary_base
弊社は業務効率化・自動化など、仕組みで解決するお手伝いをさせていただいております。お仕事のご依頼はコチラ↓までお願いいたします。

この記事が気に入ったらサポートをしてみませんか?