G05_ActionCodec2-1st_LIBERO

G0.5 fine-tuned on LIBERO with the ActionCodec2-1st action tokenizer.

This policy uses paper-o1-5mm-4k-2bin-1p2ms, the 5 mm Paper-edition tokenizer used in the ActionCodec2 paper, with a 4,096-token budget per profile. The separate Extended edition was retrained after additional cleaning and filtering of the pretraining data and offers more precision and vocabulary options. Keep this policy's bundled vocabulary: token IDs are tied to its trained weights.

The checkpoint includes its action tokenizer, fitted assets, and text tokenizer. After downloading the complete repository, inference works offline without the G0.5 base checkpoint or another tokenizer repository.

Installation

Use Python 3.12 or later, a C++17 compiler, and a CUDA-capable GPU for the example below. Inference has been checked with Python 3.12, PyTorch 2.7.1, and Transformers 5.14.1.

export HF_ENDPOINT=https://hf-mirror.com
pip install "actioncodec2[cuda] @ https://hf-mirror.com/ZibinDong/ActionCodec2/resolve/v0.1.0/actioncodec2-0.1.0.tar.gz"

The source archive also contains training recipes, evaluation clients, and their documentation. The cuda extra adds Liger and Flash Linear Attention.

Inference

This example checks loading and the prediction interface with synthetic inputs. For evaluation or robot control, provide current camera images, a task instruction, and the required observed state and previous action.

import numpy as np
from actioncodec2.vla.runtime import load_policy

policy, policy_config = load_policy(
    "ZibinDong/G05_ActionCodec2-1st_LIBERO", revision="v0.1.0",
    device="cuda", trust_remote_code=True,
)
# Synthetic inputs for checking the interface; replace with current observations.
height, width = policy_config["model"]["image_size"]
frames = [np.zeros((height, width, 3), dtype=np.uint8)
          for _ in policy_config["action"]["video_keys"]]
task = "pick up the object"
state = np.zeros(8, dtype=np.float32)
actions, tokens = policy.predict(frames, task, state=state)
print(actions.shape)

A downloaded directory can be passed to load_policy directly. Use revision="<commit>" to pin an exact Hub snapshot.

Input and action conventions

Supply a list of RGB uint8 H×W×3 images, one per camera in the order below. The processor resizes them to the configured image size.

Setting Value
Cameras, in order observation.images.image, observation.images.wrist_image
Model image size 256 × 256
Returned action shape (20, 7)
Control frequency 20 Hz
Action space delta_eef
Rotation representation rotation_vector
Execute before replanning 20 actions
Observed state 8 raw values

Pass all 8 raw values as state; the processor selects and normalizes them. The order is end-effector position (3), orientation as a rotation vector (3), and both gripper finger positions (2).

Use the checkpoint's policy_config.json for action scaling, gripper settings, and the complete inference contract. The evaluation clients in the source archive perform the benchmark-specific action conversion.

License

Modified G0.5 weights under the G0.5 Community License (non-commercial; no commercial deployment rights). See NOTICE. Bundled ActionCodec2 assets use Apache-2.0. The Qwen3.5 text tokenizer is covered by LICENSE_QWEN3_5.txt.

Downloads last month
42
Safetensors
Model size
2B params
Tensor type
F32
·
Video Preview
loading

Model tree for ZibinDong/G05_ActionCodec2-1st_LIBERO

Base model

OpenGalaxea/G05
Finetuned
(11)
this model

Collection including ZibinDong/G05_ActionCodec2-1st_LIBERO