Tip
Flock は、ワークフローベースのローコードプラットフォームで、チャットボット、RAG アプリケーション、マルチエージェントチームの調整を迅速に構築するためのプラットフォームです。LangChain と LangGraph をベースに構築され、柔軟なローコード協調エージェント編成ソリューションを提供し、チャットボット、RAG アプリケーション、エージェント、マルチエージェントシステムをサポートし、オフライン運用機能も備えています。
flock.mp4
Flock は、大規模言語モデル(LLM)アプリケーションを開発するためのオープンソースプラットフォームを目指しています。これは、LangChain と LangGraph の概念を利用した LLM ベースのアプリケーションです。チャットボット、RAG アプリケーション、エージェント、およびマルチエージェントシステムをサポートする LLMOps ソリューションのスイートを作成し、オフライン操作の機能を備えることを目指しています。
StreetLambプロジェクトおよびそのtribeプロジェクトに触発され、Flock は多くのアプローチとコードを採用しています。この基盤の上に、新しい機能と方向性を導入しています。
このプロジェクトのレイアウトの一部は、Lobe-chat、Dify、およびfastgptを参考にしています。これらはすべて優れたオープンソースプロジェクトであり、感謝しています 🙇。
プロジェクトの技術スタック:LangChain + LangGraph + React + Next.js + Chakra UI + PostgreSQL
Note
Flock には様々な組み込みツールが付属しており、カスタムツールの簡単な統合をサポートしています。利用可能なツールと独自のツールの追加方法については、ツールガイドをご覧ください。
Flock は様々なモデルプロバイダーをサポートしており、新しいプロバイダーの追加も容易です。サポートされているモデルと新しいプロバイダーの追加方法については、モデルガイドをご覧ください。
1 アプリ
- チャットボット
- シンプル RAG
- 階層エージェント
- シーケンシャルエージェント
- ワークフロー
- 意図認識ノード - ユーザー入力の意図を自動的に識別し、異なる処理フローにルーティング
- CrewAI 統合 ---進行中
- さらに多くのマルチエージェント
2 モデル
- OpenAI
- ZhipuAI
- Siliconflow
- Ollama
- Qwen
- Xinference
3 その他
- ツール呼び出し
- I18n
- Langchain テンプレート
- 永続 �� な会話:チャット履歴を保存および維持し、会話を続けるとができます。
- 可観測性:LangSmith を使用してエージェントのパフォーマンスと出力をリアルタイムで監視および追跡し、効率的に動作するようにします。
- ツール呼び出し:エージェントが外部ツールや API を利用できるようにします。
- 検索強化生成:エージェントが内部知識ベースを利用して推論できるようにします。
- ヒューマン・イン・ザ・ループ:ツール呼び出し前に人間の承認を有効にします。
- オープンソースモデル:llama、Qwen、Glm などのオープンソース LLM モデルを使用します。
- マルチテナンシー:複数のユーザーとチームを管理およびサポートします。
git clone https://github.com/Onelevenvy/flock.git
cp .env.example .env
.env ファイルのいくつかの環境変数には、デフォルト値として changethis が設定されています。 これらを秘密鍵に変更する必要があります。秘密鍵を生成するには、次のコマンドを実行します ���
python -c "import secrets; print(secrets.token_urlsafe(32))"
内容をコピーしてパスワード/秘密鍵として使用します。もう一度実して別の安全な鍵を生成します。
cd docker
docker compose --env-file ../.env up -d
サーバーの起動には Python 3.10.x が必要です。Python 環境を迅速にインストールするには、pyenv を使用することをお勧めします。
追加の Python ージョンをインストールするには、pyenv install を使用します。
pyenv install 3.10
"3.10" Python 環境に切り替えるには、次のコマンドを使用します:
pyenv global 3.10
次の手順に従います: "backend"ディレクトリに移動します:
cd backend
環境をアクティブにします。
poetry env use 3.10
poetry install
# DBを起動させる
python /app/app/backend_pre_start.py
# マイグレーションを実行
alembic upgrade head
# DBに初期データを作成
python /app/app/initial_data.py
uvicorn app.main:app --reload --log-level debug
poetry run celery -A app.core.celery_app.celery_app worker --loglevel=debug
cd web
pnpm install
cd web
pnpm dev
# または pnpm build してから pnpm start