30 秒看懂
Matthew Berman 评析 Meta 的 Code Llama 70B 及其基础版、Python 专用版和指令微调版。他讨论了公布的编程和文本转 SQL 基准测试,并在配有 GPU 的虚拟机上通过 LM Studio 运行量化模型。尽管安装了缺失的依赖,生成的贪吃蛇游戏启动后仍然失败。
- 1三种模型版本Meta 发布了基础模型、Python 专用模型和指令微调模型,其条款规定了研究及商业用途。
- 2文本转 SQL 微调模型Defog 报告称,SQLCoder-70B 在包含 200 个例子的 SQL-Eval 测试中得分为 93%,而其对比中的 GPT-4 为 82%。这些结果取决于具体任务和测试设置。
- 3虚拟机上的量化模型Berman 在配有 GPU 的虚拟机上,通过 LM Studio 加载 Second State 的量化指令模型,并将全部 80 层卸载到 GPU。
- 4贪吃蛇运行失败清理回答并安装 Pygame 后,游戏窗口短暂打开然后退出。另一位用户报告的成功并不能改变这次尝试的结果。
要点建议
- Meta 根据适用的 Llama 许可证发布了 Code Llama 70B 的基础版、Python 专用版和指令微调版。
- 公布的 HumanEval 67.8 分以及 SQL-Eval 对比针对特定测试,并不代表模型在所有编程任务中的表现。
- 量化后的 70B 模型仍需要大量内存和硬件资源,性能取决于具体配置。
- Berman 安装 Pygame 后的贪吃蛇游戏测试仍然失败,而另一位用户报告了成功案例。
- 生成的代码需要运行和检查;一次尝试无法确定模型的总体能力。
- Berman 披露自己是 LM Studio 的投资者。
按章节阅读整理后的全文
Code Llama 70B 及其模型版本
Berman 介绍 Meta 在 2024 年 1 月发布的模型、不同版本以及公布的 HumanEval 分数。他还分享了对自然语言编程的预测。
Meta 发布了 Code Llama 70B;在这段 2024 年 1 月的视频发布时,它是 Code Llama 系列中最大的编程模型。我很高兴看到更多模型权重可供使用,也想测试模型能否一次写出贪吃蛇游戏。一次测试只能提供一个例子,不能构成全面排名。
Meta 列出了三个版本:基础版 Code Llama 70B、针对 Python 的专用版本,以及指令微调版本。公司表示,Code Llama 70B Instruct 在 HumanEval 上得了 67.8 分。这是特定编程基准的结果,并不能证明它在每项编程任务中都是最好的。

Meta 表示,这些模型使用与此前 Code Llama 版本相同的许可证,在其条款下支持研究和商业用途。画面显示,下载需要申请访问权限。我之前申请 Llama 2 时很快就获得批准,但个人经历不能保证每个人都会如此;请查看适用的许可证和访问条件。
Mark Zuckerberg 称编程是 AI 的重要用途,并预计相关进展会出现在未来的模型中。我认为,用自然语言与模型交互可能改变软件的编写和使用方式,或许会减少对传统编程和应用的需求。这是我的预测,不是这次发布已经证明的结果。
SQLCoder 与本地部署选项
一款微调模型在特定评估中报告了出色的文本转 SQL 结果。Berman 讨论了访问方式、许可证以及 Ollama 支持。
一个微调版本已经出现:Defog 的 SQLCoder-70B,旨在将自然语言转换成 PostgreSQL 查询。Defog 展示的 SQL-Eval 图表报告称,在 200 个涉及训练中未见过的数据库结构的例子中,该模型得分为 93%,其 34B 模型为 84%,GPT-4 为 82%。这些厂商公布的数字反映的是特定测试和对比。

Defog 表示,它使用不到 20,000 对人工整理的提示词和回答进行微调。其许可证允许在满足条件的情况下商业使用,包括对修改的要求;部署者应阅读实际条款。最初的 Code Llama 于 2023 年 8 月推出,70B 更新则于 2024 年 1 月发布。
Ollama 已经列出对 70B 模型的支持,并展示了运行命令。这是个大模型,因此本地速度和内存需求取决于机器及量化方式。我还没有在自己的电脑上测试,预计运行起来可能较慢。

这次测试中,Massed Compute 提供了一台配有 GPU 的虚拟机。我使用 LM Studio 和 Second State 量化的 Code Llama 70B Instruct 模型;文件接近 50 GB,界面提示需要超过 30 GB 的内存。我选择将全部 80 层卸载到 GPU,并重新加载模型以应用设置。
测试指令模型
他在配有 GPU 的虚拟机上将量化模型加载到 LM Studio,并要求它生成代码。他披露了自己对 LM Studio 的投资。
作为快速测试,我要求它写一个输出 1 到 100 的方法。模型先给出了 JavaScript 风格的答案,然后提供了 Python 版本。接着我让它用 Python 编写贪吃蛇,它开始生成一段相当长的 Pygame 程序。

我应该披露,自己是 LM Studio 的投资者。在我的输出继续生成时,我展示了 Tristan Behrens 的一篇帖子:他报告说 Code Llama 70B 在他的 MacBook Pro 上生成了一个能运行的贪吃蛇游戏。这是另一位用户在其自身设置和提示词下得到的例子,并非我的测试结果。
贪吃蛇游戏的结果
Berman 比较了另一位用户报告的成功和自己的尝试。他安装依赖后生成的游戏仍然失败,打算进一步调查。
模型输出一个版本之后仍在继续,开始生成更多文本。我将回答复制到 VS Code,删除代码周围多余的内容。在我以前的个人测试标准中,只有少数模型成功完成过这项贪吃蛇任务;这是一项范围狭窄的非正式测试,并非通用基准。
第一次运行提示缺少 Pygame,于是我安装后再次尝试。游戏窗口短暂打开后便关闭,这次尝试失败了。我打算在镜头外继续调查;另一位用户报告的成功表明可能得到不同结果,但不意味着这次运行成功。

同频道的其他文章
34:21EN → 简体中文
0:36EN → 简体中文
25:50EN → 简体中文
32:20EN → 简体中文
1:03:37EN → 简体中文
0:53EN → 简体中文