JSHNSL commited on
Commit
659d7a7
ยท
verified ยท
1 Parent(s): 49e5c37

Upload SETUP_CYCLO_GROOT.md with huggingface_hub

Browse files
Files changed (1) hide show
  1. SETUP_CYCLO_GROOT.md +157 -0
SETUP_CYCLO_GROOT.md ADDED
@@ -0,0 +1,157 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # ์„ค์น˜ โ€” cyclo_intelligence & Isaac-GR00T
2
+
3
+ ๋‘ ์ €์žฅ์†Œ๋ฅผ ์„ค์น˜ํ•œ๋‹ค. **์—ญํ• ์ด ๋‹ค๋ฅด๋ฏ€๋กœ ๋”ฐ๋กœ ๋‘”๋‹ค.**
4
+
5
+ | ์ €์žฅ์†Œ | ์—ญํ•  | ์œ„์น˜ |
6
+ |--------|------|------|
7
+ | [`cyclo_intelligence`](https://github.com/ROBOTIS-GIT/cyclo_intelligence) | **๋ฐฐํฌ/์ถ”๋ก ** โ€” ์›น UI์—์„œ ์ •์ฑ…์„ ๋กœ๋ด‡์— ์‹คํ–‰ | `~/cyclo_intelligence` |
8
+ | [`Isaac-GR00T-n1.7`](https://github.com/ROBOTIS-GIT/Isaac-GR00T-n1.7) (ROBOTIS ํฌํฌ) | **GR00T ํ•™์Šต** | `~/Isaac-GR00T` |
9
+ | [`cyclo_lab`](https://github.com/Disniekie01/EKAIWORKER) | Isaac Sim ๋ฐ์ดํ„ฐ ์ƒ์„ฑ + LeRobot ํ•™์Šต | `~/AIWORKER/cyclo_lab` |
10
+
11
+ > **์™œ GR00T๋ฅผ ๋”ฐ๋กœ ํด๋ก ํ•˜๋‚˜?**
12
+ > cyclo_intelligence๋Š” Isaac-GR00T๋ฅผ **git ์„œ๋ธŒ๋ชจ๋“ˆ**๋กœ ์ด๋ฏธ ํฌํ•จํ•˜๊ณ  ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ํ•™์Šต์„ ๊ทธ ์•ˆ์—์„œ ํ•˜๋ฉด
13
+ > ๋ฐฐํฌ ์ €์žฅ์†Œ๊ฐ€ ํ•™์Šต ํ™˜๊ฒฝ(uv, ์ฒดํฌํฌ์ธํŠธ, ์บ์‹œ)์œผ๋กœ ์˜ค์—ผ๋œ๋‹ค. **ํ•™์Šต์€ ๋…๋ฆฝ๋œ ํด๋ก ์—์„œ ํ•˜๊ณ ,
14
+ > ๊ฒฐ๊ณผ๋ฌผ๋งŒ HF์— ์˜ฌ๋ ค ๋ฐฐํฌ ๋•Œ ๋‚ด๋ ค๋ฐ›๋Š”๋‹ค** โ€” LeRobot์—์„œ ์ด๋ฏธ ์“ฐ๋Š” ๋ฐฉ์‹๊ณผ ๊ฐ™๋‹ค.
15
+ >
16
+ > โš ๏ธ **๋‹จ, NVIDIA ์›๋ณธ์ด ์•„๋‹ˆ๋ผ ROBOTIS ํฌํฌ๋ฅผ ํด๋ก ํ•ด์•ผ ํ•œ๋‹ค.** ์ถ”๋ก ํ•˜๋Š” ์ชฝ(cyclo_intelligence ์„œ๋ธŒ๋ชจ๋“ˆ)์ด
17
+ > ROBOTIS ํฌํฌ์ด๋ฏ€๋กœ, **๊ฐ™์€ ์ฝ”๋“œ๋กœ ํ•™์Šตํ•ด์•ผ ์ฒดํฌํฌ์ธํŠธ๊ฐ€ ๋กœ๋“œ๋œ๋‹ค.** ์›๋ณธ์œผ๋กœ ํ•™์Šตํ•˜๋ฉด ๋ฒ„์ „์ด ๊ฐˆ๋ ค
18
+ > ๋ฐฐํฌ์—์„œ ๋ชป ์ฝ์„ ์ˆ˜ ์žˆ๋‹ค.
19
+
20
+ ---
21
+
22
+ ## 1. cyclo_intelligence (๋ฐฐํฌ/์ถ”๋ก )
23
+
24
+ [๊ณต์‹ README](https://github.com/ROBOTIS-GIT/cyclo_intelligence) ๊ทธ๋Œ€๋กœ:
25
+
26
+ ```bash
27
+ curl -fsSL https://raw.githubusercontent.com/ROBOTIS-GIT/cyclo_intelligence/main/install.sh | bash
28
+ ```
29
+
30
+ - ํ˜ธ์ŠคํŠธ๋ช…์ด `ffw`๋กœ ์‹œ์ž‘ํ•˜๋Š” **ROBOTIS ๋กœ๋ด‡ PC**: `/mnt/ssd/cyclo_intelligence` ์— ์„ค์น˜๋˜๊ณ  `~/cyclo_intelligence` ๋กœ bind-mount
31
+ - **๊ทธ ์™ธ PC**: `~/cyclo_intelligence` ์— ๋ฐ”๋กœ ์„ค์น˜
32
+
33
+ ์„ค์น˜๋˜๋Š” ๊ฒƒ: Docker ์ด๋ฏธ์ง€(robotis/cyclo-intelligence, robotis/lerobot-zenoh ๋“ฑ) + ์›น UI + ์ถ”๋ก  ์—”์ง„ + **Isaac-GR00T ์„œ๋ธŒ๋ชจ๋“ˆ**
34
+
35
+ ์ปจํ…Œ์ด๋„ˆ ๊ธฐ๋™/ํ™•์ธ:
36
+ ```bash
37
+ cd ~/cyclo_intelligence
38
+ docker ps # cyclo_intelligence, lerobot_server ๊ฐ€ Up ์ธ์ง€
39
+ ```
40
+
41
+ ์›น UI: ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ ‘์† โ†’ Inference ํŽ˜์ด์ง€์—์„œ ์ •์ฑ… ์„ ํƒ
42
+
43
+ ๊ด€๋ จ ๋ฌธ์„œ:
44
+ - [AI Worker Imitation Learning ๋ฌธ์„œ](https://docs.robotis.com/docs/systems/aiworker/imitation_learning/)
45
+ - [AI Worker ROS 2 ํŒจํ‚ค์ง€](https://github.com/ROBOTIS-GIT/ai_worker)
46
+ - [ROBOTIS ์‚ฌ์ „ํ•™์Šต ๋ชจ๋ธยท๋ฐ์ดํ„ฐ์…‹](https://huggingface.co/ROBOTIS)
47
+
48
+ ---
49
+
50
+ ## 2. Isaac-GR00T (GR00T ํ•™์Šต ์ „์šฉ)
51
+
52
+ ### 2-a. ํ•˜๋“œ์›จ์–ด ์š”๊ตฌ์‚ฌํ•ญ
53
+
54
+ | | ์š”๊ตฌ |
55
+ |---|---|
56
+ | **ํŒŒ์ธํŠœ๋‹** | **40GB+ VRAM ๊ถŒ์žฅ** (H100 / L40 ๊ถŒ์žฅ, A6000๋„ ๋˜์ง€๋งŒ ๋А๋ฆผ) |
57
+ | ์ถ”๋ก  | 16GB+ VRAM |
58
+ | **dGPU (x86_64)** | **CUDA 12.8 + Python 3.10** |
59
+
60
+ > GR00T N1.7์€ **3B ํŒŒ๋ผ๋ฏธํ„ฐ**๋‹ค. ๋‹ค๋งŒ ๊ธฐ๋ณธ ํŒŒ์ธํŠœ๋‹ ์„ค์ •์ด **VLM ๋ฐฑ๋ณธ(LLM + ๋น„์ „ ์ธ์ฝ”๋”)์„ ์–ผ๋ฆฌ๊ณ **
61
+ > projector + diffusion action head๋งŒ ํ•™์Šตํ•˜๋ฏ€๋กœ, ์ „์ฒด ํ•™์Šต๋ณด๋‹ค ํ›จ์”ฌ ๊ฐ€๋ณ๋‹ค.
62
+ > 24GB GPU์—์„œ๋„ `--global_batch_size` ๋ฅผ ๋‚ฎ์ถ”๋ฉด ๋“ค์–ด๊ฐˆ ์—ฌ์ง€๊ฐ€ ์žˆ๋‹ค (**์‹ค์ธก ํ•„์š”**).
63
+
64
+ ### 2-b. git-lfs ๋จผ์ € (ํ•„์ˆ˜)
65
+
66
+ `demo_data/`์˜ parquet ํŒŒ์ผ์„ ๋ฐ›์œผ๋ ค๋ฉด **ํด๋ก  ์ „์—** ์„ค์น˜ํ•ด์•ผ ํ•œ๋‹ค:
67
+ ```bash
68
+ sudo apt install git-lfs && git lfs install
69
+ ```
70
+
71
+ ### 2-c. ํด๋ก  (ROBOTIS ํฌํฌ + ์„œ๋ธŒ๋ชจ๋“ˆ)
72
+
73
+ ```bash
74
+ cd ~
75
+ git clone --recurse-submodules https://github.com/ROBOTIS-GIT/Isaac-GR00T-n1.7.git Isaac-GR00T
76
+ cd Isaac-GR00T
77
+ ```
78
+
79
+ ์„œ๋ธŒ๋ชจ๋“ˆ ์—†์ด ์ด๋ฏธ ํด๋ก ํ–ˆ๋‹ค๋ฉด:
80
+ ```bash
81
+ git submodule update --init --recursive
82
+ ```
83
+
84
+ **cyclo_intelligence๊ฐ€ ์“ฐ๋Š” ์ปค๋ฐ‹๊ณผ ๋งž์ถ”๊ธฐ** (์ฒดํฌํฌ์ธํŠธ ํ˜ธํ™˜์˜ ํ•ต์‹ฌ):
85
+ ```bash
86
+ # ๋ฐฐํฌ ์ชฝ์ด ์–ด๋А ์ปค๋ฐ‹์„ ์“ฐ๋Š”์ง€ ํ™•์ธ
87
+ cd ~/cyclo_intelligence
88
+ git submodule status cyclo_brain/policy/groot/Isaac-GR00T
89
+
90
+ # ํ•™์Šต ์ชฝ์„ ๊ทธ ์ปค๋ฐ‹์œผ๋กœ ๊ณ ์ •
91
+ cd ~/Isaac-GR00T
92
+ git checkout <์œ„์—์„œ ๋‚˜์˜จ ์ปค๋ฐ‹ ํ•ด์‹œ>
93
+ ```
94
+
95
+ ### 2-d. ํ™˜๊ฒฝ ์„ค์น˜
96
+
97
+ **uv** (ํŒŒ์ด์ฌ ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € โ€” GR00T๊ฐ€ ์ด๊ฑธ ์”€):
98
+ ```bash
99
+ curl -LsSf https://astral.sh/uv/install.sh | sh
100
+ ```
101
+
102
+ **FFmpeg** (`torchcodec` ๋น„๋””์˜ค ๋ฐฑ์—”๋“œ์— ํ•„์š”):
103
+ ```bash
104
+ sudo apt-get update && sudo apt-get install -y ffmpeg
105
+ ```
106
+
107
+ **GR00T ์„ค์น˜** (dGPU x86_64 ๊ธฐ์ค€ โ€” **Python 3.10**):
108
+ ```bash
109
+ cd ~/Isaac-GR00T
110
+ uv sync --python 3.10
111
+ ```
112
+ > flash-attnยทTensorRT ๊ฐ™์€ GPU ์˜์กด์„ฑ์ด **๊ธฐ๋ณธ ์„ค์น˜์— ํฌํ•จ**๋œ๋‹ค (๋ฏธ๋ฆฌ ๋นŒ๋“œ๋œ wheel).
113
+ > x86_64์—์„œ๋Š” ์†Œ์Šค ๋นŒ๋“œ๊ฐ€ ํ•„์š” ์—†๋‹ค.
114
+
115
+ **ํ™•์ธ:**
116
+ ```bash
117
+ uv run python -c "import gr00t; print('GR00T installed successfully')"
118
+ uv run python -c "import torch; print(torch.__version__, torch.cuda.is_available())"
119
+ ```
120
+
121
+ ### 2-e. ์ž์ฃผ ๊ฑธ๋ฆฌ๋Š” ๊ฒƒ
122
+
123
+ | ์ฆ์ƒ | ํ•ด๊ฒฐ |
124
+ |------|------|
125
+ | `CUDA_HOME is unset` (ํŒŒ์ธํŠœ๋‹ ์‹œ) | `bash scripts/deployment/dgpu/install_deps.sh` ๋ฅผ 1ํšŒ ์‹คํ–‰, ๋˜๋Š” `export CUDA_HOME=/usr/local/cuda` |
126
+ | **CUDA 13.x ํ™˜๊ฒฝ** โ€” Triton `ptx_get_version()` RuntimeError | PyTorch 2.7์ด Triton 3.3.1์„ ๊ณ ์ •ํ•˜๋Š”๋ฐ CUDA 13+๋ฅผ ์ธ์‹ ๋ชป ํ•จ โ†’ `uv run bash scripts/patch_triton_cuda13.sh` |
127
+ | `uv run` ํ•  ๋•Œ๋งˆ๋‹ค `Installing flash-attn...` | **์ •์ƒ**์ด๋‹ค. uv๊ฐ€ ์บ์‹œ๋œ wheel์„ ์žฌ๊ฒ€์ฆํ•˜๋Š” ๊ฒƒ (2~3์ดˆ). ์†Œ์Šค ๋นŒ๋“œ๊ฐ€ ์•„๋‹ˆ๋‹ค |
128
+ | flash-attn `glibc_compat.so` ImportError (๊ตฌํ˜• OS) | ์†Œ์Šค ๋นŒ๋“œ: `uv pip install flash-attn==2.7.4.post1 --no-binary flash-attn --no-cache` (10~30๋ถ„) |
129
+
130
+ ---
131
+
132
+ ## 3. ์ „์ฒด ๊ตฌ์กฐ
133
+
134
+ ```
135
+ ~/AIWORKER/cyclo_lab/ Isaac Sim ๋ฐ์ดํ„ฐ ์ƒ์„ฑ ยท LeRobot ํ•™์Šต (ACT/VQ-BeT/Diffusion)
136
+ โ”‚
137
+ โ”‚ HDF5 โ†’ LeRobot v3.0 โ†’ HuggingFace
138
+ โ–ผ
139
+ HuggingFace โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
140
+ โ”‚ (๋ฐ์ดํ„ฐ์…‹) โ”‚ (ํ•™์Šต๋œ ๋ชจ๋ธ)
141
+ โ–ผ โ”‚
142
+ ~/Isaac-GR00T/ GR00T N1.7 ํŒŒ์ธํŠœ๋‹ โ”€โ”˜
143
+ โ”‚
144
+ โ”‚ ์ฒดํฌํฌ์ธํŠธ โ†’ HuggingFace
145
+ โ–ผ
146
+ ~/cyclo_intelligence/ ์›น UI์—์„œ ๋ชจ๋ธ ๋‹ค์šด๋กœ๋“œ โ†’ ๋กœ๋ด‡์— ๋ฐฐํฌ/์ถ”๋ก 
147
+ ```
148
+
149
+ **ํ•ต์‹ฌ**: ํ•™์Šต ์ €์žฅ์†Œ๋“ค์€ ์„œ๋กœ ๋…๋ฆฝ์ด๊ณ , **HuggingFace๊ฐ€ ์œ ์ผํ•œ ์—ฐ๊ฒฐ๊ณ ๋ฆฌ**๋‹ค.
150
+ cyclo_intelligence๋Š” ํ•™์Šต ์ฝ”๋“œ๋ฅผ ๋ชฐ๋ผ๋„ ๋˜๊ณ , ๋ชจ๋ธ๋งŒ ๋‚ด๋ ค๋ฐ›์•„ ์‹คํ–‰ํ•œ๋‹ค.
151
+
152
+ ---
153
+
154
+ ## ๋‹ค์Œ ๋‹จ๊ณ„
155
+
156
+ - LeRobot ์ •์ฑ… ํ•™์Šต โ†’ [`WORKFLOW.md`](WORKFLOW.md)
157
+ - GR00T N1.7 ํŒŒ์ธํŠœ๋‹ โ†’ [`GROOT_FINETUNE.md`](GROOT_FINETUNE.md)