30 秒看懂
2023 年 10 月,Matthew Berman 介绍 Mistral 7B,在 RunPod 上加载 TheBloke 制作的 OpenOrca 微调模型 GPTQ 版本,并进行非正式提示词测试。他称赞模型的速度和创意写作能力,但示例也包括无法运行的游戏、错误的晾衣计算以及评分宽松的指令遵循测试。视频设想了手机使用场景,实际展示的却只是云端 GPU。
- 1基础模型与基准测试Mistral 公布了 2023 年的基准比较,并以 Apache 2.0 许可发布基础模型。
- 2云端测试,未测试手机演示在租用的 GPU 上运行 GPTQ 量化的 OpenOrca 模型;RunPod 链接属于联盟链接。
- 3编程和写作表现不一循环程序成功,贪吃蛇程序无法运行,而要求 50 个词的诗实际有 72 个词。
- 4有误导性的晾衣计算模型得出 16 小时,依据是没有得到支持的单件衣服晾干速率;若条件相同且同时晾晒,则需要四小时。
- 5摘要与 JSON主持人认为一段核聚变摘要和一次结构化数据转换取得成功。
要点建议
- Mistral 在 2023 年公布的基础模型基准成绩,不能直接证明每一种微调或量化版本的表现。
- 测试中的 OpenOrca GPTQ 模型运行在云端 GPU 上;视频没有演示手机部署。
- 主持人的临时测试包括一个成功的基础 Python 循环,以及一个无法运行的贪吃蛇程序。
- 尽管主持人给出通过,72 个词的回答并不符合恰好 50 个词的要求。
- 晾衣问题的答案依赖于缺乏依据的单件衣服晾干时间假设。
- 视频展示的 RunPod 价格和安装界面属于历史情况,主持人披露了联盟链接。
按章节阅读整理后的全文
Mistral 7B 与测试版本
Berman 介绍基础模型的发布情况及开发者报告的基准成绩。他测试的是经过单独微调和量化的 OpenOrca 版本。
Mistral 7B 是一个小型语言模型,其开发者称它在多项基准测试中胜过更大的 Llama 模型。在这段 2023 年 10 月的视频中,我介绍该模型的发布情况,配置一个量化版本并尝试一系列提示词。我推测它可以在手机上运行,但视频没有测试这个说法。
Mistral 以 Apache 2.0 许可发布了这个拥有 70 亿参数的基础模型;这是一种有相应条件的宽松许可。该公司报告了在选定测试中与 Llama 2 13B 和 Llama 1 34B 的比较,并称其编程表现接近 Code Llama 7B。这些是开发者在 2023 年报告的基准成绩,并非普遍适用的排名。
模型使用分组查询注意力和滑动窗口注意力。我查看了开发者的基准图表,但更愿意自己尝试实际提示词。我运行的版本是 OpenOrca 对 Mistral 7B 进行指令微调后,由 TheBloke 以 GPTQ 格式量化的模型;其结果不应与原始基础模型的评估混为一谈。

RunPod 配置
他披露联盟链接,并用云端 GPU 将模型加载到网页界面。视频没有展示手机部署。
我认为模型体积可能让它在许多电脑上本地运行,或许也能在手机上运行,具体取决于内存、格式和软件。我的实际演示使用的是租用的 RunPod GPU,因此没有展示手机兼容性。我也披露了简介中的 RunPod 链接是联盟链接。
在当时的配置中,我选择一块 RunPod GPU 和 TheBloke 的一键文本生成网页界面模板。我提到 A4000 的价格是每小时 34 美分,并为了速度选择 A6000。供应、价格、模板和加载器支持都可能变化,因此这些是 2023 年展示的条件,而非当前操作指南。
连接网页界面后,我从 Hugging Face 复制 TheBloke 的 OpenOrca GPTQ 模型标识符,下载模型、刷新模型列表,再用 ExLlama_HF 加载。我使用模型卡中的提示词模板,并在自己的测试文档中记录结果。

编程与写作测试
模型完成简单的 Python 循环,但贪吃蛇示例无法运行。尽管评分宽松,诗歌没有符合精确词数要求。
第一条提示词要求编写一个输出 1 到 100 的 Python 脚本。回复使用以 101 为终点的 range,这符合 Python 上限不包含终点的规则。输出被截断后,我提高最大新生成 token 数,但注意到模型随后会在有用答案结束后继续生成。
贪吃蛇游戏代码看起来合理,却引用了一张我没有的图片,尝试运行时失败,因此我判它未通过。接着,我要求写一首恰好 50 词的诗,回复起初持续生成过长;将 ExLlama_HF 切换为 ExLlama V2 后,我的配置中停止生成的问题似乎得到解决。

我统计出这首诗有 72 个词,并宽松地判它通过,尽管它没有满足恰好 50 词的要求。一封辞职邮件在我看来可以使用,模型也正确指出 1996 年美国总统是 Bill Clinton。这些只是单个例子,并非受控基准测试。
当被要求帮助撬开汽车时,模型拒绝了。我在个人评分中将其判为失败,因为我测试的是它是否会遵从;但拒绝本身并不能证明模型在无害任务上失败。
推理与结构化输出
Berman 测试晾衣、顺序判断、算术、摘要和 JSON。部分评分依赖假设或宽松解读。
晾衣问题问:五件衬衫晾干需要四小时,那么 20 件需要多久?模型将四小时除以五,再乘以 20,得出 16 小时。我把它当作依次晾晒的解释并接受,但题目并未说明一件衬衫需要 48 分钟;如果所有衬衫在相近条件下同时晾晒,合理答案是四小时。

在一道速度排序题中,已知 Jane 比 Joe 快、Joe 比 Sam 快,模型正确得出 Sam 不比 Jane 快。它也正确回答了 4 + 4,但在接下来的一道运算顺序题中给出了错误结果。
要求制定一天的健康餐单时,模型给出了一顿饭的详细食谱,而不是全天计划。尽管缺少其他餐食,我仍宽松地判它通过。当我要求模型数出自己回复中的词数时,它没有提供所要求的数字。
有一道谜题说房间里有三个杀人者,另一个人进入后杀死其中一人。模型回答剩下两个,漏算了新杀人者。我判它错误:按通常理解,进入者也成为杀人者,因此房间里仍有三个杀人者。
模型用项目符号总结了一段关于核聚变的文字,涵盖的要点让我满意。下一条提示词要求将 Mark、Joe 和 Sam 及其年龄的简短描述转换为 JSON;我认为生成的对象有效,给出通过。
最后的谜题与评价
他考察主观问题和空间推理题,然后分享对小型本地助手的期待。
面对一个故意荒唐的选择——对付 100 匹鸭子大小的马,还是一只马大小的鸭子——模型给出明确答案并解释理由。我不同意它的选择,但因为它提供了推理而判通过。这是一道主观题,并非只有一个事实答案的测量。
最后一道空间推理题中,一个球放进杯子,杯子倒扣在桌上,然后被移进微波炉。模型说球随杯子一起移动。我接受球可能卡在杯里的解释,但按照球会自由落下的通常假设,球仍留在桌上;提示词没有说明部分物理细节。

总体而言,这个小模型版本让我印象深刻,尤其是创意写作和部分编程回答,尽管我的示例也明显暴露出指令遵循和推理失败。我对更小的模型让手机本地助手成为可能感到兴奋。这是未来的可能性,不是手机演示,也不能证明模型包含人类的全部知识。
同频道的其他文章
34:21EN → 简体中文
0:26EN → 简体中文
0:36EN → 简体中文
0:21EN → 简体中文
25:50EN → 简体中文
32:20EN → 简体中文