🙆

Flutter WebとLLMを使って独自ドキュメントからQAチャットボットができるアプリを作ってみた(1/n)

2024/01/19に公開

初めて投稿します。

普段は建設業関係の会社で働いているのですが、興味がありアプリ制作を試みては挫折しています。今回は、Flutter WebとLLMを使って、ユーザーが投稿したドキュメントからQAチャットボットを生成するアプリを作ってみたので紹介します。

作成を開始したのは昨年の8月ごろです。LLMを使ったQAチャットボットサービスは、いくつかの会社さんから既に提供されていたかと思いますが、法人向けが多く、個人向けに作成すると喜ばれるかなと思い作ってみました。

しかしご存知の通り、この記事を書いている2024年1月時点ではOpenAI社がGPT Storeを開設したこともあり、この手のツールを個人開発する意義を感じなくなったので、ここで供養することにしました。

なお、コードは以下に公開しています。
https://github.com/kicchann/llm_qa_app

概要を以下に示します。

いわゆるRAGと呼ばれる技術を使っています。
1つのファイルの情報をindexにして、それを元に回答するだけですので、venctorDBのような高度なものは使わず、index.jsonの探索をして返すだけのシンプルなしくみです。

FlutterではMVVM + Repositoryを使って構築しました。
決済にはStripeを使っています。

Flutter、Firebase、Cloud Functions、Cloud Tasksと知らない技術が盛り沢山でしたので、一々苦労しました。

苦労したことについては、すこしずつ個別に記事を投稿できればと思います。

Discussion