我使用 GitHub Copilot 编写英文而不是代码,发现它可以完成一些令人惊讶的非代码相关的任务。
大家好,我叫 Ido,是 DagsHub 的全栈开发人员。 我喜欢编码,我喜欢机器学习和人工智能技术。 一年前,当 OpenAI 宣布 GPT-3 及其公开测试版时,我对它的功能很着迷,但我没有 API 密钥,所以我当时使用了所有由 GPT-3 构建并且免费使用的东西。 自然,当我听说微软推出 GitHub Copilot 时,我注册了候补名单,几个月后,我获得了访问权限!
什么是 GitHub Copilot,它与 GPT-3 有什么关系?
2020 年 6 月,OpenAI 发布了一个名为 GPT-3 的语言模型。 这个模型非常擅长理解自然语言,令人惊讶的是,即使它没有接受过代码训练,它也有一些编码能力。 在这一发现之后,OpenAI 开发了 Codex。 Codex 是另一种 GPT 语言模型,它的参数更少 - 运行速度更快,但不如 GPT-3 灵活,内存更大 - 可以读取更多内容并更好地掌握上下文,最后,它使用来自 GitHub 和 Stack Exchange的代码示例进行了训练和微调。
不出所料,Codex 在编写代码方面比 GPT-3 好得多。 知道这一点,我们不应该期望它在其他任何事情上都取得成功。 幸运的是,我不知道这一切,所以我还是尝试了。
我们不要代码!
我听说 GitHub Copilot 擅长写代码,确实如此。 在我的日常工作中,每次看到它完成我即将编写的代码时都会感到惊讶。 但是在学习了“基础知识”之后,我对使用作为玩 GPT-3 的中介更感兴趣。 我首先打开一个空白文本文件并问了一个简单的问题。 如果你只是在一个空文件中写一个问题,它不足以自动完成答案,但我发现如果我给 Copilot 提供更多上下文,添加讲者姓名或Q&A格式,它会像冠军一样回答 !
它还活着! 有点吓人。 当重复这个对话时,我总是得到稍微不同的结果,使对话走向不同的方向,就像每次都在与不同的机器人交谈。
Copilot “反向”编码
知道它仍然能很好地理解英语,所以我试图让它做与它的设计相反的事情。 意思是,不是把英语变成代码,而是把我同事的代码变成英语!
我试着这样写:
# This function
# The code above
# A description of this code:
但我发现最好的方法就是在一段代码之后编写“伪代码:”,然后让 Copilot 发挥它的魔力。
请注意,它甚至完成了已经写在它下面的“返回响应”行!
这种方法对我来说总是非常有效! 在尝试理解一些不是自己编写的代码时,这实际上可能很有用。
验证AI对齐和语调
发现模型有如此深刻的理解,我必须检查它是否有任何黑暗的意图。为了确保我得到的答案是从AI的角度出发,我使用了“human”和”AI”作为对话人的名字,而不是之前的Q&A,基本上是与Codex对话,看看它对情况的理解。幸运的是,看起来我们到现在还很安全。
经过一些尝试之后,我注意到了一件奇怪的事情。字母的格式对其行为有影响,我不是在谈论编译错误! 这可能意味着它理解 “TALKING LIKE THIS” 或 “like this” 之间的语气差异。
我想说正常的字母使它变得合理,小写使它不那么正式和兴奋,而大写使它像个混蛋。
我想知道这是否也会影响它生成的代码。
请注意函数的命名和选择用来测试的字符串有一些细微的差别。
还有' output: '提示符,每次都能准确计算函数的输出!
Copilot的其它技能
此外,我了解到它可以完成数字系列,总结维基百科页面,提出博客创意,甚至写一些诗歌!
这一点都不简单,请注意,这实际上不是最初的通用GPT-3。与GPT-3的1750亿个参数相比,Codex有120亿个参数,而且它只在开放源代码上训练。它做得这么好,这对我来说太疯狂了!
例如,我开始写 Robert Frost 的“Two Roads”的开头,发现它知道这首歌但没有记住全部,所以过了一段时间它开始即兴创作。
你知道原创停止和即兴开始的地方吗?
在获得所有这些知识后,我想去meta。 我想知道是否可以让 Copilot 生成让其编写代码的代码。 然后,我也许能以某种方式将它结合起来,创造一个 AI 怪物来统治世界。
我还没到那一步… …
但期待未来会有更多的更新。
结论
在试验了GitHub Copilot之后,我更加了解我们对正在构建的 AI 知之甚少。对于这个仅针对一个任务进行了优化的模型,有很多意想不到的结果和不同的方式来使用它。这篇博客文章中的实验只是一小部分,但还有很多,我已经迫不及待地想看到你的实验!请分享您的结果在我们的Discord服务器或通过#CopilotNotCode 发布。
并且我们知道,也许你的自动驾驶汽车也会无意中有感情,你的键盘会试图告诉你它爱你,但如果我们不听,我们可能永远不会知道。
原文链接:
https://dagshub.com/blog/github-copilot-not-code/
评论
沙发等你来抢