stdlib-js / stdlib-js/stdlib

[RFC]: Add guidance concerning AI usage

未关闭
#9,347 23 条评论 2 个 reaction 已指派 0 人 在 GitHub 查看
Governance Needs Discussion RFC
主要语言
JavaScript
星标
6k
派生
1.3k
平均合并
1 天 3 小时
30 天内合并 PR
611

描述

### Description

This RFC proposes we add guidelines regarding the usage of AI/LLMs in the project as a whole, and in making contributions to the codebase. This could appear in brief in CONTRIBUTING and point to a longer, more explicit policy, or simply exist as its own entity.

## Guiding principles

1. Maintainer capacity is a limiting resource in open source. All contributions should respect the time and effort maintainers put into reviewing contributions.
2. Indiscriminate use of AI to generate code can lead to low-quality contributions that can impose significant maintainer burden.
3. This project is licensed under the Apache-2.0 License, and is subject to its terms--including the disclosure of any copyrighted materials included in submissisions. All contributions are subject to the [Developer's Ceritifcate of Origin](https://github.com/stdlib-js/stdlib/blob/develop/CONTRIBUTING.md#developers-certificate-of-origin-11) already in our contributing guidelines.
4. Regardless of whether or not AI is used, contributors should understand and be able to explain the code they are submitting.
5. There *are* beneficial, permissible uses of AI in contributing to this project. For example, use AI to do R&D, learn to navigate the codebase, or suggest potential improvements to your code (including things like spelling and adherence to project guidelines).
6. If contributors *do* use AI to assist in their contribution, they must disclose this in their pull request or issue. This should include a description of how AI was used and what specific contributions it made.
7. The legal landscape around AI-generated content is still evolving, and (6) will allow the project to adapt to future changes.
8. Using AI to resolve issues marked as `good first issue` is not permitted (i.e. we want you to build a mental model of the codebase yourself, and get familiar with the mechanics of how the process works).

## Short-version polcy

Adapted from [Matplotlib's Restriction on Generative AI Usage][matplotlib-genai-policy], and not inclusive of all the items listed in guiding principles:

We expect authentic engagement in our community.

* Do not post output from Large Language Models or similar generative AI as comments on GitHub or Zulip, as such comments tend to be formulaic and low-value.

* If you use generative AI tools as an aid in developing code or documentation changes, ensure that you fully understand the proposed changes and can explain why they are the correct approach, and disclose how AI was used in your pull request.

Make sure you have added value based on your personal competency to your contributions. Just taking some input, feeding it to an AI and posting the result is not of value to the project, or your growth as a developer.

## Inspired by/useful resources

* [ASF Generative Tooling Guidance](https://www.apache.org/legal/generative-tooling.html)
* Fedora Council's [AI-Assisted Contribution Policy](https://docs.fedoraproject.org/en-US/council/policy/ai-contribution-policy/)
* [scikit-learn Automated Contributions Policy](https://scikit-learn.org/stable/developers/contributing.html#automated-contributions-policy)
* [OpenInfra Foundation Policy for AI Generated Content](https://openinfra.org/legal/ai-policy)
* Linux Foundation [Guidance Regarding Use of Generative AI Tools for Open Source Software Development](https://www.linuxfoundation.org/legal/generative-ai)

[matplotlib-genai-policy]: https://matplotlib.org/devdocs/devel/contribute.html#restrictions-on-generative-ai-usage

### Related Issues

_No response_

### Questions

No. I'd like feedback (of course), and will draft a PR with a more substantive policy, but thought the issue would be a more useful place for preserving the broader discussion.

### Other

No.

### Checklist

- [x] I have read and understood the [Code of Conduct](https://github.com/stdlib-js/stdlib/blob/develop/CODE_OF_CONDUCT.md).
- [x] Searched for existing issues and pull requests.
- [x] The issue name begins with `RFC:`.

贡献指南

打开贡献指南

调研方向

Start by reviewing CONTRIBUTING.md and the guiding principles and external policies linked in the RFC. Draft a substantive project-wide AI usage policy, deciding whether it belongs in CONTRIBUTING.md or a separate document, and consider the work complete when the policy and its contribution-disclosure guidance are ready for maintainer review.

由索引模型根据 Issue 内容生成。

评估

领域
documentation
Issue 类型
文档
难度
5/5
预计耗时
一周以上
活跃度
冷清
描述清晰度
需要澄清
新手友好度
30/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。