Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions content/contributing/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@
Thank you for considering contributing to Pallets! There are many ways to
contribute to an open source project, see the next section for more ideas.

All contributors and contributions must follow our our
[Code of Conduct](../code-of-conduct.md) and [LLM and AI Policy](llm-ai.md).

If you would like to ask a question or open an issue or feature request, see
these guides:

Expand Down
76 changes: 76 additions & 0 deletions content/contributing/llm-ai.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# LLM and AI Policy

Pallets is affected by a large increase in low quality contributions generated
with LLM (large language model) or "AI" (artificial intelligence) tools. This
adds to maintainer burden and reduces their available time. Our policy on these
tools focuses on the human aspect of contribution and growth.

## Summary

* This policy applies to all interactions with our projects and community, not
only code and pull requests.
* We value contributions that are genuinely understood, created, and
communicated by humans.
* If your contribution appears generated by LLM or AI tools, or you attempt to
obfuscate that, it will be closed and you are likely to be blocked.
* Perfection is never required. Your own words and abilities are enough. Do not
use LLM tools to translate or "improve" what you say and do.
* You must carefully consider social, environmental, and quality issues with
LLMs before deciding to use them.

## Explanation

This policy applies to all interactions with our projects and community, not
only code and pull requests. This includes code, documentation, tests, PR
descriptions, comments, reviews, answers, and all other interactions.

We strongly encourage everyone to participate and contribute without using LLM
or AI tools. If your contribution looks like it was generated by such tools, or
you attempt to obfuscate that, it will be closed and you are likely to be
blocked.

This policy focuses on trust and quality, but there are numerous other
issues with the social, ethical, resource, and environmental impacts of LLM
development and use. Deciding to use LLM tools associates you to some degree
with all these issues, and is a personal moral decision you must carefully
consider first.

The open source participation model is based on trust. Maintainers build trust
in new contributors over time as they recognize good contributions from them;
contributors build trust in projects based on the activity they observe as well.
Maintainers lose trust in a contributor when they recognize common patterns of
low quality participation or continued low quality contributions.

When you choose to use an LLM tool to generate output, you look like every other
person who did so, rather than a unique contributor. Therefore, you inherit the
distrust maintainers have based on every prior low quality interaction that
looked exactly like yours.

You may feel pressured to use these tools for many reasons. LLM output
looks professional and believable by design. It can be hard as an individual to
see issues with what it generates. As maintainers who see this constantly, the
context we have is very different, and it becomes much easier to spot. At scale,
even though any one LLM-generated contribution may be correct, we do not have
the time or energy to distinguish it from the 10 incorrect ones that look just
like it.

If you are a new contributor, do not use LLM or AI tools to contribute at all;
you do not have the trust or experience to take responsibility for what is
generated. If you are someone who is familiar to the maintainers, and know that
they already trust you to make high quality contributions, your contribution
must still genuinely be understood and created personally by you, regardless of
what tools you may use to assist you.

Your own abilities are enough. From more than a decade of experience, we know
that everyone is capable of taking an issue, debugging it, and coming up with a
fix. It's ok if that process requires you to ask us questions. It is ok if that
process takes time; work on your schedule. It is ok if we have significant
review feedback. It is ok if we decide to close an issue or PR after you work on
it, that's not a negative outcome. High quality does not require perfection.

Your own words are enough. It is ok if your writing has typos and does not have
perfect spelling and grammar. It is ok if English is not your primary language;
use a traditional translation tool if needed. We are used to reading all that,
and value hearing from you as directly as possible. Putting your words through
an LLM tool for translation or "improvement" will produce output you didn't
intend and will be unable to review.
11 changes: 6 additions & 5 deletions content/contributing/pr.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,14 @@ set up your development environment and run tests. This guide assumes you've
done that and used the GitHub CLI to fork and clone the repository and add the
upstream remote.

## AI-Generated Contributions
## LLM-Generated Contributions

AI-generated PRs and issues are closed on sight, without review or discussion.
This applies regardless of code quality or correctness.
Using LLM or AI tools to generate PRs is not allowed. They are closed on sight,
without review or discussion. This applies regardless of code quality or
correctness. See our [LLM and AI Policy](llm-ai.md).

AI-generated contributions must not be revived, cleaned up, or used as a base
for further work. Starting a new PR "on top of" a closed AI submission counts
LLM-generated contributions must not be revived, cleaned up, or used as a base
for further work. Starting a new PR "on top of" a closed LLM submission counts
as laundering and will be treated the same way.

## Create a Branch
Expand Down
Loading