フォーマット
MCAP はすべてのトピックを保持するため、最も完全な全体像が得られます。ROS バッグのインポーターはカメラトピック(
sensor_msgs/Image と sensor_msgs/CompressedImage)を変換し、関節状態やその他の数値・テキストのトピックも保持します。点群などのバイナリペイロードはスキップされます。すべてのトピックを保持する必要がある場合は MCAP を送信してください。
ロールアウトをフリートレコーディングとして送信する
各アップロードは既存のフリートレコーディングに入ります。Avala は、プログラムの開始時に登録済みデバイス用のレコーディングを用意します。それらを一覧してレコーディング UID を確認します。upload_recording は、同じソースの中断されたアップロードを再開します。呼び出しが完了すると、処理がキューに入ったことを意味します。client.fleet.recordings.get(uid).status が ready になるまで確認してください。
失敗と介入をイベントとしてマークする
フリートイベントは、レコーディング内のある瞬間にラベルを付けます。Avala がすばやく見つけられるように、各失敗と各介入をマークしてください。イベントのクラスにはtype を使い、モデルバージョンやタスクなど、お客様のスタックが記録する情報には metadata を使います。
type は error、warning、info、state_change、anomaly、custom のいずれかです。severity は info、warning、error、critical のいずれかです。レコーディングルールでイベントを自動作成することもできます。
ROS バッグと LeRobot データセットをインポートする
ロールアウトがフリートの外にある場合は、データセットとしてインポートします。先にフォーマット用の extra をインストールしてください。評価ログをインポートする
オープンソースの評価ツールである Inspect Robots でポリシーを評価している場合は、その JSON 評価ログをインポートします。各試行(1 つのエポックにおける 1 つのシーン)が、1 つのシーケンスに結果ラベルを付けます。失敗した試行は、絞り込み、レビューし、収集作業に変えられるシーケンスになります。
インポートされたラベルはすべて、
source が imported、evaluation_membership が held_out_eval、autonomy_level が autonomous になります。model_version は実行のポリシーです。実行のタスクは、試行全体にわたる 1 つのサブタスクになります。人またはモデルが書いたラベルは、--overwrite を渡さない限り保持されます。オプションの完全な一覧は CLI リファレンスにあります。
MCP サーバーでレコーディングとイベントを確認する
MCP サーバーはフリートデータを読み取ります。アシスタントに最近の失敗について尋ねるか、ツールを直接呼び出してください:- レコーディングには
fleet_list_recordingsとfleet_get_recording recording、device、type、severityで絞り込んだfleet_list_events- フリート全体の概要には
get_fleet_health
Avala がロールアウトで行うこと
以下のステップは、Avala がプログラムの一部として行うサービスです。これらを呼び出す API はありません。- セグメンテーション。 Avala は各ロールアウトを、状態変化の点でシーケンスとサブタスクに分割します。お客様のイベントが失敗の瞬間の目印になります。
- ラベリング。 各シーケンスに、そのシーケンスメタデータの両方の軸を付けます。技術的妥当性のチェックと結果ラベルです。
- クラスタリング。 Avala は、何がどのような条件でうまくいかなかったかによって失敗をグループ化します。クラスターは、お客様のプログラム用にバージョン管理された失敗タクソノミーに対応付けられます。新しいクラスターはタクソノミーを拡張します。
- ギャップ分析。 Avala は、失敗のクラスターを、既存のトレーニングデータと評価コホートのカバレッジと比較します。
ギャップレポート
Avala は、ロールアウトのバッチごとにギャップレポートを納品します。
お客様はギャップレポートを確認し、優先順位を決めます。承認された実験が次の収集ブリーフになります。