VectordBおよび大手言語モデル(LLM)を備えた質問を回避するパイプラインへようこそ。このプロジェクトの目的は、オープンソースの大手言語モデル(LLM)でもあるLLAMA2と組み合わせて、オープンソースベクトルデータベースであるChromADBを使用して、質問を回答するための効率的でスケーラブルなパイプラインを作成することを目的としています。
ユーザー入力:ユーザーは、.pdfなどの形式のテキストデータソースを提供します。これらのドキュメントは、応答を生成するための基礎として機能します。
ドキュメントの読み込み: Langchainのドキュメントローダーを使用して、提供されたドキュメントを効率的にロードおよび前処理し、ダウンストリームタスクとの互換性を確保します。
ドキュメントチャンク:ロードされたドキュメントは、質問を回答するプロセスの効率を高めるために、より小さくて管理可能なチャンクに分割されます。
VectordB(ChromaDB)に埋め込まれたストレージ:チャンクの埋め込みは、VectordBの基礎となるテクノロジーであるChromAdbに生成および保存され、迅速かつ正確な情報検索を可能にします。
クエリ処理:ユーザークエリは埋め込みに変換され、保存されたドキュメント埋め込みとのシームレスな比較が可能になります。
Vectorデータベース検索: VectordBは、生成された埋め込みに照会されて、関連する情報のチャンクを取得し、質問回答プロセスを最適化します。
LLM Processing(LLAMA2):検索された埋め込みは、LLMであるLLAMA2に渡され、ユーザークエリに対するコンテキストが認識し、正確な回答を生成します。
質問回答パイプラインをキックスタートするには、ユーザーはサポートされている形式でテキストデータソースを提供する必要があります(現在サポートされている形式は、 PDF、CSV、HTML、XLSX、DOCX、XML、JSON )です。次のセクションに従って、依存関係の適切なインストールと構成を確認します。
これらの手順に従って、質問回答パイプラインを正常に実行します。
依存関係のインストール:必要なすべての依存関係をインストールしていることを確認してください。ノートセルで次のコマンドを実行します。
!pip install langchain
!pip install PyPDF
!pip install sentence_transformers
!pip install chromadb
!pip install accelerate
!pip install bitsandbytes
!pip install jq
!pip install unstructured
パラメーターのカスタマイズ:
ノートを開き、次のパラメーターを見つけます。
JQ_Schema:データスキーマに従ってこのパラメーターをカスタマイズします。適切な読み込みと処理のために、テキストデータの構造を定義します。
input_path: .pdfファイルなどのテキストデータソースへのパスを指定します。パスがドキュメントに正しく設定されていることを確認してください。
顔の認証トークンを抱き締める: LLAMA2モデルをダウンロードするために、Faceを抱きしめて承認トークンを取得してください。このトークンは、モデルにアクセスするために重要です。ノートブックの適切なセクションにトークンを設定します。
ノートブックを実行します: jupyterノートブックセルをセルで実行します。各セルがエラーなしで正常に実行されることを確認してください。
コミュニティからの貢献とフィードバックを歓迎します。問題を特定したり、改善の提案をしたり、機能を拡張したい場合でも、入力は私たちにとって価値があります。プロジェクトに自由に貢献してください。プロジェクトを探索していただきありがとうございます。