# Train a policy Train an ACT policy from the dataset without connecting to the robot. Execution context: Training computer. > Verification pending: existing website examples have not completed a pinned-source or physical-hardware walkthrough. Confirm software version, hardware revision, and actual stopping procedure. Do not assume emergency-stop or release-to-stop behavior. Explicit human approval and supervision are required before physical movement. ## Choose a device - Use cuda for a supported NVIDIA GPU. - Use mps for Apple silicon. - Use cpu for a CPU-only run. - Lower batch_size if the device runs out of memory. ## Train an ACT policy Run training on the controller or another computer that can access the dataset. sourccey-host is not required. ```shell uv run lerobot-train \ --dataset.repo_id=vulcan-studio/sourccey-demo-1 \ --policy.type=act \ --policy.device=cuda \ --output_dir=outputs/train/act-sourccey-demo-1 \ --job_name=act-sourccey-demo-1 \ --batch_size=8 \ --steps=20000 \ --save_freq=5000 \ --wandb.enable=false \ --policy.push_to_hub=false ``` ## Train X-VLA on a stronger GPU If you have a stronger NVIDIA GPU with sufficient VRAM, we recommend fine-tuning the 0.9B-parameter X-VLA base model as the higher-capacity option. Install the X-VLA dependencies first: ```shell uv sync --locked --extra sourccey-desktop --extra training --extra xvla ``` ```shell uv run lerobot-train \ --dataset.repo_id=vulcan-studio/sourccey-demo-1 \ --output_dir=outputs/train/xvla-sourccey-demo-1 \ --job_name=xvla-sourccey-demo-1 \ --policy.path=lerobot/xvla-base \ --policy.dtype=bfloat16 \ --policy.action_mode=auto \ --policy.device=cuda \ --policy.freeze_vision_encoder=false \ --policy.freeze_language_encoder=false \ --policy.train_policy_transformer=true \ --policy.train_soft_prompts=true \ --steps=20000 \ --policy.push_to_hub=false ``` X-VLA starts from the pretrained lerobot/xvla-base checkpoint and uses bfloat16 to reduce memory use. If training runs out of memory, reduce the batch size before changing the model configuration. ## Check the output Training should complete without dataset feature or video-decoding errors. The ACT example creates this model directory: ```shell outputs/train/act-sourccey-demo-1/checkpoints/last/pretrained_model ``` Website: https://vulcanrobotics.ai/docs/lerobot/train Upstream reference (unpinned): https://github.com/vulcan-forge/lerobot-vulcan/blob/main/docs/sourccey/05-train.md