docs/concepts/ai models

AI Models

Understand how Artemis trains, versions, and manages AI models — from raw data to a deployed ROS 2 node.


Overview

A Artemis model is a trained neural network packaged as a ROS 2-compatible inference node. Artemis handles architecture selection, training, packaging, and deployment — you only need to supply labelled data and describe the task.

Every model belongs to a specific robot type and task. Models are immutable once training completes — to improve a model, you create a new training run and promote the result as the active version.

Supported Task Types

manipulation

Pick-and-place, grasping, joint control from visual or proprioceptive input.

navigation

Obstacle avoidance, path following, and localisation for mobile robots.

object_detection

Detect and classify objects in camera feeds in real time.

anomaly_detection

Flag unexpected robot behaviour or environmental changes.

classification

Classify sensor readings into discrete categories.

regression

Predict continuous control signals from sensor state.

Architecture Selection

Artemis automatically selects the best neural network architecture for your task and dataset size using an internal benchmarking pipeline. For most use cases, the default auto setting produces optimal results.

Pro and Business plans can manually specify an architecture:

bash
kairo train start \
  --dataset ds_xyz123 \
  --robot rob_a1b2c3d4 \
  --task manipulation \
  --architecture transformer_v2   # or: cnn_light, lstm_ctrl, auto
Custom architectures (Business plan) let you supply a PyTorch model definition. Artemis wraps it in the standard deployment package and handles the ROS 2 node boilerplate.

Model Versioning

Every training run produces a new model version. Versions are numbered sequentially (v1, v2, …) and are permanently stored. Only one version is active on a given robot at a time — the active version is what receives live inference requests.

List versions and promote one to active:

bash
kairo model versions --model mdl_abc123

# v1  trained 2026-01-10  accuracy: 87.2%  status: archived
# v2  trained 2026-02-01  accuracy: 91.5%  status: active
# v3  trained 2026-03-20  accuracy: 94.3%  status: staging

# Promote v3 to active
kairo model promote --model mdl_abc123 --version v3

Model Lifecycle

training

The model is actively being trained on GPU infrastructure.

staging

Training is complete. The model is ready for simulation testing before promotion.

active

The model is deployed and serving live inference requests on at least one robot.

archived

A previous version that was superseded. Still available for rollback.

failed

Training failed. View the run log for the error details.

Exporting Models

Export a trained model as a standalone ROS 2 package for air-gapped or self-managed deployments:

bash
kairo model export --model mdl_abc123 --version v2 --format ros2-pkg

# Output: kairo_model_v2.tar.gz
# Contains:
#   - ROS 2 package (Python node + launch file)
#   - model weights (.onnx)
#   - package.xml + CMakeLists.txt
ONNX format is also available for integration with non-ROS systems: --format onnx