はじめに
AI Agentは、環境を認識し、意思決定を行い、目標を達成するためのアクションを実行できる自律システムです。Shannonでは、AgentはLarge Language Models (LLM)とツールを使用してタスクを処理する基本的な実行単位です。Agentの機能
Shannon Agentができること:推論
LLMを使用してタスクを分析し、ソリューションを計画し、意思決定を行う
ツールの実行
関数の呼び出し、コードの実行、Web検索、APIとの対話
協働
他のAgentと協力して複雑なマルチステップ問題を解決
学習
パターン学習とキャッシュされた結果を通じて時間とともに改善
Agentのライフサイクル
Agentがタスクを処理する方法:1
タスク分析
Agentはタスクを受け取り、何をする必要があるかを分析
2
計画
LLMが計画を作成し、必要に応じてステップに分解
3
ツール選択
Agentは必要なツールを特定
4
実行
ツールを反復的に実行し、結果を処理
5
統合
結果を最終的な回答に統合
ShannonにおけるAgentタイプ
シングルAgent(シンプルモード)
単一のAgentが分解なしでタスク全体を処理します。 最適な用途:- シンプルなクエリ
- 事実の取得
- 基本的な計算
- 迅速な応答
Shannonはシンプルなクエリに対して自動的にシングルAgentモードを選択します。
マルチAgent(標準/複雑モード)
複数の専門Agentが協力し、ShannonのOrchestratorによって調整されます。 最適な用途:- 複雑なリサーチ
- マルチステップWorkflow
- 異なる専門知識を必要とするタスク
- 並列処理が必要なタスク
Shannonはクエリの複雑さに基づいて、複雑なクエリを自動的にマルチAgentワークフローに分解します。
Agentコンポーネント
1. LLM Brain
言語モデルによって駆動される意思決定コア:- モデル選択: Shannonはタスクの複雑さに基づいてモデルを自動選択
- 小規模タスク →
gpt-5-mini、claude-haiku - 複雑なタスク →
gpt-5、claude-opus
- 小規模タスク →
- コンテキスト管理: コンテキストウィンドウを自動管理
- キャッシング: 該当する場合、以前のLLMレスポンスを再利用
2. ツールシステム
Agentは様々なツールを実行できます: 組み込みツール:- Pythonコード実行(WASIサンドボックス)
- Web検索(Google/Serper/Bing/Exa/Firecrawl)
- ドキュメント取得
- 数学的計算
3. メモリシステム
Agentは2種類のメモリを維持します: セッションメモリ:- 会話内の短期コンテキスト
- 設定可能なTTL(デフォルト30日)でRedisに保存
- マルチターン対話を可能にする
- Qdrantの長期セマンティックメモリ
- セッション間の取得
- 関連コンテキストのためのMMR多様性
プラットフォーム設定
Shannonの動作は環境変数で設定されます。一般的な例:モデルティア
Shannonは設定されたティアに基づいてモデルを自動選択します:| ティア | モデル | ユースケース | コスト |
|---|---|---|---|
| SMALL | gpt-5-mini、claude-haiku | シンプルなクエリ、大量処理 | $ |
| MEDIUM | gpt-5、claude-sonnet | 汎用目的 | $$ |
| LARGE | gpt-5-thinking、claude-opus | 複雑な推論、重要なタスク | $$$ |
Agent調整パターン
ShannonはマルチAgent調整のために実証済みの認知パターンを使用します:Chain-of-Thought (CoT)
各ステップが前のステップに基づいて構築される順次推論:Tree-of-Thoughts (ToT)
複雑な問題解決のためのバックトラッキングを伴う探索:ReAct(推論 + 行動)
動的タスクのための推論と行動の交互実行:セキュリティと分離
Shannon Agentはセキュアな環境で実行されます:WASIサンドボックス
すべてのコード実行はWebAssembly System Interfaceサンドボックス内で行われ、以下を備えています:
- ネットワークアクセスなし
- 読み取り専用ファイルシステム
- メモリ制限
- 実行タイムアウト
OPAポリシー適用
Agentができることを制御:ベストプラクティス
1. 適切なモードを選択
- Simple: 単一ステップタスク、高速レスポンス
- Standard: マルチステップタスク、中程度の複雑さ
- Complex: リサーチ、分析、高度な推論
2. 予算制限を設定
予期しない料金を防ぐために、プラットフォームレベルでトークンとコストの制限を設定:3. コンテキストにセッションを使用
マルチターン会話には、一貫したsession_idを使用: