chat-langchain - このリポジトリは、ローカルでホストされているチャットボットの実装であり、特にLangChainドキュメントに対する質問応答に重点を置いています。LangChainとFastAPIで構築されています。

(NULL)

Created at: 2023-01-17 04:43:13
Language: Python

🦜️🔗 チャトランチェーン

このリポジトリは、ローカルでホストされているチャットボットの実装であり、特にLangChainドキュメントに対する質問応答に重点を置いています。 LangChainFastAPIで構築されています。

このアプリは、LangChainのストリーミングサポートと非同期APIを活用して、複数のユーザーのページをリアルタイムで更新します。

ローカルでの実行

  1. 依存関係をインストールします。
    pip install -r requirements.txt
  2. LangChainドキュメントデータをベクターストアに取り込むために実行します(一度だけ実行する必要があります)。
    ingest.sh
    1. 他のドキュメントローダーを使用して、独自のデータをベクターストアにロードできます。
  3. アプリを実行します。
    make start
    1. トレースを有効にするには、がローカルで実行されていることを確認し、 に渡します。その他のドキュメントについては、こちらを参照してください。
      langchain-server
      tracing=True
      get_chain
      main.py
  4. ブラウザでローカルホスト:9000を開きます。

🚀重要なリンク

デプロイされたバージョン(まもなく更新予定):chat.langchain.dev

ハグフェイススペース(近日更新予定):huggingface.co/spaces/hwchase17/chat-langchain

ブログ記事:

📚技術的な説明

インジェストと質問応答の 2 つのコンポーネントがあります。

インジェストには次の手順があります。

  1. ドキュメントサイトからhtmlを取得する
  2. LangChainのReadTheDocs Loaderでhtmlをロードする
  3. ラングチェーンのテキストスプリッターでドキュメントを分割する
  4. LangChainのベクトルストアラッパー(OpenAIの埋め込みとFAISSベクトルストアを使用)を使用して、埋め込みのベクトルストアを作成します。

質問応答には次の手順があり、すべて ChatVectorDBChain によって処理されます。

  1. チャット履歴と新しいユーザー入力を考慮して、スタンドアロンの質問が何であるかを決定します(GPT-3を使用)。
  2. その独立した質問を考慮して、ベクターストアから関連ドキュメントを検索します。
  3. スタンドアロンの質問と関連ドキュメントをGPT-3に渡して、最終的な回答を生成します。