apache/burr

Build applications that make decisions (chatbots, agents, simulations, etc...). Monitor, trace, persist, and execute on your own infrastructure.

解決する課題

Apache Burrは、AIエージェント、チャットボット、シミュレーションなど、意思決定ロジックを必要とするステートフルなアプリケーションの開発を容易にします。特定のLLMやデータ管理フレームワークを強制することなく、アプリケーションの状態を管理し、複雑な意思決定フローを追跡するための構造化された方法を提供します。

仕組み

ユーザーは、actionと呼ばれるシンプルなPython関数を使用して、アプリケーションをステートマシン(グラフまたはフローチャート)として表現します。これらのactionは、アプリケーションの状態から何を読み取り、何を書くかを定義します。開発者は、これらのaction間の遷移を定義してワークフローを制御します。

このフレームワークには、ステートマシンの実行をリアルタイムで監視、トレース、デバッグするためのテレメトリUIと、アプリケーションの状態を保存・ロードするためのプラグイン可能なパーシスタ(永続化)機能が含まれています。

対象者

AI駆動型アプリケーション(RAGチャットボットやインタラクティブアシスタントなど)や、非LLMのステートフルなワークフロー(時系列予測シミュレーションやハイパーパラメータチューニングなど)を構築しており、状態管理と実行トレースのための堅牢な方法を必要とする開発者向けに設計されています。

ハイライト

  • フレームワークに依存しない: あらゆるLLMやPythonライブラリ(例:LangChain, LlamaIndex, Apache Hamilton)で使用可能。
  • リアルタイム・テレメトリ: システムの実行をリアルタイムで監視およびトレースするための組み込みUIを搭載。
  • 状態管理: 冪等で自己永続的なワークフローを構築するための低抽象度ライブラリを提供。
  • 多用途なユースケース: AIエージェントと従来のソフトウェアシミュレーションの両方をサポート。