AgentGuardは、開発者や企業向けに設計されたオープンソースツールで、大規模な言語モデルなどのAIエージェントの使用コストをリアルタイムで監視し、制御することができます。AgentGuardは、複数の保護モードをサポートし、コスト超過が発生した場合、自動的にプロセスを停止したり、警告を発することができます。AgentGuardは、複数の保護モードをサポートしており、コスト超過が発生した場合にプロセスを自動的に停止したり、警告を発行したりすることができます。AgentGuardは、使いやすく設計されており、わずか数行のコードでプロジェクトで有効にすることができるため、さまざまなAI開発シナリオに適しています。AgentGuardは、スタンドアロン開発環境とマルチプロセス環境の両方で、信頼性の高いコスト管理と透過的なロギングを提供します。
機能一覧
- AIエージェントのAPIコールのコストをリアルタイムで監視し、現在の費用と予算シェアを表示します。
- 予算の上限を設定することができ、上限を超えた場合にエラーをスローする、通知を送信する、またはプロセスを終了するオプションがあります。
- APIコールの詳細な履歴ログを提供し、コストの追跡と分析を容易にします。
- Redisを利用したマルチプロセスの予算共有とクロスプロセスのコスト追跡をサポート。
- 機密データを自動的にブロックするプライバシー保護オプションを提供します。
- 異なるミッション要件に適応するため、予算上限と保護モードの動的調整をサポートする。
- Webhook機能を統合し、SlackやDiscordにリアルタイムでコストアラートを送信。
- LangChainのようなフレームワークとの迅速な統合をサポートするサンプルコードが提供されている。
ヘルプの使用
設置プロセス
AgentGuardは、ほとんどのAIプロジェクトに適した簡単なインストールと設定プロセスを持つNode.jsモジュールです。以下は、詳細なインストールと使用手順です:
- Node.jsのインストール
お使いのシステムにNode.jsがインストールされていることを確認してください(推奨バージョン18以上)。Node.jsは、Node.jsの公式ウェブサイトからダウンロードしてインストールできます。 - AgentGuardリポジトリのクローン
ターミナルで以下のコマンドを実行して、AgentGuardのGitHubリポジトリをクローンする:git clone https://github.com/dipampaul17/AgentGuard.git cd AgentGuard
- 依存関係のインストール
プロジェクト・ディレクトリに入ったら、以下のコマンドを実行して必要な依存関係をインストールする:npm install
- インストールの確認
インストールが完了したら、以下のコマンドを実行して成功を確認する:node verify-installation.js
インストールが正しければ、端末は確認メッセージを出力する。
- AgentGuardの初期化
以下の2行のコードをAIプロジェクトに追加し、AgentGuardを初期化します:const agentGuard = require('agent-guard'); await agentGuard.init({ limit: 50 });
ここだよ。
limit: 50
予算上限を50ドルに設定することを示します。この値は必要に応じて調整できます。
設定オプション
AgentGuardは、柔軟な設定オプションを提供します。 以下は、一般的に使用されるパラメータの説明です:
limit
:予算の上限を設定する(米ドル建て)。50
50ドルを示す。mode
プロテクトモードでは、以下の3つがサポートされる:throw
オーバーラン時にエラーを投げる。notify
オーバーランしたときに通知を送りますが(ウェブフックなど)、プロセスは終了しません。kill
: : コスト超過の場合、プロセスを直接終了させることができる。
webhook
アラート受信用の通知アドレス(SlackやDiscordのウェブフックURLなど)を設定します。例webhook: 'https://hooks.slack.com/...'
redis
マルチプロセスのバジェット共有のためにRedisのURLを設定します。例redis: 'redis://localhost:6379'
privacy
に設定する。true
以下の場合、機密データを自動的にブロックするsilent
に設定する。true
リアルタイム・コスト更新ログを非表示にする。
初期化コードのサンプル:
const guard = await agentGuard.init({
limit: 100,
mode: 'throw',
webhook: 'https://hooks.slack.com/...',
redis: 'redis://localhost:6379',
privacy: true
});
主な機能
- 現在の費用を見る
利用するguard.getCost()
現在の合計金額を取得します。例console.log(`已花费: $${guard.getCost()}`);
- 予算シーリングの調整
タスクの優先順位が変われば、予算は動的に調整できる:guard.setLimit(500); // 将预算上限改为 500 美元
- 代替コスト
新しいタスクが開始されると、コストカウントはリセットされる:await guard.reset();
- 通話ログの表示
利用するguard.getLogs()
APIコールの詳細な履歴を取得し、コストソースの分析を容易にします。 - 支出超過への対応
予算が超過した場合、AgentGuardは、その予算を考慮し、次のような措置を講じます。mode
パラメータは、対応する操作を実行する。例えば、モードがthrow
これにはtry-catchが使える:try { const response = await openai.chat.completions.create({...}); } catch (error) { if (error.message.includes('AGENTGUARD_LIMIT_EXCEEDED')) { console.log('预算超支:', error.agentGuardData); // 切换到低成本模型或保存状态 } }
ブラウザ環境サポート
AgentGuardはブラウザ環境もサポートしています。以下のスクリプトを導入するだけです:
<script src="https://unpkg.com/agent-guard@latest/dist/agent-guard.min.js"></script>
<script>
AgentGuard.init({ limit: 50, mode: 'notify' });
</script>
サンプルコード
以下は、OpenAIプロジェクトにAgentGuardを統合する方法を示す完全な例です:
const agentGuard = require('agent-guard');
const openai = require('openai');
(async () => {
const guard = await agentGuard.init({
limit: 25,
mode: 'notify',
webhook: 'https://hooks.slack.com/...',
privacy: true
});
try {
const response = await openai.chat.completions.create({
model: 'gpt-4',
messages: [{ role: 'user', content: 'Hello world' }]
});
console.log('响应:', response);
console.log(`当前花费: $${guard.getCost()}`);
} catch (error) {
if (error.message.includes('AGENTGUARD_LIMIT_EXCEEDED')) {
console.log('预算保护触发:', error.agentGuardData);
}
}
})();
デバッグとテスト
AgentGuardは、開発者がテストできるようにいくつかの例を提供しています:
- うごきだす
node examples/runaway-loop-demo.js
無限ループシナリオをシミュレートし、予算保護をテストする。 - うごきだす
node examples/langchain-example.js
LangChainとの統合をチェックしよう。 - 見せる
examples/test-browser.html
ブラウザ環境のサポートをテストする。
アプリケーションシナリオ
- AI開発におけるコスト管理
agentGuardは、リアルタイムモニタリングと個人開発者または小規模チームの予算制約により、開発コストが管理可能であることを保証します。 - エンタープライズAIプロジェクト管理
大規模なAIプロジェクトを展開する企業は、チーム間で予算を共有する必要があります。AgentGuardのRedisサポートにより、複雑なエンタープライズクラスのアプリケーションのコストを管理するためのマルチプロセス・コラボレーションが可能になります。 - 教育・研究プログラム
AIモデルの実験を行っている学生や研究者は、AgentGuardを使用して実験のコストを制限し、タスク外の実行によるリソースの浪費を避けることができます。 - ブラウザ側のAIアプリケーション
ブラウザでAIエージェントを実行する開発者は、対話型ウェブアプリケーションのAgentGuardのブラウザサポートにより、フロントエンドのAI呼び出しのコストを監視することができます。
品質保証
- AgentGuardはどのようなAIフレームワークをサポートしていますか?
AgentGuardは、APIコールを使用するあらゆるAIプロジェクトをサポートする、フレームワークにとらわれないツールです。LangChainのようなフレームワークとの統合サンプルを提供し、開発者は必要に応じて拡張することができます。 - 予算超過にはどのように対処していますか?
の構成による。mode
AgentGuard はエラー (throw
)、通知の送信(notify
) またはプロセスを終了する (kill
).開発者はエラーをキャッチし、try-catchで処理することができる。 - Redisは必要ですか?
Redisはオプションであり、マルチプロセスまたは分散環境で予算データを共有する場合にのみ必要です。Redisはスタンドアロンのプロジェクトでは設定する必要はありません。 - 機密データを保護するには?
そうしれいかんprivacy
に設定する。true
AgentGuardは、機密情報を自動的にブロックし、ログと通知に個人データが含まれないようにします。