この記事のリード画像は、「古いデスクトップ コンピューターを使用するロボット」というプロンプトを介して HackerNoon のAI 画像ジェネレーターによって生成されました。
AI 分野には何か新しいものがあります。この投稿では、PrivateGPT のインストールと設定のプロセスを説明します。
PrivateGPTとは何ですか?
インターネット接続を必要とせずにローカルでドキュメントをクエリできる強力なツールです。あなたが研究者でも開発者でも、あるいは単にドキュメント クエリ ツールの探索に興味があるだけでも、PrivateGPT は効率的で安全なソリューションを提供します。このチュートリアルには YouTube ビデオが付属しており、インストール プロセスの段階的なデモンストレーションをご覧いただけます。
前提条件:
システムまたは仮想環境に Python 3.10 以降がインストールされていること
コマンド ライン インターフェイス (CLI/ターミナル) の使用に関する基本的な知識
Git がインストールされている
まずは仮想環境を作成しましょう。デスクトップにフォルダーを作成できます。下のスクリーンショットでは、「blog_projects」というフォルダーを作成したことがわかります。そのフォルダーからコマンド ラインを開くか、ターミナル/コマンド ラインを使用してそのフォルダーに移動します。以下の手順に従って仮想環境を作成します。
1. 仮想環境を作成します。
- ターミナルを開き、目的のディレクトリに移動します。
- 次のコマンドを実行して仮想環境を作成します (myenv を任意の名前に置き換えます)。
python3 -m venv myenv
仮想環境の名前は「myenv」になります。
2. 仮想環境をアクティブ化します。
- macOS および Linux では、次のコマンドを使用します。
ソース myenv/bin/activate
- Windows では、次のコマンドを使用します。
myenv\Scripts\activate
3. git clone コマンドを実行してリポジトリのクローンを作成します。
git clone https://github.com/imartinez/privateGPT.git
リポジトリのクローンを作成する前に仮想環境を作成してアクティブ化することで、プロジェクトの依存関係がこの環境内でインストールおよび管理されるようになります。これは、このプロジェクトに特有のクリーンで分離された開発環境を維持するのに役立ちます。
リポジトリのクローンを作成した後、プロジェクトの依存関係のインストールに進み、アクティブ化された仮想環境内でプロジェクトの作業を開始できます。
次に、Github からコード リポジトリをコピーし、プロジェクトを配置するディレクトリまたはフォルダーに移動します。ターミナルを開くか、コマンド ラインからフォルダーに移動します。
すべてがロードされたら、install要件コマンドを実行して必要な依存関係をインストールできます。
- PrivateGPT をインストールするディレクトリに移動します。
CD <フォルダ名>
- 次のコマンドを実行して、必要な依存関係をインストールします。
pip install -r 要件.txt
- 次に、LLM モデルをダウンロードし、選択したディレクトリに配置します。デフォルトのモデルは「ggml-gpt4all-j-v1.3-groovy.bin」ですが、別の GPT4All-J 互換モデルを希望する場合は、それをダウンロードして .env ファイル内で参照できます。
- 「example.env」ファイルの名前を「.env」に変更し、変数を適切に編集します。
使用しているモデルに応じて、「MODEL_TYPE」変数を「LlamaCpp」または「GPT4All」に設定します。
- 「PERSIST_DIRECTORY」変数を、ベクター ストアを保存するフォルダーに設定します。
- 「MODEL_PATH」変数を、GPT4All または LlamaCpp でサポートされる LLM モデルのパスに設定します。
- 「MODEL_N_CTX」変数を LLM モデルの最大トークン制限に設定します。
- 「EMBEDDINGS_MODEL_NAME」変数を SentenceTransformers 埋め込みモデル名に設定します ( https://www.sbert.net/docs/pretrained_models.htmlを参照)。
ダウンロードしたモデルを配置するためのモデル フォルダーをプロジェクト内に必ず作成してください。
PrivateGPT には、例として「労働組合の現状記録」を使用するサンプル データセットが付属しています。ただし、独自のデータセットを取り込むこともできます。その方法を説明しましょう。
- すべてのファイルを「source_documents」ディレクトリに置きます。
- ファイルにサポートされている拡張子のいずれかが付いていることを確認してください: CSV、Word ドキュメント (docx、doc)、EverNote (enex)、電子メール (eml)、EPub (epub)、HTML ファイル (html)、マークダウン (md)、Outlook メッセージ ( msg)、オープンドキュメントテキスト (odt)、ポータブルドキュメントフォーマット (PDF)、PowerPoint ドキュメント (pptx、ppt)、テキストファイル (txt)。
- 次のコマンドを実行して、すべてのデータを取り込みます。
Python インジェスト.py
完全!データの取り込みプロセスが完了しました。さあ、次のステップに進みましょう!
このエラーが発生した場合: cannot import name 'DEFAULT_CIPHERS' from 'urllib3.util.ssl_'
、次のコマンドを使用します: python -m pip install requests "urllib3<2"
重要なことは、 SOURCE_DOCS に新しいドキュメントを追加する場合は、「python ingest.py」を再実行する必要があることです。
-------------------------------------------------- -------------
ドキュメントホストに質問する:
ここからがエキサイティングな部分です。PrivateGPT を使用してドキュメントに質問します。それがどのように行われるかを説明しましょう。
- ターミナルまたはコマンド プロンプトを開きます。
- PrivateGPT をインストールしたディレクトリに移動します。
[ プロジェクト ディレクトリ 'privateGPT' 、CLI で ls と入力すると、いくつかのファイルの中に READ.ME ファイルが表示されます。]
- 次のコマンドを実行します。
PythonプライベートGPT.py
- スクリプトによって入力を求めるプロンプトが表示されるまで待ちます。
- プロンプトが表示されたら、質問を入力してください。
コツとヒント:
- python privategpt.py -s [ を使用して、出力からソースを削除します。したがって、答えとソースを表示する代わりに、ソースのみが表示されます。]
- 33 行目で、「verbose=false」と表示されているコマンドの最後に「n thread=16」と入力します。これにより、テキストをより高速に生成するためにより多くの電力が使用されます。
PrivateGPT 最終的な考え
- これは、ローカル コンピューター上で複雑なドキュメントを理解したい人にとって最適です。
- これは、外部に漏洩したくない個人データに最適です。
- これは、学生、この業界に初めて参加する人、税金について学習している人、または理解を助ける必要がある複雑なことを学習している人にとって特に最適です。
- ただし、ローカル コンピューターで実行しているため、待ち時間が 30 ~ 50 秒、場合によってはそれ以上かかる場合があります。