背景
弊社では社内規定に対する質問が全社員から総務部に問い合わせがあり総務の負荷が増えております。「社内規定を見てください!」と常々周知はしていますが聞いた方が早いため気軽に総務にチャットで聞いてしまうのが現状です…これは「どげんかせんといかん!」(どうにかしなくては)ということで最近AI関連の技術でbedrock knowledge baseでRAG検索とかいう社内規定文章をベースにいい感じに回答してくれる仕組みがあるらしいので試してみました。
ゴール
・teamsで社内規定の質問を投稿するとAIが自動で回答すること
・一般的な情報ではなく社内規定文章を元にした回答であること
・嘘をつかないこと
・総務の若い子からQiiZiro(私)さん素敵ですと愛が芽生えること
ムフ、ムフフフフ...
AIの勉強にもなって念願の彼女もできる(かもしれない)ので燃えてまいりましたぞ
アーキテクチャ
teamsとの親和性を考えるとバックエンドはazureになりそうなところですが、私はAWSを学びたいためあえてAWSでの構成としました。
AIモデルについて
bedrockにおける自然言語AIモデルで最近巷で噂になっているが「Claude3」簡単に言ってしまうとめちゃめちゃ賢いそうです。一説によるとチャットGPTを超えたとか…要はより人間っぽい挙動ができそうということで、Claude3 Haikuというモデルを使用することにしました。Claude3は3つのモデルがあるらしく用途によって使い分けるみたい。Haikuの特徴は「早くて安い」とのこと。
...あと「美味い」があれば最高やな
運用費用について
運用費用はこんな感じでした。
1日あたり1.3$程度でした。ほぼRDS代が占めておりますね。
当然ですが質問の頻度によってはlambda/bedrockのモデル使用料が蓄積していきます。
費用削減ポイント
- データストレージにAuroraを使用(Opensearchは高い)
- Auroraを日中のみ起動
- 安いモデル(Claude3 haiku)を使用
実際に動かしてみよう
実験1:休職について聞いてみた
社内規定は開示できませんが、社内規定に即していい感じに回答してくれています。
有給の付与日数についても正しく回答してくれています。
実験2:一般常識について聞いてみた
回答してくれました。社内規定以外の事は全く回答しないわけではないようですね…
実験3:社内規定には書いていない規定について聞いてみた
むむ、英語で「回答できません」という旨の回答が来ました。
プロンプトの調整が必要ですな…
実験結果から、基本的には取り込んだデータソースを元に回答してくれて、世間一般の当たり前のことも回答してくれています。ただ、社内規定に書いていないことをあたかも書いているように回答することもあるようです…体感ですが社内規定に関する回答はある程度性格でした。AIに100%を求めるのは酷ってことなんですかね
〆
「bedrock knowledge base/RAG検索」
聞きなれない言葉でしたが、自社のプライベートなデータを基にして人間のようにいい感じに回答してくれるというものでした。汎用性は高いと思うので、社員プロフィール情報をデータソースにすることで「〇〇さんの誕生日プレゼント何がいいかな?」と聞いたらいい感じに回答しれくれたりするかな?とかいろいろ考えてみるのも楽しそうですね
最後に…勇気を振り絞って映画に誘ってみました。
えっ…そんな業務規程あったっけ?会社の承認てwww なぜか規定を理由に断られました