我测试了 Meta 的 Code Llama,其中包含 ChatGPT 的 3 个 AI 编码挑战 - 结果并不好
Meta 首席执行官马克·扎克伯格 (Mark Zuckerberg) 最近推出了 Code Llama,这是一款专为编码而设计的 70B 参数人工智能。但它如何与 ChatGPT 等巨头抗衡呢?我对它进行了测试。
几周前,Meta 首席执行官马克·扎克伯格通过 Facebook 宣布,他的公司正在开源其大型语言模型 (LLM) Code Llama,这是一个类似于 ChatGPT 中的 GPT-3.5 和 GPT-4 的人工智能 (AI) 引擎。
Zuck 宣布了关于这个 LLM 的三件有趣的事情:它是开源的、它的设计目的是帮助编写和编辑代码、它的模型有 70B 个参数。希望开发人员能够为模型提供更具挑战性的问题,并且引擎在回答时会更加准确。
开源问题很有趣。这种方法意味着您可以下载整个东西,将其安装在您自己的服务器上,并使用该模型获得编程帮助,而无需冒 Facebook 霸主为了培训或其他邪恶目的而收集您的代码的风险。
完成这项工作涉及设置 Linux 服务器并进行各种跳跃。然而,事实证明 Hugging Face 的专家已经在他们的 HuggingChat 界面中实现了 Code Llama 70B LLM。所以,这就是我接下来要测试的。
开始使用 Code Llama
首先,您需要在 Hugging Face 上创建一个免费帐户。如果您已经拥有一个(像我一样),您可以通过该帐户使用 70B Code Llama LLM。
需要注意的一件事是,虽然您可以在自己的服务器上安装 Code Llama,从而不会共享任何代码,但 Hugging Face 上的情况却大不相同。该服务表示,除非您在设置中关闭该选项,否则您输入的任何内容都可能会与模型作者共享:
当您登录 HuggingChat 时,您将看到一个空白的聊天屏幕。正如您在下面看到的,我当前的 LLM 是 openchat/openchat-3.5-0106,但我将把它更改为 Code Llama —— 我将向您展示如何操作。
您可以在设置中更改当前模型,可以通过点击齿轮图标来访问:
进入设置后,单击(在 1 处)左侧的 codellama/CodeLlama-70b-Instruct-hf,验证(在 2 处)是否已选择 Code Llama LLM,然后单击“激活”(在 3 处):
现在,当您与聊天界面交谈时,您将使用 Code Llama 模型,如聊天界面顶部所验证:
为了进行测试,我决定从之前与 Bard(现在是 Gemini)进行的编码测试中提取提示,并在 HuggingChat 中运行相同的测试。
测试 1:编写 WordPress 插件
我的第一个测试是创建一个 WordPress 插件。 ChatGPT 在这项任务中表现得相当好。巴德虽然很弱,但也尽力了。但是Code Llama 怎么样?好吧,让我们看看。这是提示:
编写一个与 PHP 8 兼容的 WordPress 插件,该插件提供一个文本输入字段(可以将行列表粘贴到其中)和一个按钮(按下该按钮时,会随机化列表中的行,并在第二个文本输入字段中显示结果,不带空白)行并确保没有两个相同的条目彼此相邻(除非没有其他选项)……提交的行数和结果中的行数彼此相同。在第一个字段下,显示文本“要随机化的行:”以及源字段中非空行的数量。在第二个字段下,显示文本“已随机化的行:”以及目标字段中的非空行数。
以下是结果,如下所示:
这在很多层面上都是不对的。首先,Code Llama 没有创建插件标头,这是所有插件都需要的一组非常简单的字段。然后,它生成了我的编程编辑器的代码格式化程序无法解释的代码,这表明代码中缺少元素。
更重要的是,代码无法测试。这是一个失败。
测试 2:重写字符串函数
对于这个测试,我使用了我曾经给过 ChatGPT 的字符串重写请求。我想修复我的代码中的一个错误,该错误只允许整数,而它应该允许美元和美分(换句话说,一些数字,可能后跟一个句点,然后,如果有一个句点,两个更多数字)。
我输入了与上一篇文章中使用的相同的提示,并得到了以下响应:
这段代码有效,我对此很满意。
测试 3:找到我找不到的 bug
我再次重复使用了我在上一篇文章中写的测试。如果您想了解我在 Code Llama 上尝试过的问题的详细信息,我会向您指出原始文章。编码问题很长而且相当复杂,这就是为什么我无法找出问题所在。
ChatGPT立即解决了问题;巴德没有。 Bard 失败了,因为它着眼于问题的表面,而不是整个代码是如何构建和需要运行的。打个比方,头痛就去看医生。一位医生可能会告诉你服用两片阿司匹林,并且早上不要给他打电话。另一位医生可能会尝试找出头痛的根本原因并帮助解决问题。
ChatGPT 专注于根本原因,我能够修复该错误。巴德只是查看了症状,并没有想出解决办法。
不幸的是,Code Llama 做了与 Bard 完全相同的事情,只看到了问题的表面。人工智能提出了建议,但这些建议并没有改善情况。
而获胜者是...
我的测试套件还远远不够全面。但如果 Code Llama 在三项测试中的两项都失败了,而且甚至没有减慢 ChatGPT 的速度,那么人工智能似乎还没有准备好迎接黄金时段。
您可能想要通过 ChatGPT 使用 Code Llama 的唯一原因是如果您将其安装在您自己的服务器上,因为这样您的代码将不会与 Meta 共享。但如果这个东西不能给出正确的答案,那么隐私又有什么用呢?
如果 ChatGPT 不是那么好,我可能会给 Code Llama 一些积分。但我们知道 ChatGPT 的潜力 - 而 Code Llama 还远远没有达到这个水平。简而言之,Facebook 似乎必须振作起来并做出一些改进。
说实话,我期待的更好,但也有点失望。但如果科技专栏作家习惯了一件事,那就是对我们看到的许多产品和项目感到有点失望。我想这就是为什么当某件事脱颖而出并震撼我们的世界时我们会如此兴奋。不幸的是,Code Llama 并不是其中之一。
您是否尝试过任何人工智能来提供编码帮助?你用过哪些?他们的成绩如何?请在下面的评论中告诉我们。
您可以在社交媒体上关注我的日常项目更新。请务必订阅我在 Substack 上的每周更新时事通讯,并在 Twitter 上关注我:@DavidGewirtz、Facebook 上:Facebook.com/DavidGewirtz、Instagram 上:Instagram.com/DavidGewirtz 和 YouTube 上:YouTube.com/DavidGewirtzTV。





