跳转至

如何为 🤗 LeRobot 做贡献

欢迎每个人做出贡献,我们重视每个人的贡献。代码并不是帮助社区的唯一方式。回答问题、帮助他人、联系交流和改进文档都是非常有价值的。

无论您选择以何种方式做出贡献,请注意尊重我们的行为准则和我们的 AI 政策

贡献方式

您可以通过多种方式做出贡献:

  • 修复问题: 解决 bug 或改进现有代码。
  • 新功能: 开发新功能。
  • 扩展: 实现新的模型/策略、机器人或仿真环境,并将数据集上传到 Hugging Face Hub。
  • 文档: 改进示例、指南和文档字符串。
  • 反馈: 提交与 bug 或期望的新功能相关的工单。

如果您不确定从哪里开始,请加入我们的 Discord 频道

开发环境设置

要贡献代码,您需要设置开发环境。

1. Fork 和克隆

在 GitHub 上 fork 仓库,然后克隆您的 fork:

git clone https://github.com/<your-handle>/lerobot.git
cd lerobot
git remote add upstream https://github.com/huggingface/lerobot.git

2. 环境安装

请遵循我们的安装指南进行环境设置和从源代码安装。

运行测试和质量检查

代码风格(Pre-commit)

安装 pre-commit 钩子以在提交前自动运行检查:

pre-commit install

要在所有文件上手动运行检查:

pre-commit run --all-files

运行测试

我们使用 pytest。首先,通过安装 git-lfs 确保您拥有测试工件:

git lfs install
git lfs pull

运行完整测试套件(这可能需要安装额外依赖):

pytest -sv ./tests

或在开发期间运行特定的测试文件:

pytest -sv tests/test_specific_feature.py

提交 Issue 和 Pull Request

使用模板填写必填字段和示例。

  • Issue: 遵循 issue 模板
  • Pull request:upstream/main 上进行 rebase,使用描述性分支名称(不要在 main 上工作),在本地运行 pre-commit 和测试,并遵循 PR 模板

[!IMPORTANT] 社区审查政策:为了帮助扩展我们的工作并培养协作环境,我们要求贡献者在自己的 PR 获得关注之前至少审查一个其他人的开放 PR。这种共同责任可以成倍增加我们的审查能力,并帮助每个人的代码更快地合并!

一旦您提交了 PR 并完成了同行审查,LeRobot 团队的成员将审查您的贡献。

感谢您为 LeRobot 做出贡献!