AI Generated Code and Communication Policy¶
“AI” herein refers to generative AI tools like large language models (LLMs) that can generate, edit, and review software code, create and manipulate images, or generate human-like communication.
Responsibility¶
You are responsible for any code you submit to SymPy’s repositories, regardless of whether it was manually written or generated by AI. You must understand and explain the code you submit as well as the existing related code. It is not acceptable to submit a patch that you cannot understand and explain yourself. In explaining your contribution, do not use AI to automatically generate descriptions, as AI rarely communicates such information correctly and concisely.
Disclosure¶
If you substantially make use of AI to assist in the development of your patch, you must disclose how it was used and what code in the patch is AI generated. We will reject any pull request that does not include the disclosure.
Code Quality¶
Code generated by AI is very often of low quality. Contributors are expected to submit code that meets SymPy’s standards. We will reject pull requests that we deem being “AI slop”. Do not waste developers’ time by submitting code that is fully or mostly generated by AI.
Copyright¶
All code in SymPy is released under the BSD 3-clause copyright license. Contributors to SymPy license their code under the same license when it is included into SymPy’s version control repository. That means contributors must own the copyright of any code submitted to SymPy or must include the BSD 3-clause compatible open source license(s) associated with the submitted code in the patch. Code generated by AI may infringe on copyright and it is the submitter’s responsibility to not infringe. We will reject any pull requests, AI generated or not, where the copyright is in question.
Communication¶
When interacting in communication among developers (email list, discussions, issues, pull requests, etc.) do not use AI to speak for you, other than for translation or grammar editing. If the developers want to chat with a chatbot, they can do so themselves. Human-to-human communication is essential for an open source community to thrive.
New Contributors¶
A high quality patch to SymPy that follows our development practices and includes human communication to get it merged may be assisted by AI, but in our experience, this requires a seasoned developer to properly execute. If you are a new contributor to SymPy, we will most likely close any issues, discussions, or pull requests that are substantially generated by AI. New contributors that are applicants to programs such as Google Summer of Code that do not abide by this AI policy and/or that use AI to produce their application will be disqualified from the application process.