Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

KEA Testing

KEA Testing provides utilities for end-to-end evaluation, anomaly injection, and synthetic image generation. It is designed to help you test failure recovery and collect data for model tuning.

Image generation

The image_gen_node reads kea_testing/params/image_gen.yaml and generates images using Diffusers-based pipelines.

Run as a ROS 2 node:

ros2 launch kea_testing image_gen.launch.py

Or run the script directly:

ros2 run kea_testing image_generation

The config file contains multiple modes (e.g., txt2img_stable_diff, img2img_flux, txt2img_qwen). Set mode under ros__parameters to choose which pipeline is used.

Requirements:

  • GPU recommended.
  • Python dependencies: diffusers, torch, pillow, and optional bitsandbytes for 4-bit models.

Batch testing with multi_launcher

The multi_launcher tool runs multiple planner instances and records outcomes to a JSONL file. Each database entry must include domain and problem (and optionally problem_file and prompt).

Example:

ros2 run kea_testing multi_launcher /path/to/db.jsonl \
  --launch-package kea_moleworks \
  --launch-file kea_moleworks_planner.launch.py \
  --batch-size 3 \
  --timeout 200

The results are written to multi_launcher_results.jsonl (or the --output path) along with per-run logs.