? Floki は開発の初期段階にあります。このフレームワークは進行中の研究の一環として積極的に進化しており、私は現在も Dapr を効果的に統合する方法を模索し、学習しています。フレームワークが成熟し、洞察が洗練されるにつれて、API とコア構造に対する破壊的な変更が予想されます。
Floki は、研究者や開発者が LLM ベースの自律エージェントを実験するためのオープンソース フレームワークです。 LLM 推論 API にシームレスに接続しながら、エージェントを作成、調整、管理するためのツールを提供します。 Dapr 上に構築された Floki は、マイクロサービスを簡素化し、決定論的なワークフローとイベント駆動型の対話の両方をサポートする統合プログラミング モデルを活用します。 Dapr の Virtual Actor パターンを使用することで、Floki はエージェントがメッセージを順番に処理する独立した自己完結型ユニットとして機能できるようにし、同時実行性の問題を排除しながら、より大規模なワークフローにシームレスに統合します。また、Dapr の Pub/Sub 統合を通じてエージェントのコラボレーションが促進されます。エージェントは共有メッセージ バスを介して通信し、タスクが効率的に分散され、エージェントが協力して共通の目標を達成するワークフローの設計が簡素化されます。これらの機能を統合することで、Floki はエージェント ワークフローと、マルチ エージェント システムの連携と拡張を可能にするコンポーネントを探索するための強力な方法を提供します。これらはすべて Dapr によって強化されています。
Dapr は、サービス呼び出し、Pub/Sub メッセージング、ワークフロー、さらには状態管理などの機能用の組み込み API を提供することで、回復力とスケーラブルなシステムの開発を簡素化する統合プログラミング モデルを Floki に提供します。これらのコンポーネントはエージェント ワークフローの定義に不可欠であり、開発者は基本的な機能を再構築するのではなく、エージェントとワークフローの設計に集中できます。 Dapr のサイドカー アーキテクチャとポータブルなイベント駆動型ランタイムを活用することで、Floki はエージェントが効果的にコラボレーションし、タスクを共有し、クラウドとエッジ環境全体で動的に適応できるようにします。このシームレスな統合により、決定論的なワークフローと LLM ベースの意思決定が統合システムに統合され、マルチエージェント システムやスケーラブルなエージェント ワークフローの実験が容易になります。
サービス間呼び出し: 組み込みのサービス検出、エラー処理、分散トレースにより、エージェント間の直接通信が容易になります。エージェントはこれを利用して、複数エージェントのワークフローでの同期メッセージングを行うことができます。
⚡️パブリッシュとサブスクライブ: 共有メッセージ バスを介したエージェント間の疎結合コラボレーションをサポートします。これにより、タスクの分散と調整に重要なリアルタイムのイベント駆動型の対話が可能になります。
ワークフロー API : 決定論的なプロセスと LLM ベースの意思決定を組み合わせた、長時間実行される永続的なワークフローを定義します。 Floki はこれを使用して、複雑な複数ステップのエージェント ワークフローをシームレスに調整します。
?状態管理: エージェントが対話全体にわたってコンテキストを保持できるように、柔軟なキーと値のストアを提供し、ワークフロー中の連続性と適応性を確保します。
?アクター: 仮想アクター パターンを実装し、エージェントがメッセージを順番に処理する自己完結型のステートフル ユニットとして動作できるようにします。これにより、同時実行性の問題が解消され、Floki のエージェント システムのスケーラビリティが強化されます。
Python がすでにインストールされていることを確認してください。 Python >=3.9
pip インストール floki-ai
pip install git+https://github.com/Cyb3rWard0g/floki.git
poetry
のソースから:git clone https://github.com/Cyb3rWard0g/flokicd フロキ 詩のインストール
Dapr CLI をインストールして、サイドカーを使用したアプリケーションの実行、ログの表示、Dapr ダッシュボードの起動などの Dapr 関連のタスクを管理します。セルフホスト環境と Kubernetes 環境の両方でシームレスに動作します。完全なステップバイステップ ガイドについては、公式の Dapr CLI インストール ページにアクセスしてください。
ターミナル/コマンド プロンプトを再起動し、次のコマンドを実行して、CLI がインストールされていることを確認します。
dapr -h
Docker がすでにインストールされていることを確認してください。私はDockerデスクトップを使用しています。
Dapr をローカルで初期化して、開発用のセルフホスト環境をセットアップします。このプロセスでは、Dapr サイドカー バイナリをインストールし、Redis (状態ストアとメッセージ ブローカー) や Zipkin (可観測性) などの重要なサービスを実行し、デフォルトのコンポーネント フォルダーを準備します。詳細な手順については、ローカルでの Dapr の初期化に関する公式ガイドを参照してください。
Dapr コントロール プレーン コンテナーを初期化し、デフォルトの構成ファイルを作成するには、次のコマンドを実行します。
dapr 初期化
daprio/dapr
、 openzipkin/zipkin
、およびredis
イメージが実行されているコンテナー インスタンスがあることを確認します。
ドッカーps
Floki は、Dapr とそのエージェント システム構築の可能性についてさらに探究し、学びたいという願望から生まれました。エージェントをサービスとして展開し、メッセージ通信を管理し、さまざまなコンポーネントを効果的に接続する方法を理解したいと考えていました。その過程で、私はアイデアとガイダンスのためのいくつかの確立されたフレームワークに目を向けました。これらは、私の考え方とアプローチを形作るのに役立ちました。
https://github.com/microsoft/autogen
https://github.com/langchain-ai/langchain
https://github.com/run-llama/llama_deploy
これらのフレームワークは貴重な洞察を提供しましたが、Floki はエージェントベースのワークフローとシステムに Dapr を活用する方法についての私独自の見解です。これは、このエキサイティングな分野での私の学習の旅と進行中の研究を反映しています。