使用 Few-shot 创建你的专属小工具 #416
realskyrin
started this conversation in
Ideas
Replies: 3 comments 1 reply
-
请教:设置里的附带历史消息数设置为 0 ,这样设置是应用在所有的chats里面吧,对于其他需要上下文的chat岂不是受到了影响?难道需要不断的根据不同chat改来改去设置? |
Beta Was this translation helpful? Give feedback.
1 reply
-
感谢分享,但是我试图让他聊天不跑偏,增加限制: 加上条件后,例如输入: 你好! |
Beta Was this translation helpful? Give feedback.
0 replies
-
@realskyrin @Corwin006 最关键的两个数值要调整。把Temperature 设为0 ~ 0.2,Presence Penalty设为 -0.5 ~ -1 试试。一个控制发挥,另一个控制发散。Prompt只是锦上添花。 |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
什么是 Few-shot ?
在 Few-shot 这个概念之上还有一个 Zero-Shot,所以我们先了简单解一下 Zero-Shot
Zero-Shot Prompting 是一种自然语言处理技术,可以让计算机模型根据提示或指令进行任务处理。各位常用的 ChatGPT 就用到这个技术。
举个例子,我们可以给 ChatGPT 一个简短的 prompt,比如
描述某部电影的故事情节
,它就可以生成一个关于该情节的摘要,而不需要进行电影相关的专门训练。-- 引用自 https://learningprompt.wiki/docs/tutorial-extras/Zero-Shot%20Prompts。Zero-Shot 的优点是方便快捷,我不需要给他任何提示,直接就开聊,这也是 ChatGPT 为什么能给人一种智能的感觉。
那么 Zero-Shot 也有它的缺点,就是发散思维,每次相同的提问,极有可能会给你不同的答案。如果我们只把它当玩具,随便聊聊天,是完全胜任的,它确实比 90% 的人类更会聊天。
但是,把它当成一个生产力工具就不行了,这时候就需要通过 Few-shot 这种技巧来引导模型返回更符合我们预期的答案。
你可以把 Few-shot 简单理解为,让模型回答问题之前先给它几个一问一答的例子。之后你再问相关的问题它就会根据你提供的例子进行规范作答。这就像是一个超级 mini 的 Fine-tuning,由于 GPT 3.5 模型过于强大,它已经学习了超过 45 TB 的文本数据。我们只需用几个小例子即可得到很好的效果。
我在 #138 中提供了两个例子,一个是 1 shot 的单词查询助手,一个是 3 shot 的语法检查助手,接下来我会演示一下怎么让你的 Chat 变成 Grammarly。
另外你也可以参考 https://learningprompt.wiki/docs/tutorial-extras/Few-Shot%20Prompting 和 https://github.com/openai/openai-cookbook/blob/main/techniques_to_improve_reliability.md#few-shot-examples 深入了解 Few-shot,这里不做过多赘述。
使用 Few-shot 创建一个 Grammarly
1、新建一个 Chat 并设置前置上下文
点任一按钮打开上下文设置面板
2、设置合适的角色和 prompt
这里我使用了 3 shot(一个 user + assistant 的问答即 1 shot)来创建这个工具,其中 system 角色定义了 assistant 的主要行为,也就是让模型大概知道它自己是干啥的。后面的连续三个 user + assistant prompt 让模型参考应该以何种方式回答问题。
system prompt
shot 1 prompt
shot 2 prompt
shot 3 prompt
至此,我比较关心的几个样本都给了,如果你想让它连标点符号也帮你检查,你可以加更多的 shot
使用
在使用该工具之前,需要先将设置里的附带历史消息数设置为 0,否则消息历史会对之前做的 Few-shot 产生影响。
然后你就可以输入任何句子来让它检查语法或拼写错误并翻译了
大家发挥想象,尽情创作自己的专属工具😇
Beta Was this translation helpful? Give feedback.
All reactions