完成
Legacy

给定提示,模型将返回一个或多个预测的完成次数以及每个位置上替代标记的概率。大多数开发人员应该使用我们的 Chat Completions API 来利用我们最好和最新的模型。source

创建补全
Legacy

POST https://api.openai.com/v1/completions

为提供的提示和参数创建补全。source

请求正文

要使用的模型的 ID。您可以使用 List models API 查看所有可用模型,或查看我们的 Model overview 了解它们的描述。source

生成补全的提示,编码为字符串、字符串数组、标记数组或标记数组数组。source

请注意,<|endoftext|> 是模型在训练过程中看到的文档分隔符,因此如果未指定提示,模型将生成,就像从新文档的开头开始一样。source

生成best_ofcompletions 并返回 “best” (每个令牌具有最高对数概率的那个)。无法流式传输结果。source

当与n,best_of控制候选完成的数量,并且n指定要返回的数量 –best_of必须大于n.source

注意:由于此参数会生成许多完成,因此它会快速消耗您的令牌配额。请谨慎使用并确保max_tokensstop.source

除了完成之外,还回显提示source

介于 -2.0 和 2.0 之间的数字。正值会根据新标记到目前为止在文本中的现有频率来惩罚新标记,从而降低模型逐字重复同一行的可能性。source

请参阅有关频率和存在处罚的更多信息。source

修改指定标记出现在补全中的可能性。source

接受一个 JSON 对象,该对象将令牌(由 GPT 分词器中的令牌 ID 指定)映射到从 -100 到 100 的关联偏差值。您可以使用此分词器工具将文本转换为分词 ID。从数学上讲,偏差在采样之前被添加到模型生成的 logit 中。确切的效果因模型而异,但 -1 和 1 之间的值应降低或增加选择的可能性;像 -100 或 100 这样的值应该导致禁止或独占选择相关令牌。source

例如,您可以将{"50256": -100}以防止生成 <|endoftext|> 令牌。source

包括logprobs最有可能的输出 Token,以及所选的 Token。例如,如果logprobs为 5,则 API 将返回 5 个最可能的令牌的列表。API 将始终返回logprob采样令牌中,因此可能最多有logprobs+1元素中。source

的最大值logprobs是 5。source

补全中可以生成的最大令牌数。source

提示的令牌计数加上max_tokens不能超过模型的上下文长度。用于对令牌进行计数的 Python 代码示例source

要为每个提示生成的完成次数。source

注意:由于此参数会生成许多完成,因此它会快速消耗您的令牌配额。请谨慎使用并确保max_tokensstop.source

介于 -2.0 和 2.0 之间的数字。正值根据新标记到目前为止是否出现在文本中来惩罚新标记,从而增加模型讨论新主题的可能性。source

请参阅有关频率和存在处罚的更多信息。source

如果指定,我们的系统将尽最大努力确定性地进行采样,以便使用相同的seed和 parameters 应返回相同的结果。source

确定性是不能保证的,您应该参考system_fingerprintresponse 参数来监控后端的更改。source

最多 4 个序列,API 将在其中停止生成更多令牌。返回的文本将不包含停止序列。source

是否流回部分进度。如果设置,令牌将在可用时作为仅限数据服务器发送的事件发送,流由data: [DONE]消息。Python 代码示例source

流式处理响应的选项。仅在设置stream: true.source

插入文本完成后的后缀。source

此参数仅支持gpt-3.5-turbo-instruct.source

要使用的采样温度,介于 0 和 2 之间。较高的值(如 0.8)将使输出更加随机,而较低的值(如 0.2)将使其更加集中和确定。source

我们通常建议更改此 或top_p但不能两者兼而有之。source

使用温度进行采样的替代方法,称为核抽样,其中模型考虑具有top_p概率质量的标记的结果。所以 0.1 意味着只考虑包含前 10% 概率质量的 token。source

我们通常建议更改此 或temperature但不能两者兼而有之。source

代表您的最终用户的唯一标识符,可以帮助 OpenAI 监控和检测滥用行为。了解更多source

返回

返回一个完成对象,如果请求是流式的,则返回一系列完成对象。source

示例请求
1
2
3
4
5
6
7
8
9
curl https://api.openai.com/v1/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -d '{
    "model": "gpt-3.5-turbo-instruct",
    "prompt": "Say this is a test",
    "max_tokens": 7,
    "temperature": 0
  }'
响应
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
{
  "id": "cmpl-uqkvlQyYK7bGYrRHQ0eXlWi7",
  "object": "text_completion",
  "created": 1589478378,
  "model": "gpt-3.5-turbo-instruct",
  "system_fingerprint": "fp_44709d6fcb",
  "choices": [
    {
      "text": "\n\nThis is indeed a test",
      "index": 0,
      "logprobs": null,
      "finish_reason": "length"
    }
  ],
  "usage": {
    "prompt_tokens": 5,
    "completion_tokens": 7,
    "total_tokens": 12
  }
}

完成对象
Legacy

表示来自 API 的完成响应。注意:流式和非流式响应对象共享相同的形状(与聊天端点不同)。source

完成的唯一标识符。source

模型为输入提示生成的完成选项列表。source

创建完成时的 Unix 时间戳(以秒为单位)。source

用于完成 (completion) 的模型。source

此指纹表示模型运行时使用的后端配置。source

可与seedrequest 参数来了解何时进行了可能影响确定性的后端更改。source

对象类型,始终为 “text_completion”source

完成请求的使用情况统计信息。source

OBJECT 完成对象
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
  "id": "cmpl-uqkvlQyYK7bGYrRHQ0eXlWi7",
  "object": "text_completion",
  "created": 1589478378,
  "model": "gpt-4-turbo",
  "choices": [
    {
      "text": "\n\nThis is indeed a test",
      "index": 0,
      "logprobs": null,
      "finish_reason": "length"
    }
  ],
  "usage": {
    "prompt_tokens": 5,
    "completion_tokens": 7,
    "total_tokens": 12
  }
}