ChatGPT 文档–API-Reference配制教程(二)

创建完成

POST https://api.openai.com/v1/completions(opens in a new tab)

为提供的提示和参数创建一个完成项。

请求正文

model 字符串 必填

要使用的模型ID。您可以使用“列出模型”API查看所有可用模型,或者请参阅我们的“模型概述”以了解它们的描述。

prompt 字符串或数组 可选项 默认为

要生成完成的提示,编码为字符串、字符串数组、令牌数组或令牌数组的数组。

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

suffix 字符串 可选的 默认为 null

插入文本完成后出现的后缀。

max_tokens 整数 可选项 默认为16

在完成中生成的最大标记数。

您的提示文本和 max_tokens 的令牌数不能超过模型的上下文长度。大多数模型的上下文长度为 2048 个令牌(除了最新的支持 4096 个令牌的模型)。

temperature 数字 可选的 默认为1

使用哪个采样温度,在0和2之间。较高的值,如0.8会使输出更随机,而较低的值,如0.2会使其更加集中和确定性。

我们通常建议更改此参数或 top_p 参数,但不要同时更改两者。

top_p 数字 可选项 默认为1

一种替代温度采样的方法叫做核心采样,模型会考虑到具有 top_p 概率质量的标记结果。因此,0.1 表示只考虑组成前 10% 概率质量的标记。

我们通常建议修改这个或者temperature但不能同时拥有。

n 整数 可选项 默认为1

每个提示生成多少完成次数。

注意:由于此参数会生成许多完成结果,它可能会快速消耗您的令牌配额。请谨慎使用,并确保您对max_tokens和进行了合理的设置max_tokens和stop

stream 布尔值 可选的 默认为false

是否返回部分进度流。如果设置,令牌将作为数据服务器推送事件随着它们变得可用而被发送,由于a的终止,流被终止data: [DONE]信息。

logprobs 整数 可选项 默认值为null

在上面包括对数概率logprobs最有可能的标记,以及所选的标记.例如,如果logprobs如果输入的数字是5,API将返回最有可能的5个标记列表。API将始终返回logprob被抽样的标记,因此可能会有多达logprobs+1响应中的元素。

最大值为logprobs是5。如果您需要更多,请通过我们的帮助中心联系我们,并描述您的使用情况。

echo 布尔值 可选的 默认为false

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

stop 字符串或数组 可选项 默认为null

最多生成4个序列,API将停止生成更多的标记。返回的文本不包含停止序列。

stop 字符串或数组 可选项 默认为null

最多生成4个序列,API将停止生成更多的标记。返回的文本不包含停止序列。

presence_penalty 数字 可选项 默认为0

在-2.0和2.0之间的数字。正值根据它们在文本中出现的情况对新令牌进行惩罚,从而增加模型谈论新主题的可能性。

frequency_penalty 数字 可选项 默认为0

在-2.0和2.0之间的数字。正值会根据文本中现有词频惩罚新令牌,从而降低模型重复相同行的可能性。

best_of 整数 可选项 默认为1

生成best_of完成服务器端的计算并返回“最佳”结果(每个标记具有最高对数概率)。结果无法流式传输。

当与n一起使用时,best_of控制候选完成的数量,n指定要返回多少个 – best_of必须大于n。

注意:由于此参数会生成许多完成结果,它可能会快速消耗您的令牌配额。请谨慎使用,并确保您对 max_tokens 和 stop 设置合理。

logit_bias 地图 可选项 默认为null

修改指定标记在完成中出现的可能性。

接受一个JSON对象,将令牌(由GPT分词器中的令牌ID指定)映射到从-100到100的相关偏差值。您可以使用此分词器工具(适用于GPT-2和GPT-3)将文本转换为标记ID。在数学上,在采样之前,模型生成的logits会添加偏差。确切的影响因模型而异,但介于-1和1之间的值应该会减少或增加选择可能性;像-100或100这样的值应该会导致禁止或专有选择相关令牌。

例如,您可以传递 {“50256”: -100} 来防止生成.

user 字符串 可选的

一个唯一的标识符,代表您的终端用户,可以帮助OpenAI监测和检测滥用。了解更多信息。

curl https://api.openai.com/v1/completions \ -H “Content-Type: application/json” \ -H “Authorization: Bearer $OPENAI_API_KEY” \ -d ‘{ “model”: “text-davinci-003”, “prompt”: “Say this is a test”, “max_tokens”: 7, “temperature”: 0 }’

{ “model”: “text-davinci-003”, “prompt”: “Say this is a test”, “max_tokens”: 7, “temperature”: 0, “top_p”: 1, “n”: 1, “stream”: false, “logprobs”: null, “stop”: “\n”}

{ “id”: “cmpl-uqkvlQyYK7bGYrRHQ0eXlWi7”, “object”: “text_completion”, “created”: 1589478378, “model”: “text-davinci-003”, “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 }}

聊天

给定一个聊天对话,模型将返回一个聊天完成响应。

创建聊天完成

https://api.openai.com/v1/chat/completions(opens in a new tab)

创建聊天消息的完成。

请求正文

model 字符串 必填

要使用的模型ID。有关哪些模型适用于Chat API的详细信息,请参见模型端点兼容性表。

messages 数组 必需的

用于生成聊天完成的消息,以聊天格式。

temperature 数字 可选项 默认为1

使用哪个采样温度,在0和2之间。较高的值,如0.8会使输出更随机,而较低的值,如0.2会使其更加集中和确定性。

我们通常建议更改此参数或 top_p 参数,但不要同时更改两者。

top_p 数字 可选项 默认为1

一种替代温度采样的方法叫做核心采样,模型会考虑到具有 top_p 概率质量的标记结果。因此,0.1 表示只考虑组成前 10% 概率质量的标记。

我们通常建议修改这个或者temperature但不能同时拥有。

n 整数 可选项 默认为1

每个输入消息要生成多少聊天完成选项。

stream 布尔值 可选的 默认为false

如果设置了,将发送部分消息增量,就像在ChatGPT中一样。令牌将作为数据服务器推送事件随时可用,并通过终止流来发送data:[DONE]消息。请参阅OpenAI Cookbook以获取示例代码。

stop 字符串或数组 可选项 默认为null

最多生成4个序列,API将停止生成更多的令牌。

max_tokens 整数 可选项 默认为无穷大

在聊天完成中生成的最大令牌数。

输入令牌和生成的令牌的总长度受模型上下文长度的限制。

presence_penalty 数字 可选项 默认为0

在-2.0和2.0之间的数字。正值根据它们在文本中出现的情况对新令牌进行惩罚,从而增加模型谈论新主题的可能性。

frequency_penalty 数字 可选项 默认为0

在-2.0和2.0之间的数字。正值会根据文本中现有词频惩罚新令牌,从而降低模型重复相同行的可能性。

logit_bias 地图 可选项 默认为null

修改完成时指定标记出现的可能性。

接受一个JSON对象,将标记(由分词器中的标记ID指定)映射到从-100到100的相关偏差值。在采样之前,模型生成的logits会加上这个偏差。确切的影响因模型而异,但是-1到1之间的值应该会减少或增加选择概率;像-100或100这样的值应该会导致相关标记被禁止或独占选择。

user 字符串 可选的

一个唯一的标识符,代表您的终端用户,可以帮助OpenAI监测和检测滥用。了解更多信息。

curl https://api.openai.com/v1/chat/completions \ -H “Content-Type: application/json” \ -H “Authorization: Bearer $OPENAI_API_KEY” \ -d ‘{ “model”: “gpt-3.5-turbo”, “messages”: [{“role”: “user”, “content”: “Hello!”}] }’

{ “model”: “gpt-3.5-turbo”, “messages”: [{“role”: “user”, “content”: “Hello!”}]}

{ “id”: “chatcmpl-123”, “object”: “chat.completion”, “created”: 1677652288, “choices”: [{ “index”: 0, “message”: { “role”: “assistant”, “content”: “\n\nHello there, how may I assist you today?”, }, “finish_reason”: “stop” }], “usage”: { “prompt_tokens”: 9, “completion_tokens”: 12, “total_tokens”: 21 }}

编辑

给定一个提示和一条指令,模型将返回提示的编辑版本。

创建编辑

https://api.openai.com/v1/edits(opens in a new tab)

请求正文

model 字符串 必填

要使用的模型ID。您可以在此端点中使用text-davinci-edit-001或code-davinci-edit-001 模型。

input 字符串 可选项 默认为”

用作编辑起点的输入文本。

instruction 字符串 必填

指导模型如何编辑提示的说明。

n 整数 可选项 默认为1

输入和指令需要生成多少次编辑。

temperature 数字 可选项 默认为1

使用哪个采样温度,在0和2之间。较高的值,如0.8会使输出更随机,而较低的值,如0.2会使其更加集中和确定性。

我们通常建议更改此参数或 top_p 参数,但不要同时更改两者。

top_p 数字 可选项 默认为1

一种替代温度采样的方法叫做核心采样,模型会考虑到具有 top_p 概率质量的标记结果。因此,0.1 表示只考虑组成前 10% 概率质量的标记。

我们通常建议修改这个或者temperature但不能同时.

curl https://api.openai.com/v1/edits \ -H “Content-Type: application/json” \ -H “Authorization: Bearer $OPENAI_API_KEY” \ -d ‘{ “model”: “text-davinci-edit-001”, “input”: “What day of the wek is it?”, “instruction”: “Fix the spelling mistakes” }’

{ “model”: “text-davinci-edit-001”, “input”: “What day of the wek is it?”, “instruction”: “Fix the spelling mistakes”,}

{ “object”: “edit”, “created”: 1589478378, “choices”: [ { “text”: “What day of the week is it?”, “index”: 0, } ], “usage”: { “prompt_tokens”: 25, “completion_tokens”: 32, “total_tokens”: 57 }}

图像
创建图像

https://api.openai.com/v1/images/generations(opens in a new tab)

根据提示创建图像。

请求正文

prompt 字符串 必填

所需图像的文本描述。最大长度为1000个字符。

n 整数 可选项 默认为1

要生成的图像数量。必须在1和10之间。

size 字符串 可选项 默认为1024×1024

生成图像的尺寸。必须是256×256、512×512或1024×1024之一。

response_format 字符串 可选项 默认为url

生成的图像返回格式。必须是url或b64_json之一。

user 字符串 可选的

一个唯一的标识符,代表您的终端用户,可以帮助OpenAI监测和检测滥用。了解更多信息。

{ “prompt”: “A cute baby sea otter”, “n”: 2, “size”: “1024×1024”}

{ “created”: 1589478378, “data”: [ { “url”: “https://…” }, { “url”: “https://…” } ]}

创建图像编辑

https://api.openai.com/v1/images/edits(opens in a new tab)

根据原始图像和提示创建编辑或扩展的图像。

请求正文

image 字符串 必填

要编辑的图像。必须是有效的PNG文件,小于4MB且为正方形。如果未提供遮罩,则图像必须具有透明度,该透明度将用作遮罩。

mask 字符串 可选的

另外一张图片,其完全透明的区域(例如 alpha 值为零的区域)指示了哪里image应进行编辑。必须是有效的PNG文件,小于4MB,并且具有相同的尺寸imag。

prompt 字符串 必填

所需图像的文本描述。最大长度为1000个字符。

n 整数 可选项 默认为1

要生成的图像数量。必须在1和10之间。

size 字符串 可选项 默认为1024×1024

生成图像的尺寸。必须是256×256、512×512或1024×1024之一。

user 字符串 可选的

一个唯一的标识符,代表您的终端用户,可以帮助OpenAI监测和检测滥用。了解更多信息。

curl https://api.openai.com/v1/images/generations \ -H “Content-Type: application/json” \ -H “Authorization: Bearer $OPENAI_API_KEY” \ -d ‘{ “prompt”: “A cute baby sea otter”, “n”: 2, “size”: “1024×1024” }’

{ “prompt”: “A cute baby sea otter”, “n”: 2, “size”: “1024×1024”}

{ “created”: 1589478378, “data”: [ { “url”: “https://…” }, { “url”: “https://…” } ]}

创建图像编辑

https://api.openai.com/v1/images/edits(opens in a new tab)

根据原始图像和提示创建编辑或扩展的图像。

请求正文

image 字符串 必填

要编辑的图像。必须是有效的PNG文件,小于4MB且为正方形。如果未提供遮罩,则图像必须具有透明度,该透明度将用作遮罩。

mask 字符串 可选的

另外一张图片,其完全透明的区域(例如 alpha 值为零的区域)指示了哪里image应进行编辑。必须是有效的PNG文件,小于4MB,并且具有相同的尺寸image。

prompt 字符串 必填

所需图像的文本描述。最大长度为1000个字符。

n 整数 可选项 默认为1

要生成的图像数量。必须在1和10之间。

size 字符串 可选项 默认为1024×1024

生成图像的尺寸。必须是256×256、512×512或1024×1024之一。

response_format 字符串 可选项 默认为url

生成的图像返回格式。必须是url或b64_json之一。

user 字符串 可选的

一个唯一的标识符,代表您的终端用户,可以帮助OpenAI监测和检测滥用。了解更多信息。

curl https://api.openai.com/v1/images/edits \ -H “Authorization: Bearer $OPENAI_API_KEY” \ -F image=”@otter.png” \ -F mask=”@mask.png” \ -F prompt=”A cute baby sea otter wearing a beret” \ -F n=2 \ -F size=”1024×1024″

{ “created”: 1589478378, “data”: [ { “url”: “https://…” }, { “url”: “https://…” } ]}

创建图像变体

https://api.openai.com/v1/images/variations(opens in a new tab)

创建给定图像的变体。

请求正文

image 字符串 必填

用作变体基础的图像。必须是有效的PNG文件,小于4MB,并且为正方形。

n 整数 可选项 默认为1

要生成的图像数量。必须在1和10之间。

size 字符串 可选项 默认为1024×1024

生成图像的尺寸。必须是256×256、512×512或1024×1024之一。

response_format 字符串 可选项 默认为url

生成的图像返回格式。必须是url或b64_json之一。

user 字符串 可选的

一个唯一的标识符,代表您的终端用户,可以帮助OpenAI监测和检测滥用。了解更多信息。

curl https://api.openai.com/v1/images/variations \ -H “Authorization: Bearer $OPENAI_API_KEY” \ -F image=”@otter.png” \ -F n=2 \ -F size=”1024×1024″

{ “created”: 1589478378, “data”: [ { “url”: “https://…” }, { “url”: “https://…” } ]}

 

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享