QGIS 通过 QEP428 禁止 AI 辅助贡献
QGIS bans AI assisted contributions
QGIS 通过 QEP428 提案,将 AI 政策改为严格的 NOT ALLOWED,由 nyalldawson 提交并于 2026 年 10 月 7 日合并进 QGIS-Enhancement-Proposals 仓库。
原文呈现社区内部对禁令理由、措辞模糊处和后续放宽路径的直接讨论,读者可以借此理解开源项目应对 AI 贡献压力的真实权衡。
导航菜单
外观设置
平台
*
AI 代码创作 * GitHub Copilot 用 AI 编写更好的代码 * GitHub Copilot 应用 从问题到合并直接指挥智能体 * MCP Registry 集成外部工具
*
开发者工作流 * Actions 自动化任何工作流 * Codespaces 即时开发环境 * Issues 规划并跟踪工作 * 代码审查 管理代码变更 * 代码质量 在合并时强制保证质量
*
应用安全 * GitHub Advanced Security 查找并修复漏洞 * 代码安全 在构建时保护你的代码 * 机密保护 在泄露发生前阻止它
*
探索 * 为什么选择 GitHub * 文档 * 博客 * 更新日志 * 市场
解决方案
*
按公司规模 * 企业 * 中小型团队 * 初创公司 * 非营利组织
*
按使用场景 * 应用现代化 * DevSecOps * DevOps * CI/CD * 查看所有使用场景
*
按行业 * 医疗保健 * 金融服务 * 制造业 * 政府 * 查看所有行业
资源
*
按主题探索 * AI * 软件开发 * DevOps * 安全 * 查看所有主题
*
按类型探索 * 客户故事 * 活动与网络研讨会 * 电子书与报告 * 商业洞察 * GitHub Skills
*
支持与服务 * 文档 * 客户支持 * 社区论坛 * 信任中心 * 合作伙伴
开源
*
*
项目 * Security Lab * 维护者社区 * GitHub Stars * 归档计划
*
企业
*
企业解决方案 * 企业平台 AI 驱动的开发者平台
*
可用附加组件 * GitHub Advanced Security 企业级安全功能 * Copilot for Business 企业级 AI 功能 * 高级支持 企业级 24/7 支持
搜索/
外观设置
你已通过另一个标签页或窗口登录。重新加载以刷新你的会话。你已在另一个标签页或窗口中退出登录。重新加载以刷新你的会话。你在另一个标签页或窗口中切换了账户。重新加载以刷新你的会话。关闭此提示
{{ message }}
仓库导航
更多项目
添加 QEP428:不允许 AI 贡献 - #387
#387
已合并
nyalldawson将 2 个提交合并到
qgis:masterqgis/QGIS-Enhancement-Proposals:master 来自
nyalldawson:qep_428nyalldawson/QGIS-Enhancement-Proposals:qep_428 复制头分支名称到剪贴板
2026年10月7日
+7-140 行变更:7 处新增 & 140 处删除
对话 30(30)提交 2(2)检查 0(0)文件变更 1(1)
已合并
添加 QEP428:不允许 AI 贡献#387
nyalldawson将 2 个提交合并到
qgis:masterqgis/QGIS-Enhancement-Proposals:master 来自
nyalldawson:qep_428nyalldawson/QGIS-Enhancement-Proposals:qep_428 复制头分支名称到剪贴板
对话
nyalldawson 评论于 2026年9月24日
复制链接 复制 Markdown
贡献者
后续讨论见 https://lists.osgeo.org/pipermail/qgis-developer/2026-September/068576.html。
这正式将 AI 政策改为严格的“不允许”政策。
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
12 位 geomenke、timlinux、vpicavet、nirvn、netthier、u-cav、adamjstewart、kgjenkins、gacarrillor、elpaso 等 12 人用竖起大拇指表情回应
1 位 Geo-Jagaimo 用眼睛表情回应
所有回应
12 个回应
1 个回应
Add QEP428: No ai contributions permitted
已验证
已验证
此提交已使用提交者的已验证签名签名。
nyalldawson Nyall Dawson
GPG 密钥 ID:C065581C2BD8992C
已验证
d05dd95
nyalldawson 添加了 PolicyIn DiscussionQEP 当前处于讨论阶段的标签 2026年9月24日
haubourg 评论于 2026年9月24日
复制链接 复制 Markdown
成员
嗨,也许这个强硬立场值得稍微说明一下背景,即为什么我们想比之前的“人在回路”政策更进一步
- 来自外部贡献者的 AI 使用给我们的维护者肩上带来了巨大且难以承受的压力,而在 LLM 时代之前,他们的工作本就已经很艰难
- AI 流量的增长速度远超人类审查所能认真应对的程度,导致要么是未审查的 PR 列表越来越长,要么是代码审查不充分和质量问题。这两者都是我们项目中不想要的。
- 自由软件社区建立在人际网络之上。QGIS 之所以受到组织信任,是因为他们知道自己可以回馈贡献,可以聘请贡献者提供支持、培训和功能开发。作为一个社区项目,这是我们真正想要保护的东西,并保持足够的带宽来欢迎人类的贡献。
所以,基于这个原因,我强烈支持 +1。
非常感谢你开启这个 QEP,考虑到你所处的压力环境,@nyalldawson,非常感激。
我想开启另一个关于将 LLM 用于审查、审计和安全目的的话题,但我认为这是一个非常独立的讨论串,我们会在用户大会上先展开讨论,然后再进行任何正式讨论。事情发展得太快了,让我们先解决这个 QEP。
7 位用户 vpicavet、Djedouas、u-cav、adamjstewart、PeterBrodersen、zmspp9 和 tannenfreund87 点了赞
所有回应
7 个回应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
timlinux 评论于 2026年9月24日
复制链接 复制 Markdown
成员
谢谢你 @nyalldawson——希望这样一段简短的段落而不是长篇大论能消除任何困惑!
2 位用户 geomenke 和 ismailsunni 点了赞
所有回应
2 个回应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
vpicavet 评论于 2026年9月24日
复制链接 复制 Markdown
成员
这是否包括对 issue 内容、评论、PR 的任何贡献?
另外,我们至少也应该把 QEP 仓库包括进去。
所有回应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
Amalvir 评论于 2026年9月24日
复制链接 复制 Markdown
你好,
我直接受到这项新政策的影响,我也 +1。
当我创建我的 2 个 AI 辅助的回归修复 PR 来调查 bug 的原因、建议修复并审查代码时,我没有意识到这会给 QGIS 本已脆弱的审查者社区带来怎样的伤害。
我显然还没有足够的能力去修复像 QGIS 这样复杂项目中的 bug,但 LLM 给了你一种错觉,让你以为这是可能的。几个 token 之后,bug 就修好了。这样做,我们破坏了审查者和贡献者之间的信任契约。这个契约是:要为这么大的项目做贡献,你得知道自己在做什么。
我猜还有第二个影响,但我在网上没读到太多:通过提供这种便利,使用 AI 的贡献者学到的东西非常少/几乎没有,也没有在项目中积累自己的技能。他们永远无法真正指望自己成为审查者,社区也就停滞了。
这是一个充满热情的开源用户但却是初学者开发者的观点,试图在当今这个 AI 并没有真正让事情变得更轻松的世界里找到自己的位置。让我们先学会走路,再学跑步。
4 位用户 geomenke、u-cav、elpaso 和 tannenfreund87 点了赞
所有回应
4 个回应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
rouault-on-strike 审查了 2026年9月24日
评论线程qep-408-ai-tool-policy.md显示已解决 隐藏已解决
哎呀!
加载时出错。请重新加载此页面。
haubourg 评论于 2026年9月24日
复制链接 复制 Markdown
成员
这是否包括对 issue 内容、评论、PR 的任何贡献?
我同意这一点,不过自从我们启用这个系统以来,提交的安全公告 100% 都是用 AI 写的。(大多数涉及我们的网站,而非 QGIS 核心)
所有回应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
kannes 评论于 2026年9月24日
复制链接 复制 Markdown
请不要误解我下面的批评。我认为当前围绕“AI”的狂热在许多方面都是一个大问题,涉及伦理、社会、经济等。我也看到了它的滥用给维护者和开发者带来的巨大且不公平的压力。我希望这一切从未发生过,但事已至此。
不过我想强调一些技术上的好处,而这项政策将禁止这些好处,至少据我所理解是这样。我在这里刻意忽略其他一切。
我也完全能理解,如果这更多是一种“政治性”举措,旨在禁止被认为不道德的东西。但这是本意吗?是为了减轻开发者的压力?还是为了对“AI”做出强烈表态?无论如何,我认为它可以更清晰,也可能更有力。
按照现在的措辞,我会把这项政策理解为也不允许使用 LLM 进行审查、审计和安全目的。辅助和使用这两个词非常宽泛,我担心它们可能会把孩子连同洗澡水一起倒掉(如果这个孩子指的是使用 AI 产出在功能和逻辑上适合集成到 QGIS 中、经过人工审查、并且不会比 100% 来自人脑的贡献带来更多合并后维护麻烦的东西)。
作为一个有时鼓起勇气踏入 QGIS 核心 C++ 世界一小步的人,我发现 LLM 有助于发现代码中额外的、不明显的上下文。它们经常出错,但我坚信,人类可以利用这些结果来进一步理解代码,并真正帮助创造出更好的贡献。
我有时也觉得 LLM 有助于模拟一位审查者。把你的代码丢给它审查,拿回一些清单式的内容,丢弃其中一些垃圾或无关内容,看看剩下的,也许能发现一个真正的问题,修复它,然后带着一个稍微不那么糟糕的 PR 去找你的同事。IDE 里的一个“Clippy”,能对你的开发给出一些——有时有用的——反馈或批评,也能帮助减少错误并提高健壮性。就像网络搜索会在真实信息旁边给出虚假信息一样,LLM 也会如此。人类需要批判性地核实它们输出的任何内容。
按照我对这项政策的理解,这类用途将被禁止。
5 位 dvdkon、vaahtokarkki、Joonalai、sbrunner 和 jakimowb 用竖起大拇指的表情做出了回应
所有回应
5 个回应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
rouault-on-strike 评论于 2026年9月24日•
已编辑
加载中
哎呀!
加载时出错。请重新加载此页面。
复制链接 复制 Markdown
辅助和使用这两个词非常宽泛,我担心它们可能会把孩子连同洗澡水一起倒掉
是的,我们意识到可能会把孩子和洗澡水一起倒掉,但这个孩子可能无法存活,所以……
这个 QEP 是一个权宜之计。两年前,世界没有 AI 也还好比现在糟得少,所以没有理由在未充分了解后果的情况下允许它。我们可能得等到 AI 泡沫破裂,才能充分理解什么才是公平的 AI 使用。
5 位用户 adamjstewart、kannes、sbrunner、elpaso 和 gacarrillor 点了赞
所有反应
5 个反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
uclaros 审阅了 2026年9月24日
uclaros 留下了评论
复制链接 复制 Markdown
贡献者
隐藏此评论时出现问题。
选择隐藏此评论的原因
原因将显示给其他人以描述此评论。了解更多。
隐藏评论
能否请对这个提案提供更多背景信息?
邮件列表帖子提到了社区受到的伤害,以及在不同渠道(例如 mastodon)上提出的观点,这相当模糊,我担心我们每个人都会有不同的解读。
我最感兴趣的是我们试图防范什么:是机器人吗?路人?随机用户变成常驻贡献者?现有的常驻贡献者?核心开发者?
我还感兴趣的是之前的政策在哪里失败了——extractive 标签从未创建,约 50 个 PR 被标记为 AI Assisted,其中约 40 个未经合并就被关闭。还有其他几个只是被关闭但从未标记。
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
2 位用户 dvdkon 和 ptitjano 点了赞
所有反应
2 个反应
评论线程qep-408-ai-tool-policy.md显示已解决 隐藏已解决
哎呀!
加载时出错。请重新加载此页面。
Update qep-408-ai-tool-policy.md
已验证
已验证
此提交在 GitHub.com 上创建,并使用 GitHub 的已验证签名签署。
GPG 密钥 ID:B5690EEEBB952194
已验证
a7ad258
nyalldawson 评论了 2026年9月24日
复制链接 复制 Markdown
贡献者 作者
其意图并非让这成为“刻在石头上、永远不变”的政策。它更像是一个“让我们从关着的门开始,然后如果/当安全且进行了适当讨论时,我们可以有选择地稍微打开一点”。
所以我们从极度严格开始,然后,之后,某人(其他人)会为诸如“AI 可以用作 IDE 自动补全的替代品”/“AI 可以用于语言翻译”/等案例进行论证,所有这些都将根据具体情况进行单独考虑。
4 位用户 kannes、uclaros、elpaso 和 ismailsunni 点了赞
所有反应
4 个反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
nyalldawson 评论了 2026年9月24日
复制链接 复制 Markdown
贡献者 作者
这是对早先 QEP 的修正。那显然没有奏效(正如你指出的,流程在现实中并未发生,而且我们已经因此失去了至少一位极其宝贵的贡献者)。
如上所述,我们通过把门关上来进行纠正,然后再决定之后要把它打开到什么程度。
所有反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
引用自 Oct 2, 2026
修复错误的 Natural Breaks (Jenks) 分类 qgis/QGIS#67612
已关闭
[Postgres] 连接丢失后重新连接 NOTIFY 监听器 qgis/QGIS#67630
已关闭
读取项目时在图层之间共享 OGR 数据集 qgis/QGIS#67629
已关闭
为 WFS 提供程序启用并行提供程序创建 qgis/QGIS#67631
已关闭
nyalldawson 评论于 Oct 5, 2026
复制链接 复制 Markdown
贡献者 作者
此事现已通过讨论期,并进入投票阶段
1 adamjstewart 用欢呼表情回应
所有反应
1 个反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
nyalldawson 添加了 Voting 并移除了 In DiscussionQEPs 当前处于讨论阶段标签 Oct 5, 2026
3nids 评论于 Oct 5, 2026
复制链接 复制 Markdown
成员
能否在本周末之前保持开放。原因如下
- 贡献者会议现在正在举行
- 我个人本想回复(我知道我迟了)
所有反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
nyalldawson 评论于 Oct 5, 2026
复制链接 复制 Markdown
贡献者 作者
能否在本周末之前保持开放。原因如下
我会让 @timlinux 来做这个决定。
所有反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
3nids 评论于 Oct 6, 2026
复制链接 复制 Markdown
成员
@nyalldawson 今天早上我和 Tim 讨论过。我同意继续推进到投票,并会再开一个 QEP 来发起另一场讨论。
对我来说是 +0
所有反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
elpaso 评论于 Oct 6, 2026
复制链接 复制 Markdown
贡献者
请记住,这个 QEP 旨在确立一项初步政策,并不意味着 AI 贡献将永远以任何形式被禁止。
+1
1 signedav 用点赞表情回应
所有反应
1 个反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
02JanDal 评论于 Oct 6, 2026
复制链接 复制 Markdown
也很抱歉我迟到了……
我对这项政策有一个很大的担忧;它并没有特别清楚地说明到底什么被禁止。使用 Claude Code/Github Copilot CLI 等?当然,这很清楚是不被允许的。但由 LLM 支持的自动补全呢?非 LLM 的 AI 呢(例如,基于 Jetbrains 的 IDE 长期以来一直使用 ML 模型来对自动补全结果进行排序)?用 ChatGPT 来头脑风暴一个设计呢?搜索一条错误信息,却无意中在 Google 的 AI 回答中看到了答案呢?向 Claude 求助某个 PyQGIS 中的问题,结果意识到它其实是 QGIS Core 的一个 bug,然后继续手动修复它呢?如果我一时想不起某个英文术语,用 Google 翻译从我的母语翻译过来,随后在代码中使用它呢?
我意识到,人们担心在这里哪怕稍微放宽一点,都会导致问题持续存在,但我认为政策非常明确是非常重要的,尤其是考虑到处罚。
提一个建议:
不允许由 LLM 或 AI 代理编写的代码贡献进入 https://github.com/qgis/qgis 仓库。
(去掉了非常宽泛的“AI”一词,这个词会让例如 Jetbrains 的排序模型变得可疑,并明确写出“编写”,这样例如搜索/头脑风暴等就是被允许的)
最好该政策还包含说明什么允许/不允许的示例。
所有反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
timlinux 评论于 2026年10月6日
复制链接 复制 Markdown
成员
也很抱歉来晚了……
我对这项政策有一个很大的担忧;它并没有特别清楚地说明到底什么被禁止。使用 Claude Code/Github Copilot CLI 等?当然,这很清楚是不被允许的。但由 LLM 支持的自动补全呢?非 LLM 的 AI 呢(例如,基于 Jetbrains 的 IDE 长期以来一直使用 ML 模型来对自动补全结果进行排序)?用 ChatGPT 来头脑风暴一个设计呢?搜索一条错误信息,却无意中在 Google 的 AI 回答中看到了答案呢?向 Claude 求助某个 PyQGIS 中的问题,结果意识到它其实是 QGIS Core 的一个 bug,然后继续手动修复它呢?如果我一时想不起某个英文术语,用 Google 翻译从我的母语翻译过来,随后在代码中使用它呢?
我意识到,人们担心在这里哪怕稍微放宽一点,都会导致问题持续存在,但我认为政策非常明确是非常重要的,尤其是考虑到处罚。
提一个建议:
不允许由 LLM 或 AI 代理编写的代码贡献进入 https://github.com/qgis/qgis 仓库。
(去掉了非常宽泛的“AI”一词,这个词会让例如 Jetbrains 的排序模型变得可疑,并明确写出“编写”,这样例如搜索/头脑风暴等就是被允许的)
最好该政策还包含说明什么允许/不允许的示例。
我认为合规的衡量标准是“你是否凭良心自己编写了代码”——我们并没有条件窥探你的电脑、查看你做了什么。你会知道你想要分享的代码是你自己的大脑写出来的,还是别人的大脑写出来的。
所有反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
timlinux 评论于 2026年10月6日
复制链接 复制 Markdown
成员
@nyalldawson 以及其他关注此 QEP 的人——正如 @3nids 提到的,我们在 UC2026 上对此进行了一些讨论——让我们按计划进行投票吧。如果这项提案通过,肯定会有一些新的 QEP 想要打开这扇门……但让我们一次解决一个用例,这样我们才能保持在同一艘船上,朝着同一个方向划桨。
所有反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
adamjstewart 评论于 2026年10月6日
复制链接 复制 Markdown
不允许在 https://github.com/qgis/qgis 仓库中提交由 LLM 或 AI 代理编写的代码贡献。
我强烈建议将文档、错误报告、讨论、PR 描述、评论以及 GitHub 上基本上所有书面互动都包括在内。这些内容往往比代码本身更加冗长且更具提取性。
所有反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
signedav 评论于 2026年10月6日
复制链接 复制 Markdown
贡献者
正如我已在邮件列表中写过的。我相信暂停一段时间,直到我们为每个人找到好的解决方案,不会有什么坏处。
所以 +1
所有反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
02JanDal 评论于 2026年10月6日•
已编辑
加载中
哎呀!
加载时出错。请重新加载此页面。
复制链接 复制 Markdown
我认为合规的衡量标准是“你是否凭良心自己编写了代码”——我们并没有设置来窥探你的电脑并查看你做了什么。你会知道你想分享的代码是你自己的大脑写的还是别人的大脑写的。
@timlinux 是的,但你在那里还包含了动词“编写”,而当前提案中缺少这个词。它当然可能是隐含的,但显式优于隐式(引用 Python 之禅)。
编辑澄清:我不介意该政策的意图(尤其是当它只是关于编写时),我只是担心措辞。
1 位 dvdkon 用竖起大拇指的表情符号做出了反应
所有反应
1 个反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
nyalldawson 提到了此拉取请求 2026年10月6日
发出已弃用的 messageReceived() 信号并更新测试模块以使用新信号(修复 #67668)qgis/QGIS#67670
已合并
1 个任务
alexbruy 评论于 2026年10月7日
复制链接 复制 Markdown
贡献者
+1
所有反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
rouault-on-strike 评论于 2026年10月7日
复制链接 复制 Markdown
+1(Even Rouault)
所有反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
vpicavet 评论于 2026年10月7日
复制链接 复制 Markdown
成员
不管怎样,我投 +1。
所有反应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
nyalldawson 评论于 2026年10月7日
复制链接 复制 Markdown
贡献者 作者
已宣布通过,投票来自 @rouault-on-strike@alexbruy@signedav@elpaso
2 Geo-Jagaimo 和 adamjstewart 用爱心表情回应
所有回应
2 个回应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
nyalldawson 添加了 Accepted 并移除了 Voting 标签 2026年10月7日
nyalldawson 将提交 167fde2 合并到 qgis:master2026年10月7日
nyalldawson 删除了 qep_428 分支 2026年10月7日 21:00
gacarrillor 评论于 2026年10月8日
复制链接 复制 Markdown
成员
在此记录一下,我也 +1,谢谢 @nyalldawson
所有回应
抱歉,出了点问题。
哎呀!
加载时出错。请重新加载此页面。
此文件包含可能被解释或编译为不同于其显示内容的隐藏或双向 Unicode 文本。要查看,请在能显示隐藏 Unicode 字符的编辑器中打开该文件。了解有关双向 Unicode 字符的更多信息
免费注册以加入此 GitHub 对话。已有账户?登录以发表评论
审查者
uclarosuclaros 留下了审查评论
+1 位审查者
rouault-on-strikerouault-on-strike 留下了审查评论
其批准可能不影响合并要求的审查者
负责人
未指派任何人
标签
项目
暂无
里程碑
无里程碑
开发
成功合并此拉取请求可能会关闭这些问题。
暂无
15 位参与者
将此建议添加到可作为单个提交应用的批次中。此建议无效,因为未对代码进行任何更改。拉取请求关闭时无法应用建议。查看部分更改时无法应用建议。每行只能将一个建议添加到批次中。将此建议添加到可作为单个提交应用的批次中。不支持在已删除的行上应用建议。您必须更改此行中的现有代码才能创建有效的建议。过时的建议无法应用。此建议已应用或标记为已解决。无法从待处理的审查中应用建议。无法在多行评论上应用建议。拉取请求排队等待合并时无法应用建议。目前无法应用建议。请稍后再试。
页脚
© 2026 GitHub,Inc.
页脚导航
此时您无法执行此操作。
来源:Hacker News:AI 热帖 · github.com