## プロジェクト概要(目的・人数・体制)
---
LLM (Gemini) に社内の資料 (Notion、Slackの会話)や、外部の公開 Web ページを与えることで、内容の要約や必要な情報の抽出を可能にした。
プロジェクトは PoC として1人で行い、企画から実装、テストまで全てを実施した。
## プロジェクトの背景
---
ChatGPT などを使わず、セキュアな形で会社のコンテキストを LLM に与え、業務効率化を行いたいという要望があった。
社内ドキュメントに関しては Notion、Google Docs、Confluence をはじめとして、複数のサービス・データソースにデータが散っていたため、それを一元的に管理し、必要な情報を取得できるようにしたかった。
そこで、Slack をインターフェイスとし、OpenAI より安く、多くのトークンを与えられる Gemini を用いて RAG が可能な API サーバーを構築した。
## プロジェクトにおける自身の役割
---
企画からサービス開発のすべて。
具体的には以下のもの:
- Python で Flask を用いてのバックエンドサーバーの構築
- LangChain で RAG のチェインを構築
- Slack をインターフェイスとするため、bolt で Slack の処理を実装
- BeautifulSoup を用いた Web 情報のパース (LangChain の Custom Retriever として実現)
- Google Cloud 上でサーバー及びベクトルデータベースの構築
- Cloud Run でサービスをホスト
- Vertex AI の Agent Builder を用いたテキストのベクトルデータベース化と検索
- Google Custom Search Engine を用いた外部情報検索
## プロジェクトのアウトカム
---
ドキュメントの検索が手間な状態だったが、Slack 上で検索を行い、要約と利用したドキュメントの URL を含めた返答が可能になったため、(具体的な数字はないが) 全従業員にの生産性向上に寄与した。