OpenMind/OM1

Modular AI HAL (Hardware Abstraction Layer) for Robots

OpenMind OM1 – 用于机器人的模块化 AI 运行时

它是什么

  • OM1 是一个 运行时(您运行的软件),让您可以构建 多模态 AI 代理——即能看、听、说并采取行动的程序——并将其连接到机器人或虚拟环境中。
  • 核心使用 Go 编写,旨在边缘设备(Jetson、Raspberry Pi 等)上实现低延迟、低内存占用的运行。旧版的 Python 版本仍然存在但已弃用。

主要功能

功能 运作方式
模块化架构 用于新传感器、动作和硬件适配器的插件系统。
输入处理 网络摄像头、麦克风、LIDAR、网络馈送、社交媒体流等。
硬件适配器 插件通过 ROS 2、Zenoh、CycloneDDS、USB/串口或 websockets 进行通信。
LLM/VLM 集成 针对 OpenAI、Anthropic、Gemini、Ollama、DeepSeek、Meta、NearAI 和视觉语言模型的预配置端点。
可观测性 捆绑的 Prometheus + Grafana 堆栈可监控管线延迟(LLM、ASR 等)。
机器人功能 通过可选的 BrainPack,您可以获得 SLAM、自主导航、自动充电和人脸去标识化功能。

典型工作流程

  1. 安装依赖项 – portaudio & ffmpeg(音频/视频)以及 Go 工具链。
  2. 获取二进制文件(或从源代码构建)并设置您的 OpenMind API 密钥。
  3. 运行配置 – 例如 config/conversation.json5 会启动一个“对话”代理,使用网络摄像头/麦克风,将数据发送到 LLM,并通过 TTS 回复。
  4. 查看日志 – 终端机会显示状态更新;可选的 Grafana 仪表板可可视化延迟指标。
  5. 扩展 – 通过将 Go 文件放入 plugins/ 并在 JSON5 配置中引用它们,来新增 inputs(传感器插件)或 actions(机器人动作、自定义指令)。

支持的机器人与模拟器

  • 实体:Unitree Go2、G1、Deep Robotics M20 Pro、LimX Tron,以及任何公开高阶 SDK(ROS 2、Zenoh 等)的机器人。
  • 模拟器:Gazebo(用于快速原型设计)和 NVIDIA Isaac Sim(GPU 加速物理模拟)。

为什么选择 Go?

  • 更快的推理管线、高效的并发处理、单一二进制文件部署,以及适合边缘计算的极小内存占用。

快速入门

# macOS example
brew install portaudio ffmpeg
curl -L -o om1.tar.gz <release-url>
tar xf om1.tar.gz
chmod +x om1
export OM_API_KEY=YOUR_KEY
./om1 -config ./config/conversation.json5

您应该会看到代理启动、处理网络摄像头/音频、调用所选的 LLM 并说出响应。

扩展性

  • 动作插件位于 plugins/actions/ 下。示例:unitree/go2/autonomy/move.go 将高阶 move 指令通过 Zenoh 转换为 ROS 2 cmd_vel 消息。
  • 输入插件可以通过实现预期的接口并在配置中注册,来为新传感器(例如 ZED 深度相机)新增支持。

文档与社区

授权

  • MIT – 您可以自由使用、修改和发布基于 OM1 的代理。

总结:OM1 是一个真正的生产级框架,用于构建 AI 驱动的机器人和模拟器,专注于多模态感知、LLM/VLM 推理和实时驱动,并封装为高性能的 Go 运行时。

相关

  • 项目
  • 项目
  • 项目
  • 项目