随着大语言模型(LLM
)技术的发展,它们主要被划分为两个类别:基础LLM(Base LLM
)和指令调优LLM(Instruction-Tuned LLM
)。Base LLM
侧重于广泛的语言理解和生成能力,而Instruction-Tuned LLM
则在Base LLM
基础上,通过在特定指令集上进行优化,以提高对特定任务的适应性和性能。
Base LLM
Base LLM
主要是利用大量文本训练数据,来训练模型预测下一个词的能力。在训练过程中,通过向LLM
输入文本或指令,让LLM
对其进行预测,补齐接下来可能出现的词,以此作为问题的回答。比如:
Input:
Once upon a time, there was a unicorn
output:
that lived in a magical forest with all her unicorn friends
在上述实例中,输入"从前,有一只独角兽"的文本后,模型对句子的内容进行了补全,给出了"它与所有的独角兽朋友们一起,居住在一片魔法森林里"的补充说明。然而,有时候,当向Base LLM
输入一些提问时,也可能得到不靠谱的答案,比如:
Input:
What is the capital of France?
Output:
What is France's largest city?
What is France's population?
What is the currency of France?
当询问模型法国的首都时,收到的答复却是一连串关于法国的其他问题。这种现象的出现,可能是因为模型的训练数据源自互联网上的一个法国小测验问题列表。在这个列表中,问题以特定的序列排列,模型可能学习并模仿了这种序列,而不是直接识别和回答具体的问题。
Instruction-Tuned LLM
尽管Base LLM
在一些语言处理任务中展现出较为卓越的能力,但在特定任务的处理上可能存在局限性。为了克服这些局限性,Instruction-Tuned LLM
开始被关注和研究。这类模型以经过大量文本数据训练的Base LLM
为基础,并通过特定任务的输入输出数据进行微调,以提升其在这些任务上的表现。Instruction-Tuned LLM
的进一步优化通常涉及到使用RLHF
(基于人类反馈的强化学习)技术,这种方法通过人类的直接反馈来指导模型的学习过程,从而确保生成的输出不仅准确,而且符合社会价值观和伦理标准。因此,与Base LLM
相比,经过指令调优的LLM在生成有帮助、诚实且无害的文本方面表现更为出色。目前很多实际应用场景已经开始向Instruction-Tuned LLM
转移。
另外,一个来自吴恩达教授的观点:当你在使用Instruction-Tuned LLM
时,可以将这个过程看作是向一个聪明但是不知道任务细节的人发出指令。如果遇到模型给出的答案不太理想的情况,有时可能是因为输入的指令不够清晰。因此,当你希望LLM
给出一个较为满意的结果时,最好将问题尽可能地具体化。
参考教程:《ChatGPT Prompt Engineering for Developers》