하이브리드 AI와 TinyML 아키텍처: 로보틱스에서의 안전한 통합
로보틱스에 LLM을 통합하는 전통적인 접근 방식은 모델의 비결정성, 처리 지연, 보안 위험 등의 중대한 도전을 직면합니다. 이 글에서는 OpenGrall 하이브리드 아키텍처를 분해하여 설명합니다. 여기서 LLM은 전략적 계획을 담당하고, TinyML은 안전한 실시간 행동 실행을 보장합니다.
Safety as an Architectural Principle
LLM은 본질적으로 비결정적입니다—동일한 프롬프트에 대해 서로 다른 명령을 생성할 수 있습니다. 이러한 명령을 모터에 직접 전달하면 예측 불가능한 동작이 발생합니다. OpenGrall의 해결책은 책임 분리입니다: LLM은 전략적 목표를 설정하지만, TinyML 기반 온보드 컨트롤러가 행동 실행에 대한 최종 결정을 내립니다.
마이크로컨트롤러(ESP32/STM32)에서 실행되는 TinyML 모델은 센서 데이터를 10ms 미만의 지연으로 처리합니다. 이는 다음을 수행합니다:
- LLM 명령에 대한 절대적 거부권 보유
- 플랫폼의 물리적 한계(관성, 페이로드 용량) 모니터링
- 장애물 감지 시 비상 정지 보장
- 능동 서스펜션 및 복잡한 기계 시스템 관리
TinyML 훈련은 플랫폼의 정확한 물리 모델을 가진 시뮬레이터에서 이루어집니다. 이를 통해 신경망이 하드웨어를 "느낄 수" 있습니다: 가속/제동 계산, 불균일 표면 보상, 이동 궤적 최적화. 입력 데이터는 최소 세트입니다: 거리 측정기 데이터, 오도메트리, IMU.
Modularity over Monoliths
인기 있는 VLA 모델(Vision-Language-Action)은 종종 블랙박스로 사용되어 문제를 일으킵니다:
- 재훈련 없이 새로운 센서 추가 불가
- 막대한 계산 자원 요구
- 의사결정 과정의 투명성 부족
OpenGrall은 관심사 분리를 적용합니다:
- LLM Agent (Vikhr/Gemma/YandexGPT)
- 전략적 목표 설정
- 압축된 센서 데이터 분석
- 매개변수가 포함된 JSON 명령 생성
- 행동 추론 설명
- Execution Layer (TinyML/VLA/hardcoded)
- 명령을 물리적 행동으로 변환
- 안전 강제
- 특정 플랫폼에 적응
이 접근 방식은 주요 이점을 제공합니다:
- 안전이 확률적에서 결정적으로 전환
- 전체 시스템 재작성 없이 LLM 교체 가능
- 플랫폼이 새로운 로봇 유형(육각 보행 로봇, 사족 비행 로봇)에 쉽게 적응
- 물리적 레이어와 논리적 레이어의 병렬 개발
Lock-Free Architecture
대부분의 구현에서 중대한 결함은 LLM과 빠른 센서의 동기화입니다. OpenGrall은 비동기 WebSocket 아키텍처를 사용합니다:
- Server (임의 장치에서 실행)—중앙 허브
- Clients가 역할(operator/agent/esp/lidar)로 등록
- .msg 파일 대신 표준화된 JSON 프로토콜
- WeightCalculator를 통한 동적 데이터 가중치
SensorMemory 시스템은 이상 시 센서의 가중치를 자동으로 줄입니다. 예를 들어, 라이다가 더러워서(모든 섹터가 동일한 거리를 표시) 데이터가 무시되며, 청소될 때까지 유지됩니다. 이는 수동 데이터 융합 필요성을 제거합니다—LLM 자체가 데이터 가중치와 연령을 분석하여 신뢰할 소스를 결정합니다.
Token and Prompt Optimization
주요 성능 킬러는 LLM으로의 비효율적 데이터 전송입니다. OpenGrall은 두 가지 핵심 방법을 사용합니다:
1. Sensor Data Compression
원시 라이다 포인트 클라우드(초당 수천 값)는 주요 매개변수가 포함된 8개 섹터로 변환됩니다. 예시 처리:
- 80cm 이내 객체: 각도, 거리, 크기, 속도
- 동적 업데이트: 데이터 연령, 센서 가중치
2. System Prompt
중요 지침(응답 형식, 사용 가능 명령)은 Ollama를 통해 모델에 내장됩니다. 이는 요청당 최대 300 토큰을 절약합니다:
You robot Graal. Dimensions: 51×32×37sm.
0°=↑=directly
Reply JSON: {"action":"move_forward","params":{"speed":300},"reasoning":"..."}
...
실제 LLM 요청에는 현재 데이터만 포함됩니다:
CURRENT SITUATION:
Time: 1712345720.45
Current intent: inspect the corridor
DIALOG:
Human: Graal, posmotri that tam aheadi
Robot: Understood, investigating
SENSOR DATA (by importantsti):
• lidar: front=0.4m, front_left=1.2m...
Key Takeaways
- Absolute TinyML Veto가 안전을 확률적 매개변수에서 결정적 보증으로 전환
- Modular Architecture가 LLM, 센서, 플랫폼의 독립적 변경 허용
- Dynamic Data Weighting이 복잡한 센서 융합 알고리즘 대체
- System Prompts가 토큰 65% 절감, 1B 미만 로컬 모델 사용 가능
- WebSocket Protocol이 마이크로컨트롤러를 포함한 모든 장치와 호환 보장
실험적 센서(예: 3개 마이크의 초음파 소나)조차 에이전트 코드 변경 없이 통합됩니다. LLM은 다른 센서와 교차 참조하며 원시 데이터를 독립적으로 해석합니다. 이는 각 새 모듈이 로봇의 전체 지능을 높이는 진화하는 시스템을 만듭니다.
— Editorial Team
아직 댓글이 없습니다.