Skip to content

Commit 8829377

Browse files
committed
rename vlacpp to robotcpp
1 parent b61db96 commit 8829377

30 files changed

Lines changed: 255 additions & 255 deletions

‎AGENTS.md‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,11 @@ live in `tools`, and third-party dependencies belong under `third_party`.
1818
Configure and build the active targets:
1919

2020
```sh
21-
cmake -S . -B build -DVLACPP_BUILD_ROBOT_SERVER=ON
21+
cmake -S . -B build -DROBOT_CPP_BUILD_ROBOT_SERVER=ON
2222
cmake --build build --target model-cli model-server
2323
```
2424

25-
`VLACPP_BUILD_ROBOT_SERVER` is the only project-level build option. Do not add
25+
`ROBOT_CPP_BUILD_ROBOT_SERVER` is the only project-level build option. Do not add
2626
CTest or old C ABI targets back unless the architecture is explicitly changed.
2727

2828
## Coding Style & Naming Conventions
@@ -35,7 +35,7 @@ variables. Keep comments sparse and focused on non-obvious behavior.
3535

3636
## Architecture Notes
3737

38-
Do not route `model-cli` or `model-server` through a generic public `vlacpp_*`
38+
Do not route `model-cli` or `model-server` through a generic public `robotcpp_*`
3939
C ABI. pi0 should load split GGUF components through `pi0_engine`, and
4040
SmolVLA should continue to use `smolvla_engine`. Preserve clean boundaries for
4141
raw observation input, preprocessing, backbone/prefix work, action head,

‎CMakeLists.txt‎

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
cmake_minimum_required(VERSION 3.16)
2-
project(vlacpp VERSION 0.1.0 LANGUAGES C CXX)
2+
project(robotcpp VERSION 0.1.0 LANGUAGES C CXX)
33

4-
option(BUILD_ROBOT_SERVER "Build model-cli, model-server, and robot client targets" ON)
4+
option(ROBOT_CPP_BUILD_ROBOT_SERVER "Build model-cli, model-server, and robot client targets" ON)
55

66
set(CMAKE_CXX_STANDARD 17)
77
set(CMAKE_CXX_STANDARD_REQUIRED ON)
@@ -19,7 +19,7 @@ if(NOT TARGET ggml OR NOT TARGET llama)
1919
message(FATAL_ERROR "llama.cpp must provide ggml and llama targets")
2020
endif()
2121

22-
set(VLACPP_LLAMA_INCLUDE_DIRS
22+
set(ROBOTCPP_LLAMA_INCLUDE_DIRS
2323
${CMAKE_CURRENT_SOURCE_DIR}/third_party/llama.cpp
2424
${CMAKE_CURRENT_SOURCE_DIR}/third_party/llama.cpp/include
2525
${CMAKE_CURRENT_SOURCE_DIR}/third_party/llama.cpp/src
@@ -49,7 +49,7 @@ target_include_directories(smolvla_runtime
4949
PUBLIC
5050
${CMAKE_CURRENT_SOURCE_DIR}/src
5151
${SMOLVLA_DIR}
52-
${VLACPP_LLAMA_INCLUDE_DIRS}
52+
${ROBOTCPP_LLAMA_INCLUDE_DIRS}
5353
)
5454
target_link_libraries(smolvla_runtime PUBLIC ggml llama)
5555
target_compile_features(smolvla_runtime PUBLIC cxx_std_17)
@@ -83,7 +83,7 @@ add_library(pi0_engine STATIC
8383
target_include_directories(pi0_engine
8484
PUBLIC
8585
${CMAKE_CURRENT_SOURCE_DIR}/src
86-
${VLACPP_LLAMA_INCLUDE_DIRS}
86+
${ROBOTCPP_LLAMA_INCLUDE_DIRS}
8787
)
8888
target_link_libraries(pi0_engine PUBLIC ggml llama)
8989
target_compile_features(pi0_engine PUBLIC cxx_std_17)
@@ -107,7 +107,7 @@ target_include_directories(robotcpp
107107
target_link_libraries(robotcpp PUBLIC smolvla_runtime pi0_engine)
108108
target_compile_features(robotcpp PUBLIC cxx_std_17)
109109

110-
if(BUILD_ROBOT_SERVER)
110+
if(ROBOT_CPP_BUILD_ROBOT_SERVER)
111111
add_library(robot_server_common STATIC
112112
${ROBOT_SERVER_DIR}/protocol.cpp
113113
${ROBOT_SERVER_DIR}/protocol.h
@@ -149,7 +149,7 @@ if(BUILD_ROBOT_SERVER)
149149
set_target_properties(model-cli PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
150150
target_include_directories(model-cli PRIVATE
151151
${CMAKE_CURRENT_SOURCE_DIR}/src
152-
${VLACPP_LLAMA_INCLUDE_DIRS}
152+
${ROBOTCPP_LLAMA_INCLUDE_DIRS}
153153
)
154154
target_link_libraries(model-cli PRIVATE robotcpp)
155155
target_compile_features(model-cli PRIVATE cxx_std_17)

‎README.md‎

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# vla.cpp
1+
# robot.cpp
22

3-
`vla.cpp` currently builds a robot model frontend around two engine-style
3+
`robot.cpp` currently builds a robot model frontend around two engine-style
44
runtimes:
55

66
- `src/models/smolvla`: SmolVLA runtime with `smolvla_engine.h`.
@@ -18,12 +18,12 @@ out of git under `build*/`, `ckpts/`, `artifacts/`, and `data/`.
1818

1919
```sh
2020
git submodule update --init --recursive
21-
cmake -S . -B build -DVLACPP_BUILD_ROBOT_SERVER=ON
21+
cmake -S . -B build -DROBOT_CPP_BUILD_ROBOT_SERVER=ON
2222
cmake --build build --target model-cli model-server
2323
```
2424

25-
`VLACPP_BUILD_ROBOT_SERVER` is the only project-level build option. The build no
26-
longer registers CTest targets or the old `vlacpp` shared C ABI.
25+
`ROBOT_CPP_BUILD_ROBOT_SERVER` is the only project-level build option. The build
26+
no longer registers CTest targets or the old public shared C ABI.
2727

2828
## Checks
2929

@@ -62,8 +62,8 @@ launchers when switching models.
6262
Converted pi0 checkpoints are expected as split GGUF components:
6363

6464
```sh
65-
GGUF_DIR=ckpts/pi0-libero-finetuned-v044/vlacpp-split
66-
MODEL=vlacpp-pi0-libero-finetuned-v044
65+
GGUF_DIR=ckpts/pi0-libero-finetuned-v044/robotcpp-split
66+
MODEL=robotcpp-pi0-libero-finetuned-v044
6767

6868
./build/bin/model-server \
6969
--model-type pi0 \
@@ -86,8 +86,8 @@ server predictions share one runtime path. For pi0, pass image names that match
8686
the checkpoint metadata. The LIBERO v044 checkpoint expects two image views:
8787

8888
```sh
89-
GGUF_DIR=ckpts/pi0-libero-finetuned-v044/vlacpp-split
90-
MODEL=vlacpp-pi0-libero-finetuned-v044
89+
GGUF_DIR=ckpts/pi0-libero-finetuned-v044/robotcpp-split
90+
MODEL=robotcpp-pi0-libero-finetuned-v044
9191
IMAGE0=agentview.png
9292
IMAGE1=eye_in_hand.png
9393

‎docs/models/pi0.md‎

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ The LeRobot reference checkpoint is available on Hugging Face as
1111
converted components in one directory, for example:
1212

1313
```sh
14-
ckpts/pi0-libero-finetuned-v044/vlacpp-split
14+
ckpts/pi0-libero-finetuned-v044/robotcpp-split
1515
```
1616

1717
The converted split GGUF files are available on Hugging Face as
@@ -20,34 +20,34 @@ The converted split GGUF files are available on Hugging Face as
2020
```sh
2121
hf download JJJYmmm/robotcpp-pi0-libero-finetuned-v044 \
2222
--include "*.gguf" \
23-
--local-dir ckpts/pi0-libero-finetuned-v044/vlacpp-split
23+
--local-dir ckpts/pi0-libero-finetuned-v044/robotcpp-split
2424
```
2525

2626
Expected files:
2727

2828
```text
29-
vlacpp-pi0-libero-finetuned-v044.vit.gguf
30-
vlacpp-pi0-libero-finetuned-v044.mmproj.gguf
31-
vlacpp-pi0-libero-finetuned-v044.llm.gguf
32-
vlacpp-pi0-libero-finetuned-v044.tokenizer.gguf
33-
vlacpp-pi0-libero-finetuned-v044.state.gguf
34-
vlacpp-pi0-libero-finetuned-v044.action_decoder.gguf
29+
robotcpp-pi0-libero-finetuned-v044.vit.gguf
30+
robotcpp-pi0-libero-finetuned-v044.mmproj.gguf
31+
robotcpp-pi0-libero-finetuned-v044.llm.gguf
32+
robotcpp-pi0-libero-finetuned-v044.tokenizer.gguf
33+
robotcpp-pi0-libero-finetuned-v044.state.gguf
34+
robotcpp-pi0-libero-finetuned-v044.action_decoder.gguf
3535
```
3636

3737
## Build
3838

3939
CPU build:
4040

4141
```sh
42-
cmake -S . -B build -DVLACPP_BUILD_ROBOT_SERVER=ON
42+
cmake -S . -B build -DROBOT_CPP_BUILD_ROBOT_SERVER=ON
4343
cmake --build build --target model-cli model-server -j
4444
```
4545

4646
CUDA build:
4747

4848
```sh
4949
cmake -S . -B build-cuda \
50-
-DVLACPP_BUILD_ROBOT_SERVER=ON \
50+
-DROBOT_CPP_BUILD_ROBOT_SERVER=ON \
5151
-DGGML_CUDA=ON \
5252
-DCMAKE_CUDA_ARCHITECTURES=80
5353
cmake --build build-cuda --target model-cli model-server -j
@@ -74,8 +74,8 @@ components are `vit`, `mmproj`, `llm`, `state`, and `action_decoder`.
7474
Example with a split GGUF checkpoint and CUDA build:
7575

7676
```sh
77-
GGUF_DIR=ckpts/pi0-libero-finetuned-v044/vlacpp-split
78-
MODEL=vlacpp-pi0-libero-finetuned-v044
77+
GGUF_DIR=ckpts/pi0-libero-finetuned-v044/robotcpp-split
78+
MODEL=robotcpp-pi0-libero-finetuned-v044
7979
IMAGE0=agentview.png
8080
IMAGE1=eye_in_hand.png
8181
STATE="$(python3 - <<'PY'
@@ -120,8 +120,8 @@ strings "${GGUF_DIR}/${MODEL}.tokenizer.gguf" | rg "pi0\\.image_keys|observation
120120
Start the CUDA server:
121121

122122
```sh
123-
GGUF_DIR=ckpts/pi0-libero-finetuned-v044/vlacpp-split
124-
MODEL=vlacpp-pi0-libero-finetuned-v044
123+
GGUF_DIR=ckpts/pi0-libero-finetuned-v044/robotcpp-split
124+
MODEL=robotcpp-pi0-libero-finetuned-v044
125125

126126
ROBOTCPP_BACKEND=cuda ./build-cuda/bin/model-server \
127127
--model-type pi0 \
@@ -154,10 +154,10 @@ The pi0-specific pieces are only the server launch command and optional backend
154154
environment override:
155155

156156
```sh
157-
GGUF_DIR=ckpts/pi0-libero-finetuned-v044/vlacpp-split
158-
MODEL=vlacpp-pi0-libero-finetuned-v044
157+
GGUF_DIR=ckpts/pi0-libero-finetuned-v044/robotcpp-split
158+
MODEL=robotcpp-pi0-libero-finetuned-v044
159159

160-
python -m eval.libero.run_model_server_eval \
160+
python -m eval.libero.run_model_server \
161161
--launch-server \
162162
--host 127.0.0.1 \
163163
--port 5555 \

‎eval/__init__.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
"""Evaluation helpers for vla.cpp model-server policies."""
1+
"""Evaluation helpers for robot.cpp model-server policies."""

‎eval/lerobot_so101/README.md‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
# vla.cpp LeRobot SO101 Client
1+
# robot.cpp LeRobot SO101 Client
22

3-
最小同步 client:SO101 硬件 → vla.cpp SmolVLA TCP server(`127.0.0.1:5555`)。**不修改** `third_party/lerobot` 源码。
3+
最小同步 client:SO101 硬件 → robot.cpp SmolVLA TCP server(`127.0.0.1:5555`)。**不修改** `third_party/lerobot` 源码。
44

55
- LeRobot 上游:`third_party/lerobot`(submodule,只读)
6-
- 推理:vla.cpp `robot_server` TCP
6+
- 推理:robot.cpp `robot_server` TCP
77
- 相机:LeRobot CLI 使用 `type: opencv_crop`
88

99
## 目录结构
@@ -25,7 +25,7 @@ eval/base_platform.py # BasePolicy
2525

2626
## 安装
2727

28-
在 vla.cpp 仓库根目录:
28+
在 robot.cpp 仓库根目录:
2929

3030
```bash
3131
conda create -n lerobot-demo python=3.12 -y
@@ -51,7 +51,7 @@ pip install -e "eval/lerobot_so101/lerobot_camera_opencv_crop"
5151
| `CAMERA_`* | 分辨率、backend、resize、warmup 等 |
5252
| `ROBOT_USE_DEGREES` | follower 关节单位(默认 degrees) |
5353
| `ROBOT_PLATFORM` | 平台选择(默认 `lerobot_so101` → `eval.lerobot_so101.so101_client`) |
54-
| `SERVER` / `TASK` / `FPS` | vla.cpp TCP 推理 |
54+
| `SERVER` / `TASK` / `FPS` | robot.cpp TCP 推理 |
5555
| `DATASET_REPO_ID` 等 | 录制数据集 |
5656

5757

‎eval/lerobot_so101/run_sync.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#!/usr/bin/env python3
2-
"""Launch a platform robot client against a running vla.cpp model server."""
2+
"""Launch a platform robot client against a running robot.cpp model server."""
33

44
from __future__ import annotations
55

‎eval/libero/README.md‎

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# LIBERO Eval
22

33
This directory contains LIBERO rollout and latency runners for two paths:
4-
LeRobot Python policies and vla.cpp `model-server`.
4+
LeRobot Python policies and robot.cpp `model-server`.
55

66
## Files
77

@@ -27,7 +27,7 @@ Create the optional conda environment:
2727

2828
```sh
2929
conda env create -f eval/libero/environment.yaml
30-
conda activate vlacpp-libero
30+
conda activate robotcpp-libero
3131
```
3232

3333
Or install the key dependencies in an existing environment:
@@ -47,7 +47,7 @@ default cache directories:
4747
```sh
4848
export MUJOCO_GL=osmesa
4949
export PYOPENGL_PLATFORM=osmesa
50-
export VLACPP_EVAL_CACHE_DIR="${TMPDIR:-/tmp}/vlacpp-eval-cache"
50+
export ROBOTCPP_EVAL_CACHE_DIR="${TMPDIR:-/tmp}/robotcpp-eval-cache"
5151
```
5252

5353
## LeRobot Baseline
@@ -62,9 +62,9 @@ python -m eval.libero.run_lerobot \
6262
--n-episodes 1 \
6363
--mujoco-gl osmesa \
6464
--pyopengl-platform osmesa \
65-
--numba-cache-dir "${VLACPP_EVAL_CACHE_DIR}/numba" \
66-
--torchinductor-cache-dir "${VLACPP_EVAL_CACHE_DIR}/torchinductor" \
67-
--triton-cache-dir "${VLACPP_EVAL_CACHE_DIR}/triton" \
65+
--numba-cache-dir "${ROBOTCPP_EVAL_CACHE_DIR}/numba" \
66+
--torchinductor-cache-dir "${ROBOTCPP_EVAL_CACHE_DIR}/torchinductor" \
67+
--triton-cache-dir "${ROBOTCPP_EVAL_CACHE_DIR}/triton" \
6868
--extra-arg=--policy.compile_model=false
6969
```
7070

@@ -101,8 +101,8 @@ The benchmark reports `processor_ms`, `policy_ms`, and `total_ms` after warmup.
101101
Measure model-server action chunk latency with synthetic LIBERO-style inputs:
102102

103103
```sh
104-
GGUF_DIR=ckpts/pi0-libero-finetuned-v044/vlacpp-split
105-
MODEL=vlacpp-pi0-libero-finetuned-v044
104+
GGUF_DIR=ckpts/pi0-libero-finetuned-v044/robotcpp-split
105+
MODEL=robotcpp-pi0-libero-finetuned-v044
106106

107107
python -m eval.libero.benchmark_model_server \
108108
--launch-server \
@@ -137,16 +137,16 @@ Download the pi0 v044 split GGUF files:
137137
```sh
138138
hf download JJJYmmm/robotcpp-pi0-libero-finetuned-v044 \
139139
--include "*.gguf" \
140-
--local-dir ckpts/pi0-libero-finetuned-v044/vlacpp-split
140+
--local-dir ckpts/pi0-libero-finetuned-v044/robotcpp-split
141141
```
142142

143143
The convenience wrapper configures/builds `model-server`, launches it, and runs
144144
the rollout:
145145

146146
```sh
147-
GGUF_DIR=ckpts/pi0-libero-finetuned-v044/vlacpp-split \
148-
MODEL=vlacpp-pi0-libero-finetuned-v044 \
149-
CONDA_ENV=vlacpp-libero \
147+
GGUF_DIR=ckpts/pi0-libero-finetuned-v044/robotcpp-split \
148+
MODEL=robotcpp-pi0-libero-finetuned-v044 \
149+
CONDA_ENV=robotcpp-libero \
150150
CMAKE_CUDA_ARCHITECTURES=80 \
151151
bash eval/libero/run_model_server.sh
152152
```

‎eval/libero/environment.yaml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: vlacpp-libero
1+
name: robotcpp-libero
22
channels:
33
- conda-forge
44
dependencies:

0 commit comments

Comments
 (0)