30 秒看懂
2023 年 6 月,Matthew Berman 回顾 Falcon 40B 当时在 Open LLM Leaderboard 上领先的成绩,并演示托管的 GPTQ 配置。一次中文翻译看起来合理,但简单的 Python 答案多输出了一个零,而且运行速度太慢,他无法完成计划中的更广泛测试。视频对 QLoRA 的称呼及其有关预训练的推断需要限定。
- 1曾经的榜单领跑者Falcon 40B 及其指令微调版本在 2023 年 Open LLM Leaderboard 上排名靠前。
- 2微调与预训练不同QLoRA 降低了微调的内存需求,但不能证明几天内就能重现 Falcon 的预训练。
- 3演示使用的检查点链接指向 TheBloke 的 GPTQ 量化版 Falcon 40B Instruct,而不是 QLoRA 检查点。
- 4质量与速度Berman 喜欢画面中显示的输出,但由于生成缓慢而停止测试;展示的 Python 循环也多输出了一个零。
要点建议
- 2023 年的榜单排名反映的是所选基准测试的结果,不能衡量所有部署场景的延迟。
- Falcon 40B 使用经过过滤的网页数据及其他来源训练,数据质量和规模都很重要。
- 演示使用的检查点经过 GPTQ 量化;QLoRA 是另一种微调技术。
- Berman 的托管测试产生了一条看似合理的翻译,但输出缓慢;画面中的 Python 代码也多输出了一个零。
- Apache 2.0 许可证允许在其条款下商业使用,但使用托管 GPU 可能产生费用。
按章节阅读整理后的全文
Falcon 40B 及其训练
Berman 讨论该模型在 2023 年的排名、数据集和训练。视频发布前,模型许可证发生了变化。
2023 年 6 月,我测试了阿联酋 Technology Innovation Institute 开发的 400 亿参数模型 Falcon 40B。当时它的基础版和指令微调版都出现在 Open LLM Leaderboard 榜首。该排名涵盖的是特定的评估和模型,并不代表所有任务、模型或实用性指标。
模型卡介绍说,Falcon 40B 用一万亿个 token 训练,并强调了数据过滤和去重。我讨论了开发者关于其训练计算量低于一些早期模型的说法。数据质量很重要,但我提出它总是比数据集规模更重要,这一说法过于宽泛,仅凭这些结果无法证实。

我介绍了使用数百块 AWS GPU 进行的训练,并提到 QLoRA 可以提高适配模型时的内存效率。QLoRA 是一种微调方法,并不能证明几天内就能重现 Falcon 最初的预训练。我后来演示的检查点标记为 GPTQ,这是一种不同的量化方法。
训练材料包含经过过滤的网页数据和其他经筛选的来源。我讨论了聊天、翻译和编程等可能用途,并指出训练数据主要是英语,还包含一些其他欧洲语言。模型卡提醒,模型在不同语言和任务上的表现并不一致。
我选择托管 GPU,因为运行这个 400 亿参数模型超出了我自己电脑的资源。较小的 Falcon 7B 模型当时也可用,但本地能运行什么取决于内存、硬件和模型格式,不能只看参数数量。
发布视频前,我补充说明 Falcon 的许可证已改为 Apache 2.0。Falcon 40B 及其指令微调版本的模型卡均列出该许可证;商业使用仍须遵守其条款以及所用其他组件的条款。
托管的 GPTQ 配置
他修改 RunPod 模板并加载指令微调检查点。这套当时使用的配置会运行仓库代码,因此需要信任这些代码。
在这次演示的配置中,我使用 RunPod 模板和 RTX A6000 实例,打开网页终端,编辑 text-generation-webui 启动脚本,并添加 AutoGPTQ 和远程代码选项。启用远程代码会允许运行模型仓库中的代码,因此需要信任并审查仓库及其代码。托管 GPU 的使用时间也可能产生费用。
重启进程后,我打开网页界面,下载 TheBloke 的 Falcon 40B Instruct GPTQ 检查点。我在视频中将这个版本称为 QLoRA,但链接指向的是 GPTQ 量化检查点;这两个术语不能互换。安装步骤和软件版本适用于这次 2023 年的演示。

翻译、代码与延迟
翻译和简单编程提示产生了看似合理的输出。生成速度缓慢使他提前结束测试。
我的第一个提示要求模型将一句表达想进一步了解 AI 的话翻译成中文。我把输出粘贴到 Google Translate,发现回译后的意思与原句一致。这只是一次非正式的回译,并非对中文翻译质量的系统评估。
这套配置的实际问题是速度:这条简短翻译耗时约一分钟。我要求它写一个 Python 脚本,输出 1 到 100 的数字,然后等待答案出现。我说画面中的代码看起来正确,但它使用了 range(101),因此也会输出 0;回答没有完全满足提示要求。输出缓慢使我无法进行更广泛的测试。
我解释说,我看的榜单衡量的是模型在所选基准测试中的质量,而不是这次具体部署的延迟。因此,领先的基准成绩和令人沮丧的使用体验可以同时存在。我的一次运行并不能证明 Falcon 在所有情况下都是最慢的模型,也不能证明速度慢完全由量化造成。

我提前停止测试,并表示会再次尝试更快的实现或微调版本。这次经历表明,选择系统时,模型质量、硬件、量化和服务软件都很重要;榜单和我的两个简单提示仍有许多能力没有测试到。
同频道的其他文章
34:21EN → 简体中文
0:36EN → 简体中文
25:50EN → 简体中文
32:20EN → 简体中文
1:03:37EN → 简体中文
0:53EN → 简体中文