WASA Chat

部内Wikiと公開資料を横断して質問できる、出典付きのRAGチャットボット。Cloudflare PagesとCloud Runで運用しています。

から 現在

滑走路の上を進む長い翼の人力飛行機と、その周囲を走る人たち。

概要

私が所属していた人力飛行機製作サークル・WASAの引き継ぎ用RAGチャットボットを制作しました。

WASAでは、長年の製作・設計技術の引き継ぎをWikiで管理しているのですが、「代ごとに引き継ぎ資料が積み重なって読みにくくなっていく」という現状がありました。

WASA Chatを制作したのは引退後です。きっかけは、執行代になったときに引き継ぎ資料が膨大で分かりにくかった経験でした。部員が知りたい情報に素早くアクセスできる方法はないかと考え、AIエンジニアとしての経験を生かして、部員が自然言語で質問できるチャットボットを開発しました。

現在は引き継ぎWiki、公式サイト、フライトシミュレータガイド(FEE)の内容を情報源として使用しています。

荷重試験の申請方法を尋ねたときの回答画面。本文中のリンクからもとの資料へ辿れる

主な機能

システム構成

画面はCloudflare Pages、認証・検索・回答生成・管理APIはCloud Runが担当します。Wiki本文を含む索引は非公開のCloud Storageに置き、履歴や利用状況はFirestoreへ保存します。

質問のたびにWikiへ取りに行くのではなく、事前に構築した索引を検索する設計にしました。応答が速くなるだけでなく、外部サービスへの負荷と費用を抑えられます。資料の変更確認は管理画面から行えますが、索引の再構築と本番反映は、人が内容を確認したうえで実行します。

現在の状況

本番運用と精度改善のフェーズに入っています。引き継ぎを前提としたプロジェクトなので、設計判断の理由や運用手順をリポジトリのドキュメントとして残しています。

なお、コードはMIT Licenseで公開していますが、Wikiの内容と取得データはWASA鳥人間プロジェクトに帰属します。

使用技術

Go · Python · TypeScript · RAG · LLM · Google Cloud Run · Firestore · Cloudflare Pages · Docker

リアクション

コメント

    原寸画像を開く