RAI
適用於 ROS 2 機器人與實體 AI、不綁定供應商的代理框架
授權條款
Apache-2.0
概述
RAI 是一個不綁定特定供應商、適用於實體 AI 的代理式框架,由 Robotec.ai 以 ROS 2 工具打造,自 2024 年中起持續維護。它並非單一代理,而是一組可自由組合的套件:rai core 負責多代理系統與人機互動,rai_whoami 從機器人的文件、圖片與 URDF 合成其自我描述,rai_asr 與 rai_tts 負責語音輸入與輸出,rai_perception 負責開放集合物體偵測,rai_sim 用於連接模擬器,rai_bench 用於評測代理與模型,rai_nomad 則負責導航。展示在真實平台上執行——一台自主果園曳引機、一支以語言驅動操作的 Franka Panda,以及一台進行導航的 Husarion ROSbot XL。
使其與眾不同的設計選擇就寫在名稱裡:不綁定供應商。RAI 不預設特定的模型供應商,也不預設特定的機器人——它只預設 ROS 2,並由此向上建構。這使它成為當前這一批代理式機器人框架中最保守的一個,而「保守」正是恰當的形容:它自 2024 年 6 月起持續維護,比同類專案的浪潮早了一年多,這一點也反映在其結構上。語音、感知、模擬與評測是各自具有邊界的獨立套件,而不是單一整體架構中的功能。
rai_whoami 是值得特別一提的部分,因為它處理了其他框架大多忽略的問題:驅動機器人的代理需要知道這台機器人是什麼。它從一個結構化目錄中的文件、圖片與 URDF 擷取並合成機器人形態資訊,對於這個通常留給提示工程處理的問題,提出了具體的答案。rai_bench 之所以重要也是同樣的道理——自帶評測套件的框架,代表它預期自己會被衡量。在列出的套件中,只有用於以具身資料微調語言模型的 rai_finetune,在路線圖上仍未勾選完成。
為何重要
機器人代理式框架在 2026 年一湧而出,其中大多數只有幾個月的歷史。RAI 早在這波浪潮之前就已開始,出自一家機器人軟體公司而非實驗室,並建立在 ROS 2 之上,而不是圍繞特定模型。對於要決定以什麼為基礎進行開發、而非只是想閱讀相關資訊的讀者來說,長期維護與供應商中立是真正重要的兩項特性,而它是此類別中同時具備兩者的專案。
解決的問題
將語言模型連接到機器人,通常意味著要自行撰寫銜接程式:語音、感知、對這台機器人究竟是什麼的描述,以及某種判斷結果是否可行的方法。RAI 將這些提供為可個別採用的獨立 ROS 2 套件,無須綁定特定模型供應商或機器人供應商。
重點
- 設計上不綁定供應商:不預設模型供應商,不預設機器人,建立在 ROS 2 工具之上
- 由獨立套件組成——core、whoami、asr、tts、perception、sim、bench、nomad——而非單一整體架構
- rai_whoami 從機器人的文件、圖片與 URDF 合成其自身的機器人形態描述,這是多數代理框架留給提示工程處理的部分
- rai_bench 隨框架本身附帶一套針對代理、模型、工具與模擬器的評測套件
- 展示在真實平台上執行:一台自主果園曳引機、一支搭配 Grounded SAM 2 的 Franka Panda,以及一台 Husarion ROSbot XL
- 自 2024 年 6 月起持續維護,比 2026 年那波同類框架早了一年以上
- 天生多模態——語音輸入與輸出、視覺與文字介面都是一等功能
適用對象
- 為現有機器人軟體堆疊加入自然語言互動的 ROS 2 團隊
- 建構多代理或多模態機器人行為、又不想被單一模型供應商綁定的任何人
- 需要代理行為評測套件、而不只是執行環境的研究人員
- 在 ROS 2 上開發移動機器人、機器手臂或田間機械的系統整合商
限制
- 全程預設使用 ROS 2——尚未使用 ROS 2 的機器人在這裡沒有可行的途徑
- 涵蓋範圍廣有其代價:八個成熟度各異的套件,且 rai_finetune 在路線圖上仍未勾選完成
- 展示以模擬為主;果園曳引機與 ROSbot XL 的情境呈現的是框架在模擬器中的運作,而非實際部署機器的影像
- 不綁定供應商意味著模型與金鑰需由你自行提供,因此執行並非免費,品質也取決於框架不會替你做的選擇
- 文件放在獨立網站而非儲存庫中,因此光看 README 無法得知如何開始
- 這種規模的框架是一項承諾;採用其中一個套件很容易,採用整套架構則不然