diff --git a/getting-started/generative-ai.rst b/getting-started/generative-ai.rst index e4aa3e7586..0d7aa7a92b 100644 --- a/getting-started/generative-ai.rst +++ b/getting-started/generative-ai.rst @@ -1,13 +1,31 @@ .. _generative-ai: -============= -Generative AI -============= +================================= +Guidelines in using Generative AI +================================= -Generative AI tools have evolved rapidly, and their suggested results can be helpful. As with using any tool, the resulting contribution is -the responsibility of the contributor. We value good code, concise accurate documentation, and avoiding unneeded code -churn. Discretion, good judgment, and critical thinking are the foundation of all good contributions, regardless of the -tools used in their creation. +Generative AI tools are evolving rapidly, and their work can be helpful. As with using any tool, the resulting +contribution is the responsibility of the contributor. We value good code, concise accurate documentation, +and avoiding unneeded code churn. Discretion, good judgment, and critical thinking are the foundation of all good +contributions, regardless of the tools used in their creation. + +Considerations for success +========================== + +Authors must review the work done by AI tooling in detail to ensure it actually makes sense before proposing it as a PR. + +We expect PR authors to be able to explain their proposed changes in their own words. + +Disclosure of the use of AI tools in the PR description is appreciated, while not required. Be prepared to explain how +the tool was used and what changes it made. + +Whether you are using Generative AI or not, keep the following principles in mind for the quality +of your contribution: + +- Consider whether the change is necessary +- Make minimal, focused changes +- Follow existing coding style and patterns +- Write tests that exercise the change Acceptable uses =============== @@ -21,20 +39,10 @@ Some of the acceptable uses of generative AI include: Unacceptable uses ================= -Maintainers may close issues and PRs that are not useful or productive, including -those that are fully generated by AI. If a contributor repeatedly opens unproductive -issues or PRs, they may be blocked. +Maintainers may close issues and PRs that are not useful or productive, regardless of whether +AI was used or not. -Considerations for success -========================== -- While AI assisted tools such as autocompletion can enhance productivity, they sometimes rewrite entire code blocks instead of making small, focused edits. - This can make it more difficult to review changes and to fully understand both the original intent of the code and the rationale behind the new modifications. - Maintaining consistency with the original code helps preserve clarity, traceability, and meaningful reviews and also helps us avoid unnecessary code churn. -- Sometimes AI assisted tools make failing unit tests pass by altering or bypassing the tests rather than addressing the underlying problem in the code. - Such changes do not represent a real fix. Authors must review the work done by AI tooling in detail to ensure it actually makes sense before proposing it as a PR. -- Keep the following principles for the quality of your contributions in mind whether you use generative AI or not: - - - Consider whether the change is necessary - - Make minimal, focused changes - - Follow existing coding style and patterns - - Write tests that exercise the change +If a contributor repeatedly opens unproductive issues or PRs, they may be blocked. + +Sometimes AI assisted tools make failing unit tests pass by altering or bypassing the tests rather than addressing the +underlying problem in the code. Such changes do not represent a real fix and are not acceptable. diff --git a/index.rst b/index.rst index 18aca244e1..af8a612df4 100644 --- a/index.rst +++ b/index.rst @@ -40,6 +40,7 @@ Guide for contributing to Python: * :ref:`rst-primer` * :ref:`translating` * :ref:`devguide` + * :ref:`generative-ai` - * :ref:`setup` * :ref:`help` @@ -49,6 +50,7 @@ Guide for contributing to Python: * :ref:`communication` * :ref:`gitbootcamp` * :ref:`devcycle` + * :ref:`generative-ai` - * :ref:`tracker` * :ref:`triaging`