What Makes Code Generation Ethically Sourced?

本文提出了“道德来源代码生成”(ES-CodeGen)的新概念,旨在通过涵盖从数据收集到部署后全周期的伦理与可持续实践,并基于对 803 篇文献的综述及 32 名从业者的调查,构建了包含 11 个维度(新增代码质量维度)的分类体系,以应对当前 AI 代码生成中存在的许可、隐私、公平及环境影响等伦理挑战。

Zhuolin Xu, Chenglin Li, Qiushi Li, Shin Hwei Tan

发布于 Thu, 12 Ma
📖 1 分钟阅读☕ 轻松阅读

Each language version is independently generated for its own context, not a direct translation.

这篇论文就像是在给AI 写代码这件事做一次全面的“道德体检”。

想象一下,你开了一家超级面包店(这就是现在的 AI 代码生成模型,比如 GitHub Copilot 或 Code Llama)。这家店生意火爆,能瞬间帮人烤出各种面包(代码)。但是,最近大家开始担心:这家店的面粉(训练数据)是从哪来的?是不是偷了别人家田里的麦子?做面包的工人有没有拿到合理的工资?烤出来的面包会不会有毒?

这篇论文就是由四位来自康考迪亚大学的研究者组成的“道德调查组”,他们想搞清楚:到底什么样的 AI 代码生成,才能被称为“道德来源”(Ethically Sourced)的?

他们把整个过程比作一条供应链,就像面包店从买面粉、揉面、烤制到卖面包的每一个环节,都必须干净、合法、公平。

1. 他们是怎么研究的?(像侦探一样)

  • 第一步:翻遍旧档案(文献综述)
    他们像侦探一样,翻阅了 803 篇 相关的学术论文(从经济学、医学到计算机科学),最后筛选出 71 篇 最相关的。他们从中提炼出了 10 个 关键的“道德维度”(比如:版权、隐私、公平性、环境友好等)。

    • 比喻: 就像他们先研究了全球所有面包店的道德标准,列出了一份“道德清单”。
  • 第二步:采访业内人士(问卷调查)
    他们采访了 32 位 真正的“面包师”和“顾客”(包括软件工程师、AI 研究员,甚至包括那些因为不满数据被滥用而主动要求从训练数据中“退群”的开发者)。

    • 比喻: 他们拿着那份“道德清单”去问大家:“你们觉得这个清单全吗?还有什么漏掉的?”

2. 他们发现了什么?(核心发现)

通过调查,他们把清单从 10 项扩充到了 11 项,并发现了一些有趣的现象:

A. 新的“道德维度”:代码质量

以前大家觉得“代码写得对不对”是技术问题,不是道德问题。但受访者说:“如果 AI 生成了看似正确但其实是错的代码,导致程序员花大量时间修 bug,或者生成了能造炸弹的代码,这本身就是不道德的!”

  • 比喻: 就像面包店如果为了省钱用了发霉的面粉,烤出来的面包虽然也是面包,但吃了会生病,这就是不道德。

B. 大家容易“视而不见”的盲区

虽然大家很在意版权(能不能用别人的面粉)和隐私(别泄露我的配方),但很多人容易忽略社会层面的问题:

  • 社会责任感: 那些提供数据的开源社区,有没有从 AI 的发展中受益?
  • 劳工权益: 那些给 AI 打标签、清洗数据的工人(很多在发展中国家),有没有拿到公平的工资?(比如有人时薪不到 2 美元)。
  • 比喻: 大家只关心面包好不好吃、贵不贵,却忘了种麦子的人有没有吃饱饭,或者磨面工有没有受伤。

C. “同意”的方式很重要:从“退群”到“入群”

现在的 AI 公司通常说:“我把你的代码拿去训练了,如果你不想,你可以退群(Opt-out)。”
但那些真正被“伤过”的开发者(Impacted Users)强烈呼吁:“不行!你应该先问过我,我同意(Opt-in)了,你才能用!”

  • 比喻: 现在的做法是“我先把你家麦子收了,你如果不想要,就自己来告诉我别收”;大家希望的是“我想收麦子前,先敲你家门问一句:‘我能收吗?’"。

D. 现在的 AI 都不够“道德”

当被问到“现在的 AI 代码生成工具符合道德标准吗?”时,绝大多数人(68.8%)说“完全不符合”,只有少数人说“部分符合”。

  • 比喻: 就像大家承认,现在的超级面包店虽然面包好吃,但用的面粉来源不明,工人工资太低,还没法保证面包绝对安全。

3. 如果做不到“道德”,会有什么后果?

大家最担心的后果是:

  1. 被告上法庭: 因为用了别人的代码(版权侵权)。
  2. 泄露秘密: 把公司的机密代码输给了 AI,结果 AI 把秘密说出去了。
  3. 剥削开发者: 开源社区的贡献者白干活,没得到回报。
  4. 垄断: 只有大公司玩得起,小公司被挤死。

4. 我们愿意为了“道德”牺牲多少?

这是一个很现实的问题:如果为了更道德,AI 生成的代码准确率下降了一点,大家能接受吗?

  • 结果: 大家很宽容,10% 以内的准确率下降是可以接受的。
  • 但是: 如果数据是偷来的或者来源不明,大家完全不能接受(0% 容忍度)。
  • 比喻: 大家愿意为了吃得更健康,接受面包稍微硬一点点(准确率降一点),但绝对不能接受面包里混了老鼠屎(数据污染/来源不明)。

总结

这篇论文的核心思想是:AI 写代码不能只追求“快”和“好”,还要追求“干净”和“公平”。

它就像给 AI 行业立了一个新的道德标尺,告诉我们:

  • 不仅要管代码写得对不对(技术维度);
  • 还要管数据从哪来(版权、隐私);
  • 管工人拿没拿钱(劳工权益);
  • 管对环境有没有污染(碳排放);
  • 管社区有没有受益(社会责任)。

只有把这些环节都管好了,AI 生成的代码才是真正“道德来源”的,才能让我们放心地使用。目前,虽然还没有完美的 AI 能做到这一点,但这篇论文为未来指明了努力的方向。