如何设置 Mixtral-8x22B | 基础模型提示入门 [译]
Matt Shumer
Mixtral 8x22B 已经面市,这是首次推出一款可以商业使用的开源 GPT-4 类型模型。
然而,它并非一个指令优化型模型,而是一个基础模型。
这意味着我们需要用全新的方式来进行提示。
虽然这更具挑战性,但并非无法实现。
基础模型提示简明指南:
基础模型的提示方式与像 ChatGPT 这样的指令优化模型截然不同。可以将它们视为超级自动补全工具。它们并不是为了进行对话而设计;而是为了补全你提供的任何文本而训练。
这种区别让提示工作变得更加困难 —— 同时也带来了更多可能性!
例如,基础模型的表现力远超你所熟悉的 ChatGPT。你可能已经注意到,由 ChatGPT 生成的回答往往能被轻易识别出来,这是因为它经过了深度的调优。基本上,它的风格和行为被固定了。让它突破训练时的模式创新确实很难。但基础模型潜藏着无限的可能——只待你去发掘。
如何考虑对基础模型的提示:
当你向基础模型提供提示时,不应过多地考虑如何向模型描述你希望它做什么,而应更多地展示你希望它做什么。你需要真正进入模型的思维中去,思考它是如何思考的。
基础模型本质上是对其训练数据的一种反映。如果你能理解这一点,你就能创造奇迹。
例如,如果你希望模型撰写一篇名为“人工智能在医疗保健中的影响”的新闻文章,你应该考虑它在训练数据中可能在哪里遇到过类似新闻风格的文章。可能是在新闻网站上,对吧?
有了这个想法,你可以构建一个利用这一概念的提示,包括一些真实文章页面可能包含的类似元素。例如:
主页 | 头条新闻 | 观点人工智能时报--人工智能在医疗保健中的影响
你可以从下面的截图中看到,通过将模型置于一个类似于其训练数据中可能看到的情境中,它最终写出了一篇文章!
但这种方法并不完美。文章的写作不够流畅,而且仍然不能保证一定能生成一篇文章。
那么我们如何提高可靠性呢?
通过添加示例。
基础模型对少样本 (few-shot) 提示反应非常好。让我们在提示中添加几个示例。为了快速完成,我将从互联网上抽取几篇文章并添加到提示的顶部(别怪我——这只是一个示范,不会投入生产!)。
你可以看到,有了这几个示例,文章的效果明显改善了。
让我们谈谈解析:
在使用基础模型时,一个主要的挑战是如何解析它们的输出。如果是指导模型,你可以简单地指示它们按照特定的格式输出,比如可以请求它们“使用 JSON 格式回答”,这样解析起来非常方便。但对于基础模型,这样做并不容易。
这里有一个我常用的技巧,叫做‘模型引导’。
假设你需要生成一个文章标题的列表,你可以在描述你的需求后,在提示语的结尾处加上一个数组的前两个字符,这样几乎可以强迫模型按列表格式响应。以下是一个示例:
看,我是如何在提示语中添加‘["’来结束的。这个简单的技巧能够让你利用基础模型生成可解析的数据。
更先进的方法:
上面介绍的只是一些基础模型的简单应用方法。还有许多更有效的技巧可以帮助我们达到更好的效果。
比如,有一种方法是让模型认为自己是一个 Python 解释器。
这听起来可能不太直观,但实际操作效果非常好。
例如,你可以尝试编写一个缩短文本的提示。请看屏幕截图中的提示,这就是该方法的实际应用。
如你所见,我们实际上是创建了一个模拟 Python 解释器的提示,并让模型模拟解释器的输出。由于我们所调用的功能是缩短文本,所以模型给出了一个简短的文本版本!
如此可见,使用基础模型进行提示的方式与使用聊天或指导模型时大为不同。希望这对所有使用 Mixtral 8x22B 的朋友都能有所帮助!
(抱歉这部分写得较为仓促,希望能理解!)