Documentation Index
Fetch the complete documentation index at: https://docs.shannon.run/llms.txt
Use this file to discover all available pages before exploring further.
Workflowとは?
ShannonのWorkflowは、AI Agentを調整して複雑なタスクを完了する、耐久性のあるステートフルなプロセスです。Temporal上に構築され、以下を提供します:- 耐久性: Workflowはサービスの再起動と障害を乗り越える
- 決定論: デバッグのためにリプレイ可能
- 可視性: 完全な実行履歴と状態検査
- 信頼性: 自動リトライとエラーハンドリング
Workflowアーキテクチャ
認知パターン
Shannonは異なるタスクタイプに対して実証済みの認知パターンを実装しています:Chain-of-Thought (CoT)
各ステップが前のステップに論理的に基づいて構築される順次推論。 最適な用途:- 数学的問題
- ステップバイステップ分析
- 線形Workflow
Shannonは順次的な数学的および分析的タスクに対してChain-of-Thought推論を自動的に適用します。
Tree-of-Thoughts (ToT)
複数のソリューションパスを同時に探索し、評価して最良のものを選択します。 最適な用途:- 設計上の決定
- 戦略的計画
- 複数のアプローチを持つ問題
Shannonは複数のソリューションパスを持つ設計および計画タスクに対してTree-of-Thoughts探索を自動的に適用します。
ReAct(推論 + 行動)
動的な問題解決に最適な、思考と行動をループで交互に実行。 最適な用途:- リサーチタスク
- デバッグ問題
- 適応型Workflow
Shannonはリサーチおよび反復的発見タスクに対してReAct(推論 + 行動)を自動的に適用します。
Debateパターン
複数のAgentが異なる視点を議論し、コンセンサスを統合します。 最適な用途:- 意思決定
- トレードオフの評価
- バランスの取れた分析
Shannonは複数の視点を必要とする意思決定タスクに対してDebateパターンを自動的に適用します。
タスク分解
複雑なタスクに対して、Shannonは自動的にサブタスクに分解します:DAG(有向非巡回グラフ)実行
分解戦略
Shannonはタスクを分析し、内部的に実行計画を作成します。分解構造はSDKレスポンスで直接公開されませんが、イベントを通じてWorkflow実行を観察できます:- サブタスクは依存関係がない場合に並列実行
- 統合タスクはすべてのサブタスクの完了を待機
- 各サブタスクは専門Agentに割り当て
Workflowアクティビティ
Temporal Workflowはアクティビティ(個別の作業単位)で構成されます:| アクティビティ | 目的 |
|---|---|
| DecomposeTask | タスクを分析してサブタスクを作成 |
| ExecuteAgent | 単一のAgentタスクを実行 |
| SynthesizeResults | 複数のAgentからの出力を統合 |
| UpdateSessionResult | セッション状態を永続化し、アシスタントメッセージをセッション履歴に追加(2025-11-05修正) |
| RecordQuery | ベクトルメモリに保存 |
| FetchSessionMemory | 関連コンテキストを取得 |
Workflowの監視
Python SDK経由
タスク分解はShannon内部で行われます。イベントストリーミングを使用してWorkflow実行をリアルタイムで観察してください。
Temporal UI経由
http://localhost:8088 にアクセスして以下を確認:- Workflow実行タイムライン
- アクティビティステータス
- 入出力ペイロード
- エラートレース
- リプレイ履歴
決定論的リプレイ
Shannon Workflowは決定論的です - 同じ入力でリプレイすると同じ結果を生成します。 ユースケース:- デバッグ: 失敗したWorkflowをリプレイしてバグを見つける
- テスト: コード変更が既存のWorkflowを壊さないことを検証
- 監査: 正確に何が起こったかを理解
Workflow設定
Workflowの動作は環境変数で設定されます(例):エラーハンドリング
Workflowは自動的に障害を処理します:リトライ
リトライ
アクティビティは指数バックオフで自動的にリトライ:
サーキットブレーカー
サーキットブレーカー
LLMプロバイダーが失敗している場合、サーキットブレーカーが開いてフォールバックにルーティング:
グレースフルデグラデーション
グレースフルデグラデーション
複雑モードが失敗した場合、自動的によりシンプルな実行にフォールバック。
予算超過
予算超過
予算制限に達すると、タスクは即座に停止し、コスト超過を防止。
ベストプラクティス
1. 適切な戦略を選択
タスクに認知戦略を合わせる:| タスクタイプ | 推奨戦略 |
|---|---|
| シンプルQ&A | DIRECT(シングルAgent) |
| リサーチ | REACT(Web検索 + 統合) |
| 分析 | DECOMPOSE(パーツに分解) |
| 設計 | EXPLORATORY(ToT評価) |
2. 適切なモードを使用
- simple: 直接実行、オーバーヘッドなし
- standard: タスク分解、マルチAgent
- complex: 完全な認知パターン(CoT、ToTなど)
3. 進捗を監視
イベントをストリーミングしてWorkflow実行を追跡:4. タイムアウトを設定
環境変数を介してWorkflowが無期限に実行されるのを防ぐ:次のステップ
コスト管理
予算管理を学ぶ
ストリーミング
リアルタイムイベントストリーミング
アーキテクチャ
システムアーキテクチャ概要
Python SDK
SDKを始める