ROS-LLM is a framework designed for embodied intelligence applications in ROS. It allows natural language interactions and leverages Large Language Models (LLMs) for decision-making and robot control. With an easy configuration process, this framework allows for swift integration, enabling your robot to operate with it in as little as ten minutes.
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 |
ROS-LLM
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 平台 获取。使用以下脚本来配置你的 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 <你的工作区>
rosdep install --from-paths src --ignore-src -r -y # 安装依赖
colcon build --symlink-install
6. 运行演示:
源化设置脚本,并使用云端 ASR 启动 TurtleSim 演示。
source <你的工作区>/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,以更好地服务于社区中的开发者和机器人专家。以下是未来更新中计划的关键开发:
- 代理机制
添加代理机制以更好地分割长序列任务。
- 外部函数反馈通道
我们计划添加一种让机器人从外部功能接收信息的机制。这将极大地辅助模型基
👋致用户
如果您觉得这个项目对您有所帮助,请考虑在GitHub上给它点一个✨星标!您的支持能帮助我们改进项目,并激发更进一步的发展。别忘了也把它分享给可能受益的朋友和同事哦。感谢您的支持!
🏆 贡献指南
欢迎贡献!在提交Pull Request之前,请先阅读贡献指南。
📄 许可证
版权所有 2023 额尔赫尼·叶@Auromix
根据Apache License 2.0(“许可”)授权;
除非遵守许可,否则您不得使用此文件。
您可以在此处获取许可的副本:http://www.apache.org/licenses/LICENSE-2.0
除非根据适用法律要求或书面同意,软件
在许可下分发是基于“原样”基础的,
没有任何明示或暗示的保证或条件。
参阅许可以了解特定的权限和限制规定。
项目介绍
ROS-LLM 是专为 ROS 中的具身智能应用而设计的框架。它支持自然语言交互,并利用大型语言模型(LLMs)进行决策和机器人控制。通过简单的配置过程,该框架能够快速集成,使您的机器人仅需十分钟即可与之协同运作。【此简介由AI生成】
定制我的领域