client.chat.completions.create() 输入参数
此函数用于创建聊天机器人的回复。以下是其各个输入参数的详细描述:
参数 | 数据类型 | 说明 |
---|---|---|
model | string | 需要使用的模型ID。例如,使用GPT-3.5的模型ID为gpt-3.5-turbo-0125 ,使用GPT-4的模型ID为gpt-4-turbo-preview 。 |
messages | array | 包括所有的对话历史。目前,OpenAI提供的message role有: system , user , assistant , tool 类型,用于区分是系统级别的消息、AI助手级别的消息,还是用户级别的消息。在多场景下,需要包含历史记录,所以,一般将所有的用户和助手回复的消息,一起append到messages中,再进行下一次提问。 |
max_tokens | integer或null | 指定生成回复的最大token数量。可以通过调整此参数来控制生成内容的长度,进而影响计算成本。 |
stop | string array或null | 定义一个或多个停止符,用来指定生成的文本在哪些序列后应该结束。这可以是特定的关键字或符号。 |
stream | boolean或null | 指定是否以流的形式返回生成的结果。这对于实时生成大量文本内容非常有用。 |
temperature | number或null | 控制生成响应的随机性。取值范围通常从0到1,较低的值使生成的文本更加确定性强,较高的值则让响应更加多样化和不可预测。 |
top_p | number | 核采样策略,限制模型考虑为可能回答的令牌分布。例如,top_p为0.1意味着只考虑概率累积为前10%的令牌。 |
user | string | 用户的唯一标识符,可用于帮助OpenAI监控和调整模型行为,以及进行使用分析。 |
seed | integer或null | 通过设置种子值,可以确保相同的输入在相同的种子下产生确定性的输出。这对于测试和特定类型的应用很有用。 |
tools | array | 允许指定模型可以调用的外部函数。这些函数用于处理特定任务,如日期计算、数据查询等,最多支持128个function。 |
tool_choice | string或object | 控制特定类型的个function,none表示模型不调用任何function而直接生成response。auto表示模型自动决定是否调用function。如果未定义具体的function,则默认为none。 |
client.chat.completions.create() 输出参数详细说明
以下表格详细描述了从 client.chat.completions.create()
方法返回的数据结构的每个字段:
字段 | 类型 | 说明 |
---|---|---|
choices | array | 包含 chat.completion 的结果数组,通常情况下为1,但是当请求设置为n > 1时,choices 数组将包含多个元素。 |
choices[index] | integer | 指定 choices 数组中的索引。 |
choices[message] | object | 包含实际聊天消息的对象,每个 choices 项包含一个 message 对象。 |
choices[message][role] | string | 角色信息,例如 assistant ,标识消息的发送者角色。 |
choices[message][content] | string或null |
message 对象中的内容字段,包含生成的文本内容。 |
choices[message][tool_calls] | array | 调用function_call返回的结果信息 |
choices[message][function_call] | object | 已弃用 |
choices[message][function_call][logprobs] | object | 模型生成文本的概率日志信息,通常用于调试和理解模型选择特定文本的原因。 |
finish_reason | string | 描述生成完成的原因,例如达到指定的 stop 序列,或因为达到了最大长度 length 而结束。如果由于调用了function_call,则为tool_calls |
created | integer | 创建响应的时间戳,以 UNIX 时间格式表示。 |
model | string | 被用于生成响应的模型的ID。 |
object | string | 响应对象的类型,通常为 chat.completion 。 |
usage | object | 包含有关请求计数的信息,如 prompt_tokens , completion_tokens , total_tokens 等字段。 |
usage[completion_tokens] | integer | 生成响应时使用的tokens数量。 |
usage[prompt_tokens] | integer | 生成响应前使用的tokens数量。 |
usage[total_tokens] | integer | 请求中使用的总tokens数量。 |