Skip to content

Commit bb243f4

Browse files
committed
Introduce an initial LLM Usage Policy
Driven by our prior discussion, this lays out an initial policy which is meant to be simple to understand. After consideration, and in particular looking at the current `pip` contribution policy[^1], I have taken us back to the original two "columns" I suggested for our policy: "Disclosure" and "Ownership". The policy is stated as meant for "LLM Generated Contributions". Although during earlier discussion I suggested that we avoid singling out these tools, on review (especially with some recent PRs), I am not sure that is wise. I would like it to be very clear to LLM users that we have some additional standards for them -- which I view as offsetting the ease with which they can spam projects and do harm. The policy states that it is "to protect our maintainers as well as our contributors"; hopefully this is a clear hint that the maintainers even _need_ some level of protection, and will help new contributors understand why we have a policy. Echoing some prior discussion about "Don't let AI speak for you" / "Don't let AI think for you", there's a line included that draws a distinction between "typing" and "thinking". To give us a clear out, in case we have truly problematic github users show up, the policy calls out "extreme cases" as spam/slop. Finally, the policy itself links back to the original discussion as an open invitation for anyone who wants to advocate for us refining this policy. [^1]: It's very short. See: https://pip.pypa.io/en/stable/development/contributing/
1 parent 68f7c52 commit bb243f4

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

CONTRIBUTING.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,25 @@ documentation corrections or contributions that do not change pip-tools itself.
1919

2020
Contributions following these guidelines are always welcomed, encouraged and appreciated.
2121

22+
### LLM Generated Contributions
23+
24+
Although contributors are free to use whatever tools they like, `pip-tools` has a policy regarding LLM contributions to protect our maintainers as well as our contributors.
25+
26+
1. **Disclosure**: contributors should indicate when they have use an LLM to generate a part of their work.
27+
You may also be able to help maintainers understand what they are looking at by sharing how you used a tool, e.g. what prompts you used.
28+
29+
2. **Ownership**: it is the contributor's responsibility to understand submitted code and ensure, to the best of their ability, that it meets project standards.
30+
In particular, contributors need to be prepared to discuss their changes during review.
31+
32+
Overall, our position is that an LLM may do the _typing_ for you but it should not do the _thinking_.
33+
34+
:::{caution}
35+
In extreme cases, slop PRs may be closed as spam.
36+
:::
37+
38+
_The [rationale and discussion](https://github.com/jazzband/pip-tools/discussions/2278) behind this policy is open and public. Feel free to raise new issues or make suggestions there._
39+
40+
2241
## Project Release Process
2342

2443
Releases require approval by a member of the [`pip-tools-leads` team].

0 commit comments

Comments
 (0)