看不懂代码?AI给你做翻译,说人话的那种

金磊 发自 凹非寺
量子位 | 公众号 QbitAI

GitHub Copilot,最近又出了个新功能

这一次,它不再是帮你写代码了,而是充当一个“翻译官”

用“人话”告诉你,这段代码到底写了啥。

瞧,只需要选中一段代码,然后点一下旁边的“Ask Copilot”,就会快速得到代码的“人话版”解释:

da46a7016aa824f7f6ce8251d84ac960.gif

示例中的代码片段是这样的:

Copilot对此进行“翻译”后,输出的内容是:

  1. 定义一个函数max_int(),它将一个列表作为输入。

  2. 设置一个变量max_int=l[0],它包含列表中的第一个元素。

  3. 设置一个for循环,迭代列表中的每个元素。

  4. 如果元素大于max_int,便让max_int等于I。

  5. 返回max_int。

这便是GitHub Copilot的最新功能——Explain Code

之前Copilot是基于人类的注释生成代码,现在好了,它也学会了反向输出

网友们的反应也是可想而知了:

98f23bc911e11f1a6bdbad291bf94776.gif

但在“新奇”之后,这件事也引发了不小的讨论。

AI给代码做注释,有必要吗?

不仅是Copilot,“AI给代码做注释”这事最近在Reddit也比较火。

61af6a31f14123ac13a707ee4af5453c.png

有位贴主上传了他用AI技术,给代码做注释的demo。

不同于Copilot的Explain Code,这个AI不会非常详尽地去描述每行代码运行的过程。

而是概括性地去讲“这段代码是干嘛的”

以下面这个代码片段为例:

07f0a36430cf92dbb1d6d7b9af77cb84.png

在AI“解读”过后,它就会告诉你:

这段代码是用来从GitHub的Repo中收集数据。

会返回一个数据的矩阵。

再如下面这个代码片段:

6aec4760d423d2473f7a99db59d422fe.png

AI给出的注释是:

函数运行的是梯度下降算法。

而后它还会对函数中的变量依次做解释。

看似不错的效果,但依旧还是引来了网友们激烈的讨论。

“乐观派”网友认为:

辅助写注释和写测试比写代码的帮助大更多,而犯错可能更少。

dacd232b7d6811aa2f6782007f41abf7.png

但有人质疑这种AI的能力:

如果我函数写的特别乱、变量这名字乱糟糟的,它还能好使吗?

0b8e98672e21fafe3a401c76aedbf96a.png

也有人认为,诸如此类的AI“没有什么用处”

5bd6b9700163612098c8ad3a4efa1c6f.png

更形象一点的比喻,这种AI起到的作用,可能就是“复读机”……

891b506e53670bd6ea19f8847c29cd30.png

那么对于“AI给打码写注释”这件事,你觉得是否有用呢?

参考链接:

[1]https://twitter.com/ow/status/1466149473701273602
[2]https://www.reddit.com/r/MachineLearning/comments/sab6tk/p_documentation_generated_using_ai/
[3]https://weibo.com/1402400261/LcqZsETbR?filter=hot&root_comment_id=0&type=comment

  • 15
    点赞
  • 87
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值