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 optionalbitsandbytesfor 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.