Hugging Face가 로봇 학습 도구 LeRobot v0.7.0을 공개했다. 로봇 개발자는 대용량 데이터를 통째로 내려받지 않고 학습에 쓰거나, 로봇 옆의 작은 컴퓨터 대신 원격 서버에서 큰 모델을 실행할 수 있다. 설치부터 학습·추론·모터 연결까지 바뀌어 기존 사용자의 이전 작업도 커졌다.

1. 큰 모델을 나눠 학습하고 저장 부담을 줄인다

새 학습 체계는 FSDP2와 HSDP를 지원한다. 모델이 학습해 조정한 값인 가중치 등을 여러 GPU에 나눠 담아, 한 장의 GPU 메모리에 담기 어려운 모델을 학습하는 방식이다. 이와 별도로 분산 체크포인트는 학습 상태를 나눠 저장하고 여러 GPU에서 다시 불러오는 역할을 맡는다.

LeRobot 팀의 분산 학습 발표에 따르면, H200 GPU 8개를 묶은 서버 한 대에서 60억 매개변수의 FastWAM을 학습할 때 분산 체크포인트 저장 속도가 기존 대비 3배 빨라졌다. 매개변수는 모델이 학습하는 수치 값이다. 같은 조건에서 학습 재개 시 GPU당 최대 메모리 사용량은 143GB에서 42GB로 낮아졌다. 두 값으로 계산하면 약 71% 감소한 것으로, 학습 중 메모리 분산과 별개로 저장·재개 부담도 줄인 변화다.

표: 학습 재개 시 GPU당 최대 메모리 사용량

조건: LeRobot 팀 발표, 8×H200 서버 한 대, 6B FastWAM, 분산 체크포인트 도입 전후

단위: GB

학습 재개 시 GPU당 최대 메모리 사용량 (GB)기존: 최대 메모리 사용량 143; 분산 체크포인트: 최대 메모리 사용량 42기존143분산 체크포인트42
학습 재개 시 GPU당 최대 메모리 사용량 (GB)
큰 모델을 나눠 학습하고 저장 부담을 줄인다
재개 경로최대 메모리 사용량
기존143
분산 체크포인트42

실험 기록 도구는 Weights & Biases에서 Trackio로 교체됐다. 로컬 실행은 가입이나 로그인 없이 모니터링할 수 있고, 실행 명령과 오류를 포함한 콘솔 출력도 기록한다. 체크포인트를 추적 서비스에 아티팩트, 실험 결과를 보관하는 파일 묶음으로 올리는 동작은 기본적으로 꺼졌다.

2. 데이터는 필요한 영상 구간만 읽는다

새 스트리밍 읽기 방식, 필요한 부분을 받아 읽는 방식은 학습에 필요한 영상 바이트 구간만 허브나 스토리지 버킷에서 가져온다. LeRobot 팀의 스트리밍 발표에 따르면, 데이터를 읽는 작업 프로세스 네 개를 쓸 때 초당 샘플 수가 기존 대비 2.1~2.5배가 됐다. 한 차례의 전체 학습 순회, 데이터를 모두 한 번 훑는 과정마다 각 프레임을 정확히 한 번씩 방문하며, 재개 때도 순서를 재현한다.

표: 스트리밍 데이터 로딩 처리량 변화

조건: LeRobot 팀 발표, 새 스트리밍 리더에서 DataLoader 워커 4개 사용, 샘플/초 기준

단위: 기존 대비 배율

데이터는 필요한 영상 구간만 읽는다
측정 대상기존값새값
초당 샘플 수절대값 미제시2.1–2.5x

LanceDB에 저장한 데이터셋은 원본 MP4를 다시 인코딩하지 않고 읽을 수 있다. 아래는 블로그의 데이터셋 로드 예시다.

from lerobot.datasets import LeRobotDataset

dataset = LeRobotDataset("lance-format/pusht-lance")

학습 이미지를 변형하는 증강, 학습 데이터를 변형해 늘리는 작업도 GPU에서 처리할 수 있다. LeRobot 팀의 GPU 증강 발표에 따르면, 로봇 동작 학습 모델인 ACT에 이를 적용했을 때 학습 속도가 H100에서는 2.8배, A100에서는 3.3배였다.

팀은 허브에 공개된 LeRobot 형식의 물리 인공지능 데이터가 거의 300TB에 이른다고 밝혔다. 전체 데이터를 로컬 디스크에 담기 어려운 환경에서 스트리밍의 활용 범위가 커진 배경이다.

3. 로봇은 현장에 두고 모델은 서버에서 돌린다

정책 서버를 이용하면 카메라·모터·녹화는 로봇 가까이에서 처리하고, 학습된 동작 모델인 정책은 원격 GPU 서버에서 실행할 수 있다. 관측값, 로봇 상태를 나타내는 입력 정보와 지시를 보내면 서버가 다음 동작 묶음을 돌려준다. 로봇이 이미 받은 동작을 수행하는 동안 다음 추론, 학습된 모델로 결과를 계산하는 과정을 진행해 계산과 움직임을 겹친다. 새 동작 묶음은 남은 동작 궤적에 맞추되, 이미 시간이 지난 단계는 버리고 겹치는 목표는 섞어 매끄럽게 이어 붙인다.

대화형 실행은 로봇 연결과 정책 가중치를 유지한 채 지시를 바꾸거나, 로봇이 보는 내용을 질문하도록 한다. 목표를 주면 정책이 세부 작업을 선택하는 방식도 지원한다. 질문과 자동 조종에는 텍스트를 생성하는 정책이나 외부 계획기가 필요하다. 외부 계획기는 이미지와 글을 함께 다루는 비전언어모델을 OpenAI 호환 API로 연결해, 질문에 답하고 다음 작업 단계를 고른다.

원격 실행은 로봇 곁 컴퓨터의 모델 메모리 부담을 덜어준다. 대신 개발자는 추론 서버와 네트워크도 운영하고 지연, 응답이 돌아오기까지 걸리는 시간에 맞춰 실행 방식을 조정해야 한다. 전송에는 보안 연결을 위한 암호화인 TLS와 접근 제어 설정을 제공하는 Zenoh를 쓴다.

4. 시뮬레이터와 모터 연결도 공통 기반으로 묶는다

벤치마크, 성능을 비교하는 시험 작업마다 별도 시뮬레이터를 같은 환경에 설치하던 구조는 공통 실행 기반으로 정리됐다. 시뮬레이터는 LeRobot 프로세스 안에서 실행하거나 별도 도커 이미지의 서버로 띄울 수 있다. 실제 로봇 없이도 실행·녹화·원격 조작 흐름을 시험할 수 있다.

평가 결과에는 성공 횟수와 95% 윌슨 신뢰구간, 성공률의 불확실성을 나타내는 범위가 함께 표시된다. 적은 횟수의 시험에서 얻은 성공률을 볼 때 결과의 불확실성도 함께 읽을 수 있도록 한 변화다.

Feetech과 Dynamixel 모터는 하나의 직렬 버스, 장치들이 차례로 통신하는 연결 방식 구현을 공유한다. 제조사 소프트웨어 개발 키트 대신 rustypot 기반 구현을 설치하며, 기존 캘리브레이션, 모터 기준값을 맞추는 절차 파일은 유지된다. 모터 동작 모드는 버스에 직접 명령을 전달해 설정하는 방식으로 바뀌었다.

5. 업그레이드는 설치와 학습 재개 경로부터 점검한다

릴리스 노트의 설치 항목에 따르면, 리눅스의 파이토치와 토치비전은 CUDA 13 빌드로 바뀌며 NVIDIA 드라이버 580.65 이상을 요구한다. 이전 드라이버를 쓰면 CUDA 12 인덱스에서 파이토치를 먼저 설치하는 경로가 안내된다.

릴리스 노트의 학습 항목에 따르면, 기존 FSDP1 경로는 새 분산 학습 체계로 대체됐으며 이전 설정은 새 옵션에 맞춰 옮겨야 한다. v0.6.x까지 저장한 FSDP 체크포인트는 가중치를 불러올 수 있지만 학습 상태를 그대로 재개할 수 없다. Accelerate의 YAML·환경 변수 설정은 기본적으로 거부되며, 계속 허용하려면 릴리스 노트가 안내한 별도 설정이 필요하다.

릴리스 노트의 추론·실행 항목에 따르면, 기존 비동기 추론 모듈은 제거돼 원격 추론 경로로 이전해야 한다. 정책을 직접 호출하는 코드는 동작과 예측 정보를 함께 돌려줄 수 있는 새 반환 형식도 반영해야 한다.

LeRobot v0.7.0의 핵심은 더 큰 모델과 데이터를 다룰 여지를 넓히는 대신, 기존 사용자의 설치·학습·실행 경로 이전을 요구한다는 데 있다.