Waza 調査レポート

開発元: Microsoft
カテゴリ: 🏗️ エージェント開発プラットフォーム

AIエージェントスキルの評価スイートの構築、ベンチマークの実行、結果の比較を行うGo製CLIツール

総合評価
80点
基準点70点からの評価
オープンソース
OSS
無料プラン
あり
最低価格
無料
対象ユーザー
AIエージェント開発者AIエンジニア
更新頻度
高
🆕 最新情報: 2026年10月にv0.38.10がリリースされ、MCPサーバーモック等の新機能が追加

📋 評価の詳細

👍 加点項目

  • +5 Agent Skillsと互換性のある標準的な評価環境を提供
  • +5 Go製でバイナリ提供されているため導入が容易で高速
総評: AIエージェント開発におけるテスト・評価基盤として非常に強力なオープンソースツール

Waza 調査レポート

1. 基本情報

  • ツール名: Waza
  • ツールの読み方: ワザ
  • 開発元: Microsoft
  • 公式サイト: https://microsoft.github.io/waza/
  • 関連リンク:
  • カテゴリ: AIエージェント基盤
  • 概要: WazaはAIエージェントスキルを評価するためのGo製CLIフレームワークです。評価スイートのスキャフォールディング、ベンチマークの実行、モデル間での結果比較機能を提供します。

2. 目的と主な利用シーン

  • 解決する課題: AIエージェントのスキル(機能)が期待通りに動作するかを客観的・定量的に評価、比較する仕組みが不足していること。
  • 想定利用者: AIエージェント開発者、AIエンジニア、AIシステムの品質保証チーム
  • 利用シーン:
    • 新しいAIエージェントスキルを開発する際のテストスイート構築
    • 異なるAIモデル(Claude, GPT-4など)間でのエージェントスキルの実行結果・精度比較
    • CI/CDパイプラインへの組み込みによるエージェントの自動テスト

3. 主要機能

  • 評価スイートの構築 (Scaffold eval suites): 既存の SKILL.md から評価スイート(eval.yaml とタスク)の雛形を自動生成します。
  • ベンチマーク実行: eval.yaml で定義されたテストケースを実行し、LLMモデルやエージェントの動作を評価します。
  • 結果の比較 (Compare results): 複数の評価結果(JSON)を比較し、タスクごとのスコア差分や合格率の変化を確認できます。
  • 多様なグレーダー (評価器): コード、テキスト、ファイル、差分、振る舞い(ツール呼び出し回数等)、プロンプト(LLM-as-judge)など、目的に合わせた多様な評価基準を利用できます。
  • カバレッジの算出: スキルに対する評価の網羅率(カバレッジ)を計算し、グリッド表示します。
  • MCPサーバーモック: 外部サービスを模倣するMCPサーバーモック機能により、ネットワークや認証不要で安全かつ一貫性のあるツール呼び出しの評価が可能です。
  • 敵対的テスト (Adversarial harness): プロンプトインジェクションやスコープバイパスに対するエージェントの耐性をオフラインでテストする組み込みパックを提供します。
  • スナップショットとリプレイ機能: タスク実行の自己完結型スナップショットを保存し、後でリプレイすることで、一貫性の検証や問題の特定が可能です。
  • リモートグレーダー参照とレジストリ機能: GitHub上のリモートグレーダーモジュールをロックファイルでピン留めして安全に利用でき、waza registry search により共有グレーダーを検索・追加できます。
  • OpenTelemetryトレースエクスポート: OTLP形式でのトレースエクスポートをサポートし、LLMの呼び出しや評価プロセス全体の詳細な分析や監視が可能です。

4. 動作原理・システム構成

  • アーキテクチャ: WazaはGo言語で記述されたシングルバイナリのCLIツールであり、ローカル環境またはCI/CD環境で自律的に動作します。
  • 主要コンポーネントとデータフロー:
    • テスト仕様解析: YAMLファイル (eval.yaml) で定義された評価仕様と、関連するタスク定義 (tasks/*.yaml)、フィクスチャを解析します。
    • 実行エンジン (AgentEngine): Copilot SDKまたはモック環境を通じてAIモデル(エージェント)の推論を実行します。
    • グレーダー(評価器)群: コード実行、正規表現、JSON Schema、LLM-as-judge等の多様なプラグインを使用して、推論結果をスコアリングします。
    • 結果出力・レポーティング: 評価結果をJSON形式でローカルまたはAzure Blob Storage等に出力し、waza serve によってダッシュボードで可視化します。
  • 構成図:
flowchart TD
    subgraph 入力
        A[eval.yaml / tasks] -->|ロード| B(Waza CLI)
        C[SKILL.md / .agent.md] -->|コンテキスト| B
    end

    subgraph 実行エンジン
        B -->|プロンプト & ツール定義| D{Copilot SDK / 外部API}
        D -->|レスポンス / ツール呼び出し| B
    end

    subgraph 評価とレポート
        B -->|グレーダー検証| E[結果 JSON]
        E -->|表示| F(ダッシュボード / CLI出力)
        E -->|アップロード| G[(Azure Blob Storage等)]
    end

5. 開始手順・セットアップ

  • 前提条件:
    • Go 1.26+ (ソースからビルドする場合)
  • インストール/導入:

    curl -fsSL https://raw.githubusercontent.com/microsoft/waza/main/install.sh | bash
    

    ※ Azure Developer CLI (azd) の拡張機能としてもインストール可能です。

  • 初期設定: プロジェクトの初期化を行います。

    waza init my-project
    cd my-project
    
  • クイックスタート:

    # 新しいスキルの作成
    waza new skill my-skill
    
    # スキルの評価の実行
    waza run my-skill
    

6. 特徴・強み (Pros)

  • CLIツールとして単一バイナリで配布されるため、環境構築が非常に簡単です。
  • Agent Skills の標準仕様 (SKILL.md) に深く統合されており、フロントマターの解析やコンプライアンスチェック機能が含まれています。
  • 評価結果のキャッシュ機能があり、反復的なテスト実行を高速化できます。
  • CI/CDへの統合を前提に設計されており、GitHub Actionsなどの再利用可能なワークフローが存在します。

7. 弱み・注意点 (Cons)

  • 日本語の公式ドキュメントが存在せず、英語での利用が基本となります。
  • コマンドラインツールであるため、GUIベースのテスト管理ツールに慣れたユーザーには学習コストがかかる可能性があります。

8. 料金プラン

プラン名 料金 主な特徴
オープンソース 無料 すべての機能を無料で利用可能。MITライセンス。
  • 課金体系: 該当なし
  • 無料トライアル: 該当なし

9. 導入実績・事例

  • 導入企業: Microsoft、オープンソースコミュニティでの採用が進んでいます。
  • 導入事例: エージェントのスキル評価、AIモデルの性能比較ベンチマークなどに使用されています。
  • 対象業界: AI開発、ソフトウェア開発全般

10. サポート体制

  • ドキュメント: GitHubリポジトリ内に詳細なガイドやチュートリアルが用意されています。
  • コミュニティ: GitHub IssuesやDiscussionsを通じたオープンソースコミュニティでのやり取りが活発です。
  • 公式サポート: オープンソースのため、商用の公式サポート窓口はありません。

11. エコシステムと連携

11.1 API・外部サービス連携

  • API: 外部から利用できるCLIインターフェースを提供。JSON-RPC 2.0サーバーとしての動作もサポート。
  • 外部サービス連携: Azure Blob Storageへの結果の自動アップロード機能(共有・比較用)、Copilot SDK連携。

11.2 技術スタックとの相性

技術スタック 相性 メリット・推奨理由 懸念点・注意点
Go ◎ ツール自体がGo製であり、バイナリ配布が容易 特になし
GitHub Actions ◎ サンプルワークフローが提供されており、CI/CDに直接組み込める 実行環境(Azure連携等)のシークレット管理が必要
Azure Storage ◎ 結果の自動アップロードに標準対応 Azureアカウントが必要

12. セキュリティとコンプライアンス

  • 認証: クラウドストレージ(Azure)への連携には、DefaultAzureCredential (az login, 環境変数など) を利用します。
  • データ管理: ローカル環境または指定したクラウドストレージ(Azure Blob)にJSON形式で結果を保存します。
  • 準拠規格: MITライセンスで提供されています。

13. 操作性 (UI/UX) と学習コスト

  • UI/UX: CLIツールとして洗練されたコマンド体系(waza init, waza new, waza run, waza checkなど)を持っており、直感的に操作可能です。ダッシュボード(waza serve)による結果の可視化も可能です。
  • 学習コスト: Agent Skillsの概念や YAML ベースの eval.yaml の書き方を学ぶ必要がありますが、テンプレート自動生成(waza new eval)により初学者でも導入しやすい設計です。

14. ベストプラクティス

  • 効果的な活用法 (Modern Practices):
    • GitHub ActionsでPull Requestごとに waza run を実行し、エージェントスキルの退行(リグレッション)を自動検知する運用。
    • waza suggest コマンドでLLMを用いて評価アーティファクトの提案を受ける。
    • LLM-as-judge (prompt grader) と deterministic graders (code, regex) を組み合わせて評価の信頼性を高める。
  • 陥りやすい罠 (Antipatterns):
    • 一貫性のないプロンプトや非決定的な動作に依存する評価項目を作成し、キャッシュの恩恵を受けられなくなること。
    • スキル定義(SKILL.md)のトークン制約を無視して巨大なコンテキストを構築すること(waza tokens コマンドによる定期チェックを怠る)。

15. ユーザーの声(レビュー分析)

  • 調査対象: GitHub リポジトリ
  • 総合評価: Star数が127、Fork数が19(2026年5月時点)であり、開発者コミュニティからの注目を集めつつあります。
  • ポジティブな評価:
    • Agent Skillsの概念を具体的にテスト・改善するための実践的なツールキットとして評価されています。
    • CI/CDへの統合のしやすさが好評です。
  • ネガティブな評価 / 改善要望:
    • ツールが多機能であり、ドキュメントの全体像を把握するのに時間がかかるという声があります。
  • 特徴的なユースケース:
    • Azure Developer CLI (azd) 拡張としての統合。

16. 直近半年のアップデート情報

  • 2026-10-09: v0.38.10のリリース。Go実装のWaza CLIの更新および各種バグ修正。
  • 2026-08-14: v0.38.6のリリース。リモートグレーダーへの参照機能(graders[].ref)と、共有グレーダーを検索・追加できるレジストリCLI機能(waza registry search / add)の追加。
  • 2026-06-30: v0.38.0のリリース。MCPサーバーモック、OpenTelemetryトレースエクスポート、敵対的テストハーネス(Adversarial harness)、スナップショットとリプレイ機能などの多数の新機能が追加。
  • 2026-04-28: v0.31.0のリリース。
  • 2026-04-XX: ダッシュボードサーバー(waza serve)の機能強化やHTTP/JSON-RPCの両対応。
  • 2026-03-XX: LLM-as-judge によるスキルの品質評価機能(waza quality)の追加。
  • 2026-02-XX: Azure Blob Storageへの自動アップロード・比較機能の統合。

(出典: GitHub Releases など)

17. 類似ツールとの比較

17.1 機能比較表 (星取表)

機能カテゴリ 機能項目 本ツール Agent Skills LangChain
基本機能 スキル定義フォーマット ◯
Agent Skillsに準拠
◎
仕様そのもの
◯
ツール/エージェント定義機能あり
基本機能 評価・ベンチマーク ◎
テスト・評価機能に特化(MCPモックや敵対的テスト等)
×
評価機能は含まない
◯
LangSmith等で対応可
非機能要件 CI/CD 統合 ◎
専用コマンドやワークフロー完備
×
該当なし
◯
エコシステム内で統合可能
非機能要件 日本語対応 △
UI等は英語
△
ドキュメントは英語中心
◯
コミュニティの日本語情報が豊富

17.2 詳細比較

ツール名 特徴 強み 弱み 選択肢となるケース
本ツール (Waza) スキル評価用CLI LLM-as-judgeから静的解析まで幅広い評価が可能。単一バイナリで導入が容易。 評価特化であり、LLM自体のオーケストレーション機能は持たない。 Agent Skillsなどで定義したエージェントの振る舞いを自動テスト・比較したい場合。
Agent Skills スキル定義フォーマット エージェントにコンテキストを渡すための汎用フォーマット。 実行エンジンや評価機能は持たない仕様。 エージェントのタスク定義をオープンに共有・管理したい場合。
LangChain (LangSmith) エージェント構築・トレース基盤 幅広い統合と詳細なトレース・評価プラットフォーム。 学習コストが高く、独自の抽象化レイヤーが多い。 全体的なエージェント構築から評価までを包括的に管理したい場合。

18. 総評

  • 総合的な評価: Wazaは、AIエージェントのスキル評価をシステム化し、再現可能なベンチマークを提供する強力なツールです。Agent Skills規格との親和性が高く、エージェント開発の品質保証プロセスに欠かせないテストフレームワークと言えます。
  • 推奨されるチームやプロジェクト:
    • Agent Skillsを用いてエージェントを開発しているチーム。
    • 複数のLLMモデルでエージェントの動作を定期的にベンチマークしたい組織。
    • CI/CDパイプラインでエージェント機能の退行テストを自動化したいプロジェクト。
  • 選択時のポイント:
    • AIエージェントの振る舞いや生成結果の評価を自動化・可視化する必要がある際に、LangSmithなどの重厚なSaaSよりも軽量なCLIツールを好む場合に最適な選択肢となります。