欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

Prompt设计与大语言模型的微调方法

最编程 2024-01-07 08:09:40
...

网络异常,图片无法展示
|



本文主要介绍了Prompt设计、大语言模型SFT和LLM在手机天猫AI导购助理项目应用



网络异常,图片无法展示
|
ChatGPT基本原理


“会说话的AI”,“智能体”

网络异常,图片无法展示
|


简单概括成以下几个步骤:

  1. 预处理文本:ChatGPT的输入文本需要进行预处理。
  2. 输入编码:ChatGPT将经过预处理的文本输入到神经网络中进行编码处理,使用的是多层transformer编码器结构。
  3. 预测输出:ChatGPT通过对输入进行逐个token预测,输出下一个最可能出现的token序列,使用的是softmax函数进行概率预测。
  4. 输出解码:ChatGPT将预测的token序列作为输入,经过多层transformer解码器结构进行解码处理,最终输出模型的回答。
  5. 重复步骤3和4:ChatGPT在处理输入时会持续输出预测的token序列,直到遇到停止符号或达到最大输出长度为止。



算法内核——Transformer

由 Encoder 和 Decoder 两个部分组成

网络异常,图片无法展示
|


网络异常,图片无法展示
|
Prompt设计
 什么是prompt?
网络异常,图片无法展示
|

看来跟我今天想分享的不太一样,加个具体的限定条件,然后呢?


网络异常,图片无法展示
|


这下对了!Prompt的不同能直接决定模型是否能按我们的预期输出

网络异常,图片无法展示
|


 prompt基本技巧


1.清晰,明确,避免模糊的词语

bad case good case
产品描述不应该太短,用一些句子就行,也不用特别多 用3到5个短语描述这个产品

给手机天猫写首诗

网络异常,图片无法展示
|

给手机天猫写一首四句的古文诗,模仿李白的《早发白帝城

网络异常,图片无法展示
|


2.用###或者"""或者<>或者'''将指令和待处理的内容分开

bad case good case
将下面内容总结为一句话。你应该提供尽可能清晰和具体的指令来表达你想让模型做什么。这将引导模型朝着期望的输出方向发展,并减少收到无关或不正确响应的可能性。不要混淆写一个清晰的提示和写一个简短的提示。在许多情况下,更长的提示提供更多的清晰度和上下文,这可以导致更详细和相关的输出。

将下面用三个引号括起来的内容总结为一句话:

需要总结的文本是:

'''

你应该提供尽可能清晰和具体的指令来表达你想让模型做什么。这将引导模型朝着期望的输出方向发展,并减少收到无关或不正确响应的可能性。不要混淆写一个清晰的提示和写一个简短的提示。在许多情况下,更长的提示提供更多的清晰度和上下文,这可以导致更详细和相关的输出。

'''


3.指定输出格式

bad case good case

生成三个虚构书名,包括它们的作者和类型。

网络异常,图片无法展示
|

生成三个虚构书名,包括它们的作者和类型。以JSON列表的格式提供,包括以下键:book_id、title、author、genre

网络异常,图片无法展示
|


4.角色扮演,用扮演、担任等这一类词汇告诉大模型在对话中特定的人格或角色

bad case good case

给我推销一款男士洗面奶

网络异常,图片无法展示
|

system:我想让你扮演一个专业的导购员。你可以充分利用你的电商知识、导购话术,生动活泼的帮顾客介绍推销商品。

user:给我推销一款男士洗面奶

网络异常,图片无法展示
|

网络异常,图片无法展示
|

 Few shot进阶


启用上下文in-context learning学习,在prompt中提供几个样例(这里只有一个例子one-shot)


 Chain of Thought(Cot


思维链(CoT)是一种改进的提示策略,用于提高 LLM 在复杂推理任务中的性能,如算术推理、常识推理和符号推理。

one-shot Cot

model input:

Q:小明有5个球,他又买了2筐,每一筐有3个球。那么他现在总共有几个球?

A:答案是11

Q:小花有23个苹果,他们午餐用去了20个,又买了6个。那么现在还有多少个苹果?

model output:

model input:

Q:小明有5个球,他又买了2筐,每一筐有3个球。那么他现在总共有几个球?

A:小明开始有5个球,又买了2筐球,每筐3个共6个球,合计11个球,答案是11

Q:小花有23个苹果,他们午餐用去了20个,又买了6个。那么现在还有多少个苹果?

model output:


上面的例子很好的激发了大模型的潜能,是否有prompt技巧无能为力的问题?

答案是肯定的,一些偏实时,模型训练过程中缺乏的语料知识,它也无能为力。



 Search API & GPT


推荐阅读