はじめに
SimGRAG (SimGRAG: Leveraging Similar Subgraphs for Knowledge Graphs Driven Retrieval-Augmented Generation)は、知識グラフ駆動検索-拡張生成(RAG)ベースのアプローチである。SimGRAGは、大規模な言語モデル、埋め込みモデル、ベクトルデータベースを組み合わせて、効率的な類似検索と生成機能を提供するプラグアンドプレイの利用をサポートしている。このプロジェクトは、Ollama、Nomic埋め込みモデル、Milvusベクトルデータベースなどのオープンソースソリューションに依存しており、ユーザーは必要に応じてこれらのコンポーネントを置き換えることができる。
機能一覧
- 大規模言語モデル生成ラマ3 70Bモデルを使用したジェネレーション・タスク。
- ノードと関係の埋め込みNomic埋め込みモデルを用いたノードと関係の埋め込み。
- ベクトルデータベースノードと関係の埋め込みを保存するMilvusを使用して、効率的な類似性検索をサポートします。
- データ準備MetaQAとFactKGデータセットのダウンロードと準備をサポートします。
- 設定ファイルさまざまなニーズに合わせてプロファイルを変更できます。
- パイプラインパイプラインを実行するスクリプトを提供し、MetaQAとFactKGのインデックス作成とクエリーをサポートする。
ヘルプの使用
設置プロセス
- オッラマの設置::
- Ollamaの公式ウェブサイトにアクセスし、指示に従ってOllamaをインストールしてください。
- インストールが完了したら、以下のコマンドを実行してLlama 3 70Bモデルを起動します:
オラマ ランラマ3:70b
- SimGRAGが必要とするサービスを開始します:
bash ollama_server.sh
- ノミックの組み込みモデルのインストール::
- 原子埋め込みモデルのクローニング:
mkdir -p data/raw cd data/raw git clone https://huggingface.co/nomic-ai/nomic-embed-text-v1
- ミルバスの設置::
- Milvusのウェブサイトにアクセスし、ドキュメントに従ってMilvusをインストールする。
- インストールが完了したら、Milvusサービスを開始します。
データ準備
- MetaQAデータセット::
- MetaQAデータセットをダウンロードして
データ/生
フォルダー
- MetaQAデータセットをダウンロードして
- FactKGデータセット::
- FactKGデータセットをダウンロードして
データ/生
フォルダー
- FactKGデータセットをダウンロードして
ランニングパイプ
- メタQA::
- インデックス作成とクエリのために以下のコマンドを実行する:
パイプライン python metaQA_index.py python metaQA_query1hop.py python metaQA_query2hop.py python metaQA_query3hop.py
- ファクトKG::
- インデックス作成とクエリのために以下のコマンドを実行する:
バッシュ
CDパイプライン
python factKG_index.py
python factKG_query.py
- インデックス作成とクエリのために以下のコマンドを実行する:
設定ファイル
- 設定ファイルは
コンフィグ
フォルダに保存しておけば、ユーザーは必要に応じてさまざまなタスクやデータセットに合わせてプロファイルを変更できる。
結果表示
- クエリー結果は、設定ファイルで指定された出力ファイルに保存されます。
結果/FactKG_query.txt
.各行の結果は、キー正しい
最終的な答えの正しさを示す。
以上の手順で、ユーザーはSimGRAGを使った知識グラフ主導の検索機能強化生成タスクをすぐに始めることができます。