外观
OpenAI 自定义 Prompt 如何使用?
添加一个 OpenAI 服务,将模式设置为「自定义 Prompt」
![openai-custom-1](https://cdn.ripperhe.com/oss/master/2023/0517/openai-custom-1.jpg)
可以对该服务进行更名,设置「角色设定」
![openai-custom-2](https://cdn.ripperhe.com/oss/master/2023/0517/openai-custom-2.jpg)
效果如下
![openai-custom-3](https://cdn.ripperhe.com/oss/master/2023/0517/openai-custom-3.jpg)
「角色设定」作为 system message 发送给 OpenAI,相当于给 OpenAI 预设一个角色,OpenAI 接下来会扮演这个角色进行回复(有时候会跑偏)。
「用户指令」作为 user message 发送给 OpenAI,相当于你给 OpenAI 发送的消息,和在 OpenAI 网页给 OpenAI 发送消息作用相同。
举例说明下,比如你在 OpenAI 网页让它把一句话翻译成法语,可以这么说:
把下面这段话翻译成法语:
今天天气不错
在 Bob 里面想实现这个功能,你可以将「角色设定」设置为以下文本:
你是一个翻译器
然后因为在 Bob 用的时候,需要翻译的文本是从 Bob 的输入框指定的,需要翻译成为的语言是从 Bob 语言切换栏指定的,Bob 会把这些信息设置为变量(分别是 $query.text 和 $query.detectToLang),你可以在「角色设定」和「用户指令」中使用。
就刚才那个例子,「用户指令」就应该设置为以下文本:
把下面这段话翻译成 $query.detectToLang:
$query.text
「角色设定」可以不设置。
「用户指令」你也可以不设置,当你不设置的时候,Bob 默认就会把输入框的内容直接当做「用户指令」发送给 OpenAI,相当于就是自由对话。
如果你准备设置「用户指令」,请不要在「用户指令」中漏掉 $query.text
,因为 $query.text
就是输入框的内容,如果「用户指令」中不包含 $query.text
,那 OpenAI 返回的内容就和输入框的内容没有任何关系。
![openai-custom-5](https://cdn.ripperhe.com/oss/master/2023/0519/openai-custom-5.jpg)