株式会社Kiei / 開発
Azure DatabricksとAzure OpenAIを用いたRAGのPoC開発
《規模》開発:2名 ◼︎開発責任者もと、医用電子機器メーカーの向けRAGの開発をフルスタック(主にバックエンド・インフラ)かつ1人称で行っていました。日本語ベースで降りてくる機能要求をコードに落とし込んで実装していました。 - Next.js(TypeScript) - Python - Azure OpneAI APIからのレスポンスをストリーミングで返すようにレスポンス生成 - Databricksへのベクトル検索時に精度が上がるように下記を実施 - ハイブリッド検索 - 質問文からキーワードを抽出してベクトル検索時にそのキーワードを使ったフィルター検索 - フロントエンドからの質問文をもとにキーワード作成 + SQLの結果を元に、BM25を使った検索結果のリランキングを機能を実装 - 思ったような精度が出なかったので下記のように構成を変更して精度向上を実施 - SQLを用いてDatabricksからデータを取得 - 取得したデータをBM25を使用して順位づけ - Step-Back-Propmtingを用いてユーザーからの質問文をより具体的な質問にリライト - 上記3点をもとにLLMからの回答を取得 - 回答に使用したデータをフロントエンドで表示できる形にレスポンスを生成 - Azure - Azure Databricksのカタログを使用してベクトルDBの作成 - Azure Static Web Appsを使用したフロントエンド作成 - Azure Functionsを使用したバックエンド作成 - Azure DevOpsのPipelinesを使った上記のフロント・バックエンドのCI/CD環境構築