ROS-LLM專案是一個用於具體智慧應用的ROS框架。它可以為任何在 ROS 上運行的機器人提供自然語言互動以及基於大型模型的機器人運動和導航控制。
ROS-LLM 可讓您利用基於大型語言模型的功能(例如 GPT-4 和 ChatGPT)來進行機器人決策和控制。
該框架被設計為易於擴展。只需為您的機器人提供一個功能接口,按照提供的範例,您就可以在十分鐘內整合並使用 ROS-LLM。
ROS-LLM 提供了一個簡單的解決方案,可以快速創建與任何機器人的互動和控制體驗。
? ROS 整合:與機器人作業系統 (ROS) 順利交互,以實現擴展的機器人控制。
?大型語言模型支援:利用 GPT-4 和 ChatGPT 來增強決策和任務管理。
自然互動:透過對話參與促進與機器人的直覺交流。
靈活控制:利用基於 LLM 的系統執行基於語言模型解釋的運動和導航等任務。
?簡化的可擴展性:為無縫機器人功能整合提供簡單的介面。
快速開發:快速創建互動式機器人控制體驗,有時不到十分鐘。
教學範例:提供全面的教學和範例,以便於理解和實施。
️歷史記錄儲存:保留本地聊天記錄,方便查看和參考。
請依照以下說明設定 ROS-LLM:
1.克隆儲存庫:
使用以下命令克隆儲存庫。
git clone https://github.com/Auromix/ROS-LLM.git
2.安裝依賴項:
導覽至llm_install
目錄並執行安裝腳本。
cd ROS-LLM/llm_install
bash dependencies_install.sh
3. 配置 OpenAI 設定:
如果您沒有 OpenAI API 金鑰,您可以從 OpenAI Platform 取得一個。使用下面的腳本配置您的 OpenAI API 金鑰。
cd ROS-LLM/llm_install
bash config_openai_api_key.sh
4. 配置 AWS 設定(可選):
對於雲端自然互動功能,請配置 AWS 設定。如果您喜歡使用本機 ASR,則可以跳過此步驟。
對於低效能的邊緣嵌入式平台,建議使用ASR雲端服務來減輕運算壓力,對於高效能的個人主機,建議使用本地ASR服務來加快回應速度
cd ROS-LLM/llm_install
bash config_aws.sh
4. 配置 OpenAI Whisper 設定(可選):
對於本地自然互動功能,請設定 OpenAI Whisper 設定。如果您喜歡使用雲端 ASR,則可以跳過此步驟。
對於低效能的邊緣嵌入式平台,建議使用ASR雲端服務來減輕運算壓力,對於高效能的個人主機,建議使用本地ASR服務來加快回應速度
pip install -U openai-whisper
pip install setuptools-rust
5. 建構工作區:
導航到您的工作區目錄並建立工作區。
cd < your_ws >
rosdep install --from-paths src --ignore-src -r -y # Install dependencies
colcon build --symlink-install
6. 運行演示:
取得設定腳本並使用雲端 ASR 啟動 Turtlesim 演示。
source < your_ws > /install/setup.bash
ros2 launch llm_bringup chatgpt_with_turtle_robot.launch.py
開始聽
ros2 topic pub /llm_state std_msgs/msg/String " data: 'listening' " -1
若要將框架與您自己的機器人一起使用,請修改llm_robot
和llm_config
以適合您的機器人的規格。這允許您自訂機器人的行為。
我們不斷努力增強 ROS-LLM,以更好地服務社區中的開發人員和機器人專家。以下是我們計劃在即將到來的更新中進行的關鍵開發:
新增代理機制可以很好地劃分長序列任務。
我們計劃為機器人添加一個回饋機制,以接收來自外部功能的資訊。這將極大地幫助基於模型的決策過程。
機器人導航的新介面也在醞釀中。它將能夠在面向導航的任務中利用該框架。
其他感測器輸入介面的添加是另一項重大發展。這將把環境感知納入模型決策前提,為避障等功能做好準備。
我們的目標是透過整合允許視覺輸入的模型(例如 Palm-e)來擴展 ROS-LLM 的功能。這將使先進的電腦視覺技術能夠用於更好的環境互動。
最後但並非最不重要的一點是,我們將專注於框架的持續優化。我們致力於提高ROS-LLM的合理性和可擴展性,讓開發者更容易根據自己的需求客製化和擴展框架。
請密切關注此存儲庫的更新。隨時歡迎您的建議和貢獻!
如果您覺得這個專案有用,請考慮在 GitHub 上給它一個️星星!您的支持有助於我們改進專案並鼓勵進一步發展。不要忘記與您的朋友和同事分享,他們可能會受益。感謝您的支持!
歡迎貢獻!請在提交拉取請求之前閱讀貢獻指南。
Copyright 2023 Herman Ye @Auromix
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.