为OpenAI的GPT-3微调构建数据集

yqhsw0fo  于 2023-03-03  发布在  其他
关注(0)|答案(1)|浏览(679)

OpenAI的API的fine tuning端点似乎相当新,我在网上找不到许多微调数据集的示例。
我负责一个语音机器人,我正在测试GPT-3在一般开放式对话问题上的性能,我想在我们目前使用的“固定”意图-React对上对模型进行train:这可能最终会在公司声音和风格方面表现得更好。
我已经准备好了一个从当前对话引擎中提取的数据的长JSON文件,它将用户输入与意图匹配,并返回指定的响应。
到目前为止,为了进行一些快速测试,我已经将对API的调用设置为suggest

<name> is <company>'s voicebot. he is kind and professional...

This is a conversation between <name> and a customer:

它是每个查询的前置项,然后是一个小的Python类,它跟踪以

User: <request the user provides>
Bot:

然后每轮API的响应都会被追加,这样我就可以跟踪说了什么.在几个问题之后,我发送的查询或提示字符串看起来像这样:

<name> is <company>'s voicebot. he is kind and professional...

This is a conversation between <name> and a user:

User: <request>
Bot: <response>
User: <request>
Bot: <response>
... and so on
Bot:

我的问题是,我必须为我的训练数据提供相同的“格式”吗?这是否可取?docs指示训练集应该采用以下格式:

{"prompt": "<prompt text>", "completion": "<ideal generated text>"}
{"prompt": "<prompt text>", "completion": "<ideal generated text>"}
...

但是提示符是否需要包含我的介绍文本(描述)或者我只是简单地提供一系列的用户/机器人交换与一个Bot:在结束和完成的答案,我会期望?什么将是一个 * 最佳实践 * 在这种情况下?我担心的是,如果我想稍微改变介绍提示一个月后,我'我们必须再次重新训练整个过程,因为每个响应都是用预先添加的特定文本块训练的。

bq3bfh9z

bq3bfh9z1#

我联系了OpenAI的支持人员,他们非常乐于助人:我把他们的答案留在这里。
提示符不需要每次都有固定的介绍,相反,您只需要提供至少几百个用户/机器人交换的提示-完成对。我们有一个聊天机器人微调数据集here的示例。

相关问题