Mind Lab Toolkit (MinT)

OpenPI VLA SDK

这一页对应 mint-quickstart 里的 demos/embodied/openpi_vla_sdk.py

这个示例做什么

  • 用顶层 mint 提供 Tinker-compatible client surface。
  • import mint.mint as mintx 提供 MinT-only 的 OpenPI / VLA extension surface。
  • 跑一轮最小 SDK 形态的 VLA 训练闭环:创建 OpenPI training client -> train_step -> save_weights_for_sampler
  • 明确把 OpenPI-specific API 留在 mintx,不让它悄悄上浮到顶层 mint

Namespace 形状

import mint
import mint.mint as mintx

service_client = mint.ServiceClient()
training_client = mintx.create_openpi_training_client(service_client)

这里用 mintxmint.mint)来承载 MinT-only 的 OpenPI helper。

核心数据形状

model_input.chunks
  1. image: base_0_rgb
  2. image: left_wrist_0_rgb
  3. image: right_wrist_0_rgb
  4. encoded_text: prefix_tokens

loss_fn_inputs
  - state
  - target_tokens
  - weights
  - token_ar_mask
  - optional: logprobs + advantages

SDK helper mintx.build_openpi_fast_datum(...) 会帮你构造这个 Datum shape。

运行方式

pip install git+https://github.com/MindLab-Research/mindlab-toolkit.git python-dotenv
export MINT_API_KEY=sk-...
python demos/embodied/openpi_vla_sdk.py

按所在区域选择 MinT 域名:

  • 境内:https://mint-cn.macaron.xin/
  • 境外:https://mint.macaron.xin/

参数(环境变量)

  • MINT_API_KEY / TINKER_API_KEY:鉴权
  • MINT_BASE_URL / TINKER_BASE_URL:服务地址
  • MINT_OPENPI_SDK_BASE_MODEL:默认 openpi/pi0-fast-libero-low-mem-finetune
  • MINT_OPENPI_SDK_LORA_RANK:默认 16
  • MINT_OPENPI_SDK_LR:默认 0.003
  • MINT_OPENPI_SDK_SAMPLER_NAME:默认 mint-openpi-sdk-example
  • MINT_OPENPI_SDK_CREATE_TIMEOUT_SECONDS:默认 1200
  • MINT_OPENPI_SDK_STEP_TIMEOUT_SECONDS:默认 1200
  • MINT_OPENPI_SDK_SAVE_TIMEOUT_SECONDS:默认 1200
  • MINT_OPENPI_SDK_TTL_SECONDS:默认 3600

主流程

def run_example():
    service_client = mint.ServiceClient()
    training_client = mintx.create_openpi_training_client(service_client, ...)

    info = training_client.get_info()
    step_result = training_client.train_step(
        build_demo_batch(),
        "cross_entropy",
        adam_params=mint.types.AdamParams(learning_rate=0.003),
    ).result(...)

    sampler = training_client.save_weights_for_sampler(
        "mint-openpi-sdk-example",
        ttl_seconds=3600,
    ).result(...)

期望输出形状

脚本最后会打印一个 Python dict,包含这些 key:

model_id
model_name
lora_rank
train_step_metrics
sampler_path

重要说明

  • 这是现在 MinT SDK 路径里推荐的 OpenPI / VLA 用法。
  • 这个 helper 需要走 mintxmint.mint),而不是默认顶层 mint
  • 当前 helper 先固定在 openpi/pi0-fast-libero-low-mem-finetune + LoRA rank 16 这个组合上。

相关页面

本页目录