以下为您推荐一款可以检查 C 语言代码错误的工具:Copilot。生成性 AI 作为程序员的助手是最早的应用之一,Copilot 模型在大量的代码库(例如 GitHub 上的所有公共仓库)上进行训练,然后在程序员编码时给出建议。不过需要注意的是,对于匹配高风险[CWEs(常见弱点枚举)]的场景,40%的 AI 生成的代码包含漏洞。因此,用户必须在生成足够多的代码以提供有意义的生产力提升,同时还要限制它,使得可以检查其正确性之间找到平衡。最近的研究估计,Copilot 帮助提高了开发人员的生产力,增长在 2 倍或更少的范围内。
生成性AI作为程序员的助手是最早的应用之一。它的工作方式是:一个模型在大量的代码库(例如,GitHub上的所有公共仓库)上进行训练,然后在程序员编码时给出建议。这些结果是非常出色的。实际上,可以合理地预期这种方法将成为未来编程的代名词。[image12.webp](https://bytedance.feishu.cn/space/api/box/stream/download/all/YIZ3bdjyfoIDmjxeDvHcTm9onOd?allow_redirect=1)生成的代码:对不使用分号的攻击具有安全防护然而,相对于我们下面将介绍的图像生成,生产力的提升相对较小。其中一部分原因,如上所述,是在编程中(实际上,在更广泛的工程问题中也是如此,但在这篇文章中我们关注编程)正确性至关重要。例如,[最近的一项研究发现](https://arxiv.org/abs/2108.09293v2),对于匹配高风险[CWEs(常见弱点枚举)](https://cwe.mitre.org/about/faq.html)的场景,40%的AI生成的代码包含漏洞。因此,用户必须在生成足够多的代码以提供有意义的生产力提升,同时还要限制它,使得可以检查其正确性之间找到平衡。因此,Copilot已经帮助提高了开发人员的生产力——最近的研究([这里](https://github.blog/2022-09-07-research-quantifying-github-copilots-impact-on-developer-productivity-and-happiness/)和[这里](https://arxiv.org/abs/2205.06537))估计增长在2倍或更少的范围内——但这一水平与我们在开发者语言和工具的先前进步中看到的水平相当。例如,从汇编跳到C语言,根据一些估计,生产力提高了2到5倍。