Skip to content

为Autodistill贡献 🛠️

感谢您对参与Autodistill的兴趣!

我们欢迎任何贡献来帮助我们提高 autodistill 的质量并扩大支持的模型范围。

贡献指南

我们欢迎对以下内容的贡献:

  1. 添加一个新的基础模型(请参阅下面的更多指导)。
  2. 添加一个新的目标模型(请参阅下面的更多指导)。
  3. 报告项目中的错误和问题。
  4. 提交新的任务或功能请求。
  5. 改进我们的测试覆盖率。

贡献特性

Autodistill 的设计考虑了模块化。我们希望 autodistill 能跨越不同的模型和问题类型,提供一致的模型蒸馏接口。

我们欢迎为项目添加新模型的贡献。在您开始之前,请确保没有其他贡献者已经开始您想要添加的模型的工作。您可以查看项目README以获取我们关于添加更多模型的路线图。

要添加一个新模型,创建一个新的仓库,该仓库需要 autodistill 并实现 BaseModelTargetModel 类以满足你的任务。你可以使用现有的模型作为指导,以了解如何构建你的代码。

最后,您需要为模型添加文档,并从autodistill的README中链接到它。您可以在docs/models目录中添加一个新页面,描述您的模型及其使用方法。您可以使用现有的模型文档作为如何构建文档的指南。

如何贡献更改

首先,将这个仓库分叉到你自己的GitHub账户。创建一个描述你更改的新分支(即 line-counter-docs)。将你的更改推送到你分叉的分支上,然后提交一个拉取请求到这个仓库。

在创建新函数时,请确保您拥有以下内容:

  1. 函数及所有参数的文档字符串。
  2. 函数文档中的示例。
  3. 在我们的文档中创建了一条记录,以自动生成该函数的文档。

所有的拉取请求将由项目的维护者进行审查。如果需要,我们将提供反馈并要求进行更改。

PR必须通过所有测试和代码检查要求才能合并。

🧹 代码质量

我们在 Makefile 中提供了两个方便的命令,即:

  • make style 来格式化代码
  • make check_code_quality 检查代码质量(基本上是PEP8)

到目前为止, 没有使用 mypy 进行类型检查。请参见 问题

🧪 测试

pytests 用于运行我们的测试。