iterate について
エージェントのワークフローに評価と修正のループを加えるスキルです。品質基準、評価方法の選択、回帰テスト、継続的な出力監視を扱います。
主な機能
- 01重み付きの品質基準と閾値を定義
- 02ルール、モデル、人間による評価を選択
- 03評価フィードバックを使って出力を再生成
- 04ゴールデンテストセットで変更を比較
- 05品質スコアを継続的に監視
活用シーン
- 01フィードバックに基づく再試行で生成結果を改善
- 02プロンプトやツールの変更による回帰を確認
- 03本番環境の出力品質を追跡
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ sharpdeveye/ maestro --skill iterateインストール後、Claude Code で/iterateを入力して読み込まれたか確認します。
詳細
必須の準備
/agent-workflow を呼び出します。ワークフローの原則、アンチパターン、コンテキスト収集プロトコルが含まれています。先に進む前にプロトコルに従ってください。まだワークフローのコンテキストが存在しない場合は、必ず最初に /teach-maestro を実行してください。
評価パターンと自己修正の戦略については、agent-workflow スキルのフィードバックループのリファレンスを参照してください。
ワークフローが自己修正し、継続的に改善されるよう、フィードバックループを設定します。反復によって、一度きりの賭けを収束性の高い信頼できるシステムへと変えられます。
フィードバックループの設計
ステップ 1:品質基準を定義する
「良い出力」とはどのようなものでしょうか。評価する項目は次のとおりです。
| 項目 | 重み | しきい値 | 測定方法 |
|---|---|---|---|
| 正確性 | 0.4 | ≥ 0.8 | 事実の正確性チェック |
| 完全性 | 0.3 | ≥ 0.7 | 必須フィールドの有無 |
| 形式 | 0.2 | ≥ 0.9 | スキーマへの準拠 |
| トーン | 0.1 | ≥ 0.6 | 対象読者に適切か |
ステップ 2:評価者の種類を選択する
要件に合った評価者を選択します。
- ルールベース:スキーマ検証、フィールドの有無、値の範囲(高速、無料)
- 自己評価:同じモデルが自身の出力を評価する(高速、低コスト、信頼性は低め)
- クロスモデル:別のモデルが評価する(低速、信頼性は高め)
- 人間参加型:人間によるレビュー(最も低速で最も信頼性が高いものの、拡張性はありません)
- ハイブリッド:まずルールで確認し、ルールでは検出できない点をモデルでチェックする
ステップ 3:修正ループを設計する
generate(input) → evaluate(output) → score
if score ≥ threshold → return output
if score < threshold AND attempts < max →
enrich input with evaluator feedback
generate again (with feedback)
if attempts ≥ max → fallback or escalate
重要:再試行の入力は、元の入力と必ず異なるものにしてください。以下を含めます。
- 評価者からの具体的なフィードバック
- 何が、なぜ問題だったのか
- 修正方法の提案
ステップ 4:リグレッション検出を設定する
プロンプト、モデル、ツールを変更する場合:
- 旧設定でゴールデンテストセットを実行 → ベースラインスコアを取得
- 新設定でゴールデンテストセットを実行 → 新しいスコアを取得
- 比較:5% 以上改善した場合は採用、5% 以上悪化した場合は却下
ステップ 5:継続的に監視する
本番ワークフローでは:
- 出力の 1~5% をサンプリングして自動評価する
- 品質スコアを継続的に追跡する
- 下降傾向が見られたらアラートを出す
- 変更を全面展開する前に A/B テストを行う
反復チェックリスト
- 重みとしきい値を含む品質基準を定義した
- 評価者を選択して設定した
- 修正ループに最大試行回数を設定した
- 再試行にフィードバックを注入する(同じ入力で再試行しない)
- 10 件以上のケースを含むゴールデンテストセットがある
- 変更に対するリグレッション検出を設定した
- 本番環境の監視体制を整えた
次のステップの推奨
フィードバックループの設定後、/evaluate を実行して実際のシナリオでループを検証し、その後 /refine で最終的な仕上げを行います。
絶対にしないでください:
- まったく同じ入力で再試行する(狂気の定義です)
- 生成と評価の両方に同じ弱いモデルを使う
- 最大試行回数の上限を設定しない(無限ループは現実に起こります)
- ゴールデンテストセットでリグレッションテストを行わずに変更をデプロイする
- エラーだけを監視する — 品質スコアも継続的に追跡する
コメント
Markdown 対応