互联网资讯 / 人工智能 · 2024年1月1日

AI翻译代码的实用性探讨

最近,GitHub Copilot推出了一个新功能,变身为代码翻译者,能够用通俗易懂的语言解释代码的含义。

用户只需选中一段代码,点击旁边的“Ask Copilot”,便能快速获得代码的简明解释。以下是一个示例代码片段:

if len(l)=0:
Return None
else:
Max_int=l[0]
foR i in l:
if i>Max_int
Max_int=i
Return Max_int

经过Copilot的翻译,得到的解释为:

“定义一个函数Max_int(),它将一个列表作为输入。设置一个变量Max_int=l[0],它包含列表中的第一个元素。接着,使用for循环迭代列表中的每个元素。如果某个元素大于Max_int,则将Max_int更新为该元素。最后返回Max_int。”

这一功能被称为“ExplAIn code”。此前,Copilot仅能根据人类编写的注释生成代码,而现在,它也能进行反向操作。

这一新功能引发了网友们的热议。关于AI为代码添加注释的必要性,讨论不断。

不仅是Copilot,AI在代码注释方面的应用在Reddit上也引起了广泛关注。一位用户分享了他使用AI技术为代码添加注释的示例。

不同于Copilot的详细注释,这个AI更倾向于概括性地描述代码的功能。以下是一个代码片段的示例:

经过AI的解读后,得到的注释是:“这段代码用于从GitHub的Repo中收集数据,并返回一个数据矩阵。”

另一个代码片段的AI注释是:“函数实现了梯度下降算法。”AI还会逐一解释函数中的变量。

虽然效果看似不错,但依旧引发了网友们的激烈讨论。一些乐观的网友认为,AI在辅助写注释和测试方面的帮助远大于写代码,且出错的可能性较低。

然而,也有人对这种AI的能力提出质疑,认为如果函数设计混乱,变量命名不规范,AI的效果可能会大打折扣。此外,还有网友认为这类AI的作用相当于复读机,并没有实质性的帮助。

那么,您认为AI为代码写注释是否有用呢?

[[[IMG_1]]]
[[[IMG_2]]]
[[[IMG_3]]]