调用GPT3接口的一些参数

GPT3接口

官方文档 API Reference

调用

temperature

通过设置合适的 temperature 值和观察每个 token 的概率,判断输出的确定性和可靠性,避免与直觉不符的结果。

在实际应用中,这两个参数非常有价值。聊天应用可设置较高 temperature 值,增加多样性;回答科学问题可设置较低 temperature 值,避免错误信息。

logprobs

使用 Chat Completions API 的 logprobs 和 top_logprobs 参数来获取输出 tokens 的概率信息,以及如何利用这些信息来实现不同的应用场景。

logprobs 参数的作用:logprobs 参数可以让 API 返回每个输出 token 的对数概率,以及每个 token 位置的最有可能的几个候选 tokens 及其对数概率。这些信息可以帮助用户评估模型的置信度,探索模型的备选响应,计算输出序列的整体概率,以及处理特殊字符或表情符号等。

logprob 可以是任何负数或 0.0,0.0 对应于 100% 概率

logprobs 参数的用例:logprobs 参数可以用于多种场景,例如:

分类任务:logprobs 参数可以提供每个类别预测的概率,让用户可以设置自己的分类或置信阈值。

检索任务:logprobs 参数可以用于自我评估检索内容是否包含足够的信息来回答问题,从而减少基于检索的幻觉和提高准确性。

自动完成任务:logprobs 参数可以用于动态地推荐下一个单词或 token,但只在模型对下一个单词很有把握的时候。

bytes 参数的作用:bytes 参数可以返回每个输出 token 的 ASCII(十进制 utf-8)值,这些值可以用于编码和解码每个 token,特别是包含表情符号或特殊字符的 token。

python 复制代码
from openai import OpenAI
client = OpenAI()

completion = client.chat.completions.create(
  model="gpt-3.5-turbo",#使用适当的引擎,也可以是其他的GPT-3引擎
  messages=[
    {"role": "user", "content": "Hello!"}
  ],
  logprobs=True,#得到对数概率
  top_logprobs=2
)

print(completion.choices[0].message)
print(completion.choices[0].logprobs)

响应

python 复制代码
{
  "id": "chatcmpl-123",
  "object": "chat.completion",
  "created": 1702685778,
  "model": "gpt-3.5-turbo-0613",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Hello! How can I assist you today?"
      },
      "logprobs": {
        "content": [
          {
            "token": "Hello",
            "logprob": -0.31725305,
            "bytes": [72, 101, 108, 108, 111],
            "top_logprobs": [
              {
                "token": "Hello",
                "logprob": -0.31725305,
                "bytes": [72, 101, 108, 108, 111]
              },
              {
                "token": "Hi",
                "logprob": -1.3190403,
                "bytes": [72, 105]
              }
            ]
          },
          {
            "token": "!",
            "logprob": -0.02380986,
            "bytes": [
              33
            ],
            "top_logprobs": [
              {
                "token": "!",
                "logprob": -0.02380986,
                "bytes": [33]
              },
              {
                "token": " there",
                "logprob": -3.787621,
                "bytes": [32, 116, 104, 101, 114, 101]
              }
            ]
          },
          {
            "token": " How",
            "logprob": -0.000054669687,
            "bytes": [32, 72, 111, 119],
            "top_logprobs": [
              {
                "token": " How",
                "logprob": -0.000054669687,
                "bytes": [32, 72, 111, 119]
              },
              {
                "token": "<|end|>",
                "logprob": -10.953937,
                "bytes": null
              }
            ]
          },
          {
            "token": " can",
            "logprob": -0.015801601,
            "bytes": [32, 99, 97, 110],
            "top_logprobs": [
              {
                "token": " can",
                "logprob": -0.015801601,
                "bytes": [32, 99, 97, 110]
              },
              {
                "token": " may",
                "logprob": -4.161023,
                "bytes": [32, 109, 97, 121]
              }
            ]
          },
          {
            "token": " I",
            "logprob": -3.7697225e-6,
            "bytes": [
              32,
              73
            ],
            "top_logprobs": [
              {
                "token": " I",
                "logprob": -3.7697225e-6,
                "bytes": [32, 73]
              },
              {
                "token": " assist",
                "logprob": -13.596657,
                "bytes": [32, 97, 115, 115, 105, 115, 116]
              }
            ]
          },
          {
            "token": " assist",
            "logprob": -0.04571125,
            "bytes": [32, 97, 115, 115, 105, 115, 116],
            "top_logprobs": [
              {
                "token": " assist",
                "logprob": -0.04571125,
                "bytes": [32, 97, 115, 115, 105, 115, 116]
              },
              {
                "token": " help",
                "logprob": -3.1089056,
                "bytes": [32, 104, 101, 108, 112]
              }
            ]
          },
          {
            "token": " you",
            "logprob": -5.4385737e-6,
            "bytes": [32, 121, 111, 117],
            "top_logprobs": [
              {
                "token": " you",
                "logprob": -5.4385737e-6,
                "bytes": [32, 121, 111, 117]
              },
              {
                "token": " today",
                "logprob": -12.807695,
                "bytes": [32, 116, 111, 100, 97, 121]
              }
            ]
          },
          {
            "token": " today",
            "logprob": -0.0040071653,
            "bytes": [32, 116, 111, 100, 97, 121],
            "top_logprobs": [
              {
                "token": " today",
                "logprob": -0.0040071653,
                "bytes": [32, 116, 111, 100, 97, 121]
              },
              {
                "token": "?",
                "logprob": -5.5247097,
                "bytes": [63]
              }
            ]
          },
          {
            "token": "?",
            "logprob": -0.0008108172,
            "bytes": [63],
            "top_logprobs": [
              {
                "token": "?",
                "logprob": -0.0008108172,
                "bytes": [63]
              },
              {
                "token": "?\n",
                "logprob": -7.184561,
                "bytes": [63, 10]
              }
            ]
          }
        ]
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 9,
    "completion_tokens": 9,
    "total_tokens": 18
  },
  "system_fingerprint": null
}
相关推荐
凤枭香8 分钟前
Python Scikit-learn简介
开发语言·python·机器学习·scikit-learn
人生!?11 分钟前
爬虫实战:采集知乎XXX话题数据
爬虫·python
数据岛13 分钟前
sklearn中常用数据集简介
人工智能·python·sklearn
微蓝课堂22 分钟前
【微蓝课堂】机器人编程|树莓派系列|13-从零开始编写TM1637驱动程序
笔记·python·青少年编程·机器人
zaim126 分钟前
计算机的错误计算(一百六十三)
java·c++·python·matlab·错数·等价算式
寒雒30 分钟前
【Python】实战:实现GUI登录界面
开发语言·前端·python
好看资源平台36 分钟前
网络爬虫——常见问题与调试技巧
爬虫·python
Dreams°1231 小时前
【大数据测试Flume:从 0-1详细教程】
大数据·python·单元测试·自动化·flume
stormsha2 小时前
go-rod vs Selenium:自动化测试工具的比较与选择
python·selenium·测试工具·golang
逝去的紫枫2 小时前
Python Selenium:Web自动化测试与爬虫开发
开发语言·python·selenium