組み合わせ可能なツール、エージェント、複数プロバイダー対応エンジンでLLMアプリケーションを構築するRubyフレームワーク。
activeagents/activeagent
エージェントをアクションとビューを持つコントローラーとして実装し、AI搭載アプリを構築できるRuby on Railsフレームワーク。
- スター
- 986
- フォーク
- 93
- 未解決の Issue
- 45
- 最終コミット
- 7 時間前
これは何?
Active AgentはRailsにAIレイヤーを追加します。エージェントはApplicationAgentを継承するRubyクラスとして記述し、コントローラーのメソッドのように動作するアクションと、テキスト、JSON、HTML形式のプロンプトを組み立てるERBテンプレートを使います。
OpenAI、Anthropic、Ollama、DeepSeek、OpenRouter、RubyLLMなど複数の生成プロバイダーに対応し、単一のインターフェースからさまざまなモデルを利用できます。設定はYAMLファイルに記述し、ジェネレーターでベースとなるエージェントクラスと設定を作成します。エージェントはツールを呼び出し、ActionCable経由でレスポンスをストリーミングし、会話のコンテキストを保持できます。また、JSON Schemaで定義した構造化出力を返すこともできます。
別のgemであるactionagentは、トレース、トークン使用量のメトリクス、評価機能を備えた、アプリにマウント可能なダッシュボードを提供します。activeagentコマンドラインから評価を実行でき、合格率が指定値を下回った場合にCIビルドを失敗させることもできます。
主な機能
- 01RailsスタイルのクラスにアクションとERBプロンプトテンプレートを記述してエージェントを定義できます。
- 02OpenAI、Anthropic、Ollama、DeepSeek、OpenRouter、RubyLLMの各プロバイダーに対応しています。
- 03ActionCableを通じてレスポンスをリアルタイムにストリーミングします。
- 04エージェントからツールを呼び出し、宣言済みのスキーマを使ってサブエージェントに作業を委任できます。
- 05JSON Schemaに基づく構造化出力を生成します。
- 06CIで評価を実行するためのコマンドラインを提供します。
ユースケース
- 既存のRailsアプリケーションにチャット機能やアシスタント機能を追加する。
- Railsアプリ内で画像、PDF、テキストから構造化データを抽出する。
- エージェントが別のエージェントに作業を委任する、複数ステップのワークフローを構築する。
- CIパイプラインの一環として、エージェントの動作に関する評価スイートを実行する。
クイックスタート
- 1
Gemfileにactiveagent gemを追加します
bundle add activeagent - 2
OpenAIなどの生成プロバイダーgemを追加します
bundle add openai - 3
install generatorを実行して設定ファイルを作成します
rails generate active_agent:install - 4
アクション付きの最初のエージェントを生成します
rails generate active_agent:agent TravelAgent search book confirm
使う前に知っておきたいこと
- Ruby 3.1以降と、対応するRailsバージョン(7.2、8.0、または8.1)が必要です。
- ほとんどのプロバイダーでは、APIキーまたはOllamaのように別途実行するサービスが必要です。
- ダッシュボードは別のgemであるactionagentとして提供され、追加のセットアップとデータベースマイグレーションが必要です。
収録されている特集
トピック
よくある質問
- activeagent とは?
- エージェントをアクションとビューを持つコントローラーとして実装し、AI搭載アプリを構築できるRuby on Railsフレームワーク。 Active AgentはRailsにAIレイヤーを追加します。エージェントはApplicationAgentを継承するRubyクラスとして記述し、コントローラーのメソッドのように動作するアクションと、テキスト、JSON、HTML形式のプロンプトを組み立てるERBテンプレートを使います。
- activeagent は無料で使えますか?ライセンスは?
- activeagent は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- activeagent は今もメンテナンスされていますか?
- 活発にメンテナンス中。activeagent の最終コミットは 2026年11月6日 です。
- activeagent は何に使えますか?
- 既存のRailsアプリケーションにチャット機能やアシスタント機能を追加する。 Railsアプリ内で画像、PDF、テキストから構造化データを抽出する。 エージェントが別のエージェントに作業を委任する、複数ステップのワークフローを構築する。 CIパイプラインの一環として、エージェントの動作に関する評価スイートを実行する。
- activeagent のインストール方法は?
- Gemfileにactiveagent gemを追加します: bundle add activeagent OpenAIなどの生成プロバイダーgemを追加します: bundle add openai install generatorを実行して設定ファイルを作成します: rails generate active_agent:install アクション付きの最初のエージェントを生成します: rails generate active_agent:agent TravelAgent search book confirm
- activeagent はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/activeagents/activeagent
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
主要なLLMプロバイダーやUIフレームワークに対応した、ストリーミングチャット、ツール呼び出し、エージェント、マルチモーダルアプリ向けの型安全でプロバイダー非依存なTypeScript SDK。
チャット、ツール、エージェント、埋め込み、Rails連携を単一のAPIで実現する、LLM機能開発向けRubyフレームワーク。
チャット補完、ツール呼び出し、プロンプトチェーン、構造化出力を使って、Rubyアプリに個別のLLM機能を追加できるライブラリ。
Responses、Chat Completions、Realtimeなどに対応した、OpenAI REST API公式Goクライアントライブラリ。
Claude、OpenAI、Gemini、OllamaやセルフホストモデルなどのLLMをElixirアプリケーションに統合するためのElixirライブラリ。