如何在GPT-3上保存预先训练的API



我有一个关于GPT-3的问题。正如我们所知,我们可以给出一些网络的例子;调整";模型。

  1. 向模型显示示例
  2. 保存这些示例
  3. 重用API

import openai
class Example():
"""Stores an input, output pair and formats it to prime the model."""
def __init__(self, inp, out):
self.input = inp
self.output = out
def get_input(self):
"""Returns the input of the example."""
return self.input
def get_output(self):
"""Returns the intended output of the example."""
return self.output
def format(self):
"""Formats the input, output pair."""
return f"input: {self.input}noutput: {self.output}n"

class GPT:
"""The main class for a user to interface with the OpenAI API.
A user can add examples and set parameters of the API request."""
def __init__(self, engine='davinci',
temperature=0.5,
max_tokens=100):
self.examples = []
self.engine = engine
self.temperature = temperature
self.max_tokens = max_tokens
def add_example(self, ex):
"""Adds an example to the object. Example must be an instance
of the Example class."""
assert isinstance(ex, Example), "Please create an Example object."
self.examples.append(ex.format())

现在,当我使用";给予";模型的示例我有以下代码:

gpt2 = GPT(engine="davinci", temperature=0.5, max_tokens=100)
gpt2.add_example(Example('Two plus two equals four', '2 + 2 = 4'))
gpt2.add_example(Example('The integral from zero to infinity', '\int_0^{\infty}'))
prompt1 = "x squared plus y squared plus equals z squared"
output1 = gpt2.submit_request(prompt1)

然而,我无法保存这个";预先训练的";API每次我都要对它进行再培训——有什么方法可以重用它吗?

每次我都必须重新训练它-有什么方法可以重用它吗?

不,没有任何方法可以重用它。你混淆了术语:你不需要训练GPT-3,你需要将示例传递给提示。由于您没有任何类型的容器可以存储以前的结果(从而"训练"您的模型(,因此每次都需要传递包括您的任务在内的示例。

完善工程流程(从而降低每次请求的成本(是一个困难的过程,需要很长时间的反复试验。

尽管让我们诚实地说:即使每次都通过示例,GPT-3也是非常划算的。根据您的具体情况,您(平均(只需花费几百个代币即可完成Davinci的复杂任务。

您需要对模型进行微调。请参阅:https://beta.openai.com/docs/guides/fine-tuning

但步骤是:

1-安装openai cli

2-准备培训文件

3-选择一个现有的基础模型来调整这个训练数据集

4-将此调谐型号称为

相关内容

  • 没有找到相关文章

最新更新