プロジェクト概要
分散した社内文書を、全文+ベクトルのハイブリッド検索で効率的に探せるようにする基盤。
多くの企業では社内文書が複数システムやフォルダに分散し、必要な情報を探すのに時間がかかります。そこで全文検索とベクトル検索を組み合わせたナレッジ検索基盤を構築し、社内規程・業務マニュアルを効率的に検索・活用できるシステムを開発しました。次段階のマルチモーダル基盤(AIKnowledgeBaseNew)につながる、検索基盤づくりの起点です。
社内規程・業務マニュアルを対象に、全文検索とベクトル検索を組み合わせたハイブリッド検索基盤を構築。PM兼システムアーキテクトとして、技術選定から推進まで担当した在職プロジェクトです。
プロジェクト概要
多くの企業では社内文書が複数システムやフォルダに分散し、必要な情報を探すのに時間がかかります。そこで全文検索とベクトル検索を組み合わせたナレッジ検索基盤を構築し、社内規程・業務マニュアルを効率的に検索・活用できるシステムを開発しました。次段階のマルチモーダル基盤(AIKnowledgeBaseNew)につながる、検索基盤づくりの起点です。
背景・課題
主な機能
担当(役割)
アーキテクチャ
Vueフロントからの検索リクエストを、FastAPIが受け、Elasticsearchのハイブリッド検索とLLM回答生成につなぐ構成です。重い文書処理はKafkaで非同期化しています。
flowchart LR
U["利用者(Vue3 フロント)"]
API["FastAPI"]
K["Kafka(非同期処理)"]
ES["Elasticsearch(全文 + ベクトル)"]
L["LLM(回答生成)"]
U --> API
API --> K
K --> ES
API --> ES
ES --> L
L --> API
全文検索はキーワードや固有名詞に強く、ベクトル検索は意味的に近い文書を拾えます。両者を組み合わせることで検索の再現率と精度を両立しました。
文書処理と索引更新を非同期化することで、アップロード時のタイムアウトを避け、大量文書でも安定して処理できる構成にしました。