gpt4 book ai didi

openai-api - 在文档集合上微调 OpenAI GPT-3 模型

转载 作者:行者123 更新时间:2023-12-02 22:44:25 25 4
gpt4 key购买 nike

根据文档https://beta.openai.com/docs/guides/fine-tuning用于微调 OpenAI GPT3 模型的训练数据的结构应如下所示:

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

我有一组来自内部知识库的文档,这些文档已被预处理成格式如下的 JSONL 文件:

{  "id": 0,  "name": "Article Name",  "description": "Article Description",  "created_at": "timestamp",  "updated_at": "timestamp",  "answer": {    "body_txt": "An internal knowledge base article with body text",  },  "author": {    "name": "First Last"},  "keywords": [],  "url": "A URL to internal knowledge base"}
{ "id": 1, "name": "Article Name", "description": "Article Description", "created_at": "timestamp", "updated_at": "timestamp", "answer": { "body_txt": "An internal knowledge base article with body text", }, "author": { "name": "First Last"}, "keywords": [], "url": "A URL to internal knowledge base"}
{ "id": 2, "name": "Article Name", "description": "Article Description", "created_at": "timestamp", "updated_at": "timestamp", "answer": { "body_txt": "An internal knowledge base article with body text", }, "author": { "name": "First Last"}, "keywords": [], "url": "A URL to internal knowledge base"}

然后文档建议可以使用命令 openai api fine_tunes.create -t <TRAIN_FILE_ID_OR_PATH> -m <BASE_MODEL> 对这些文章微调模型.

运行结果:

Error: Expected file to have JSONL format with prompt/completion keys. Missing prompt key on line 1. (HTTP status code: 400)

考虑到上面提到的文件结构,这并不意外。事实上,如果我运行 openai tools fine_tunes.prepare_data -f training-data.jsonl 然后我被告知:

Your file contains 490 prompt-completion pairsERROR in necessary_column validator: prompt column/key is missing. Please make sure you name your columns/keys appropriately, then retry`

尝试在文档集合上微调 GTP3 模型是否是正确的方法,以便稍后可以询问有关文档内容的问题。在 prompt 中会放什么?和 completion在这种情况下,因为我不是从我收集了可能的问题和理想答案的地方开始的。

我是否从根本上误解了用于微调 GTP3 模型的机制? GTP3 需要接受有关可能的问题和答案的培训,这对我来说确实有意义。但是,鉴于基础模型已经过训练,并且此过程更重要的是提供不在公共(public)领域的其他数据集,以便可以提出有关它的问题,我认为我想实现的目标是可能的。作为一个工作示例,我确实可以转到 https://chat.openai.com/并按以下方式询问有关这些文件的问题:

Given the following document:

[Paste the text content of one of the documents]

Can you tell me XXX

事实上,它经常能得到正确的答案。我现在正在尝试做的是在这些文档中的约 500 个上微调模型,这样就不必每次提出问题时都粘贴整个单个文档,这样模型甚至可以考虑涵盖所有 ~500 个内容,而不仅仅是用户提供的单个内容。

最佳答案

微调是修改预训练机器学习模型以满足特定任务需求的过程。没有为模型提供内部知识库。您可以为知识库中的数据 block 创建一个嵌入数据库,而不是对模型进行微调。然后可以使用该数据库来语义搜索最相关的信息以响应查询。当收到查询时,可以搜索数据库以找到与查询最相似的数据 block 。然后可以将此信息提供给 GPT-3 以提供答案。使用这种方法,您可以通过向数据库中添加新的数据 block 来轻松地更新知识。

关于openai-api - 在文档集合上微调 OpenAI GPT-3 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75257323/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com