このプロジェクトについて
Langchain-Chatchat(旧称 Langchain-ChatGLM)は、Langchain フレームワークと ChatGLM、Qwen、Llama などの大規模言語モデルに基づいて実装された、オープンソースでオフライン展開可能な RAG(検索拡張生成)および Agent アプリケーションプロジェクトです。その目標は、中国語のシナリオとオープンソースモデルに優しく、完全にオフラインで動作する知識ベースQAソリューションを構築することです。
中核となる原理の流れは、ファイルの読み込み、テキストの読み取り、テキスト分割、テキストのベクトル化、質問文のベクトル化、ベクトルライブラリ内で最も類似した top k テキストのマッチング、マッチしたテキストをコンテキストとして質問とともにプロンプトに追加し、LLM に送信して回答を生成する、というものです。プロジェクト自体はファインチューニングやトレーニングには関与しませんが、ファインチューニングによって効果を最適化できます。
0.3.x バージョンの機能には、LLM 対話、知識ベース対話、検索エンジン対話、ファイル対話(File RAG として統一され、BM25+KNN などの複数の検索方式をサポート)、データベース対話、マルチモーダル画像対話、ARXIV 文献対話、Wolfram 対話、文生成、ローカル知識ベース管理、および WebUI が含まれます。中核機能は Agent によって実装され、ユーザーは手動でツール呼び出しを行うこともでき、自動ツール呼び出し、ツールパラメータの解析のみ、手動パラメータ入力などの異なるモードをサポートしています。
モデル統合に関して、0.3.x はローカルパスから直接モデルを読み込むのではなく、Xinference、LocalAI、Ollama、FastChat などの主流のモデル推論フレームワーク、およびオンライン API フレームワーク One API(OpenAI、Azure OpenAI、Anthropic Claude、智谱清言、百川などをサポート)を通じて統合します。すべてのモデル統合は OpenAI SDK と互換性があります。
導入方法としては、pip インストール(pip install langchain-chatchat -U)、ソースコードからのインストール/開発導入、Docker 導入が提供されています。利用手順は、モデル推論フレームワークを起動してモデルを読み込み、chatchat init を実行して設定とデータディレクトリを初期化し、model_settings.yaml などの設定ファイルを変更し、chatchat kb -r を実行して知識ベースを初期化し、chatchat start -a を実行してプロジェクトを起動します。このプロジェクトは Python 3.8-3.11 をサポートし、Windows、macOS、Linux で動作し、ハードウェアは CPU、GPU、NPU、MPS をサポートしています。
プロジェクトのコードは Apache-2.0 ライセンスに従います。マイルストーンには、2023年4月に 0.1.0 をリリース、2023年8月に改名して 0.2.0 をリリース、2023年12月に 20K 以上のスターを獲得、2024年6月に 0.3.0 の新しいアーキテクチャをリリース、が含まれます。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.