OM1: 로봇을 위한 모듈형 멀티모달 AI 런타임

OM1 소개

OM1은 멀티모달 AI 에이전트를 디지털 환경과 물리 로봇 양쪽에서 만들고 배포하기 위한 모듈형 AI 런타임입니다. OpenMind가 개발했으며, 휴머노이드와 사족보행 로봇은 물론 폰 앱, TurtleBot 4 같은 교육용 로봇, 그리고 Gazebo와 Isaac Sim 같은 시뮬레이터까지 하나의 런타임으로 다룹니다. 에이전트는 웹 데이터, 소셜 미디어, 카메라 피드, LIDAR 같은 다양한 입력을 받아들이고, 이동·자율 주행·자연스러운 대화 같은 물리적 행동을 수행합니다. OpenMind는 OM1의 목표를 "다양한 형태(form factor)에 맞춰 쉽게 업그레이드하고 재구성할 수 있는, 사람 중심의 고성능 로봇을 손쉽게 만드는 것"으로 설명합니다.

OM1의 핵심 차별점은 서로 다른 모듈이 사람의 언어(자연어)로 소통한다는 점입니다. 센서 입력을 자연어 캡션으로 바꾸고, 여러 LLM이 이 자연어를 주고받으며 상황을 이해하고 행동을 계획합니다. 이 접근은 OpenMind 팀의 기술 논문 "A Paragraph is All It Takes: Rich Robot Behaviors from Interacting, Trusted LLMs"에 정리되어 있습니다. 논문에 따르면 기본 시스템은 websocket과 ROS2 메시지 패싱으로 통신하는 네 개의 LLM으로 구성되며, 데이터 융합 주기가 1Hz, 중앙 데이터 버스가 사람 뇌 수준인 약 40 bits/s로 동작하는데도 여러 작업에서 풍부한 로봇 행동과 양호한 성능이 나타났습니다.

런타임 구현 측면에서 OM1은 원래 Python으로 만들어졌지만, 현재는 Go로 재작성된 버전이 기본입니다. OpenMind는 더 낮은 지연, 효율적인 동시성, 엣지 장치를 위한 작은 메모리 풋프린트, 그리고 단일 Go 바이너리로 배포할 수 있는 단순함을 Go 전환의 이유로 들고 있습니다. Python 버전은 저장소의 python 브랜치에서 여전히 받을 수 있지만 더 이상 유지보수되지 않습니다. OpenAI, xAI, DeepSeek, Anthropic, Meta, Gemini, NearAI, 로컬 실행용 Ollama 등 여러 LLM과 다수의 VLM(Visual Language Model), TTS(Text-to-Speech)가 사전 구성된 엔드포인트로 제공됩니다.

OM1의 아키텍처: 센서에서 행동까지 자연어로 잇는 파이프라인

OM1의 파이프라인은 위 그림처럼 센서 입력에서 시작해 하드웨어 행동으로 끝납니다. 가장 위에는 Vision, Sound, Battery/System, Location/GPS, LIDAR 같은 센서가 있고, 그 출력은 VLM·ASR·Platform State·Spatial/Nav·3D Env. 같은 모듈을 거쳐 세계를 자연어로 묘사하는 단계(World Captioning)로 들어갑니다.

이렇게 만들어진 자연어 설명은 자연어 데이터 버스(Natural Language Data Bus, NLDB) 를 따라 흐릅니다. 예를 들어 카메라는 "You see Alex, a human. He looks happy and is smiling."처럼, 마이크는 "You just heard: Bits, run to the chair."처럼 텍스트로 표현됩니다. 그다음 데이터 퓨저(Data Fuser)가 시간 정보와 함께 이 조각들을 하나의 상황 설명으로 합칩니다.

합쳐진 상황은 다중 LLM 계획/행동 명령 계층으로 전달됩니다. 이 계층에는 로컬에서 도는 빠른 행동용 LLM(Fast Action LLM)과 Team·Perception·Observation 등으로 구성된 멀티 에이전트(Multi-Agent) 블록이 있습니다. 결정된 행동은 로컬·클라우드 MCP 서버를 거쳐 하드웨어 추상화 계층(Hardware Abstraction Layer, HAL)의 Movement·Sound·Speech·Facial Expression 같은 출력으로 내려갑니다. 전체 흐름에는 메모리와 피드백 경로가 함께 연결되어 있어, 행동 결과가 다시 인식 단계로 돌아옵니다.

OM1의 핵심 기능

OM1이 제공하는 기능은 다음과 같습니다.

  • 모듈형 아키텍처: Go로 작성되어 성능과 통합 편의성을 노립니다.
  • 데이터 입력: 새로운 데이터와 센서를 쉽게 추가할 수 있도록 설계되어 있습니다.
  • 플러그인 기반 하드웨어 지원: API 엔드포인트와 특정 로봇 하드웨어 연결을 플러그인으로 지원하며, ROS2, Zenoh, CycloneDDS 를 연결할 수 있습니다. OpenMind는 새 개발에는 Zenoh 사용을 권장합니다.
  • 사전 구성된 엔드포인트: TTS와 여러 LLM, 여러 VLM이 서비스별로 미리 구성된 엔드포인트로 제공됩니다.
  • 메트릭과 관측성: Prometheus와 Grafana 스택이 사전 구성되어 있어, LLM·ASR 지연 같은 실시간 AI 파이프라인 메트릭을 모니터링할 수 있습니다. Docker가 있다면 OM1 Latency Monitoring 대시보드가 자동으로 준비됩니다.

OM1 빠른 시작

OM1은 웹캠과 마이크를 사용해 음성으로 상호작용하는 conversation 에이전트를 가장 빠른 첫 실행 경로로 안내합니다. macOS 기준 시스템 의존성 설치와 실행은 다음과 같습니다.

# 1. 시스템 의존성 (macOS)
brew install portaudio ffmpeg

# 2. 사전 빌드 바이너리에 실행 권한 부여
chmod +x om1

# 3. OpenMind API 키 설정
export OM_API_KEY="<your_api_key>"

# 4. conversation 에이전트 실행 (macOS)
export DYLD_LIBRARY_PATH="$PWD:$DYLD_LIBRARY_PATH"
./om1 -config ./config/conversation.json5

사전 빌드 바이너리는 linux-amd64, linux-arm64, darwin-arm64, darwin-amd64 용으로 제공되며, 릴리스 아카이브에 config/, knowledge_base/, libzenohc 파일이 포함되어 있어 런타임 자산을 위해 저장소를 클론할 필요가 없습니다. 소스에서 직접 빌드하려면 Go 1.23.0 이상과 make 가 필요하고, make depsmake build 로 빌드합니다. OpenMind 플랫폼은 OMCU라는 연산 단위로 과금하며, 무료 플랜은 매월 50 OMCU를 제공합니다.

OM1과 로봇 하드웨어, 시뮬레이터 연결

OM1은 로봇 하드웨어가 backflip, run, gently pick up the red apple, move(0.37, 0, 0), smile 같은 고수준 동작 명령을 받아들이는 SDK를 제공한다고 가정합니다. 예시는 저장소의 plugins/actions/move/ros2.go에 있습니다. OM1은 USB, serial, ROS2, CycloneDDS, Zenoh, websocket을 통해 이러한 HAL과 연결할 수 있습니다.

자율성을 한 단계 더 끌어올리는 구성으로 BrainPack이 있습니다. BrainPack은 로봇에 직접 장착해 매핑, 물체 인식, 원격 제어, 자가 충전을 한데 묶는 오픈소스 하드웨어입니다. Unitree Go2와 G1에서는 BrainPack과 함께 자율 경로 계획·이동(Navigation), 지속적인 지도 기반 동작을 위한 SLAM(Simultaneous Localization and Mapping), 자동 도킹·충전(Auto Charging), 실시간 인식과 프라이버시 보호 처리를 위한 얼굴 탐지·익명화(Face Detection and Anonymization)를 지원합니다.

물리 하드웨어 없이 테스트하려면 시뮬레이터를 쓸 수 있습니다. 오픈소스 Gazebo는 빠른 프로토타이핑과 대화형 상호작용·행동 테스트를 위한 것으로 Unitree Go2를 지원하고, NVIDIA Isaac Sim은 GPU 가속 기반의 물리 정확 시뮬레이션을 제공하며 Unitree Go2와 G1을 지원합니다. Isaac Sim은 NVIDIA GPU와 CUDA가 필요합니다. OpenMind는 OM1을 Nvidia Thor(JetPack 7.0), Jetson AGX Orin 64GB, Apple M2 Ultra 기반 Mac Studio, Apple M4 Pro 기반 Mac Mini, 일반 Linux 머신에서 개발하고 있습니다.

OM1의 라이선스

OM1은 MIT 라이선스로 공개되어 있어 개인 및 상업적 목적으로 자유롭게 사용할 수 있습니다.

:house: OM1 공식 홈페이지

:books: OM1 문서 사이트

:scroll: OM1 기술 논문

:github: OM1 프로젝트 GitHub 저장소

더 읽어보기




이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다. :hugs:

:pytorch:파이토치 한국 사용자 모임:south_korea:이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일:love_letter:로 보내드립니다!
텔레그램(Telegram)이나 Slack/Discord/Teams/Dooray/GoogleChat 등으로도 새 글 알림을 받으실 수 있습니다. :smiley:

:wrapped_gift: 아래:down_right_arrow:쪽에 좋아요:+1:를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~ :star_struck: