站点图标 AI技术聚合

ChatGPT 聊天接口API 使用

一、准备工作

1.准备 OPENAI_ACCESS_TOKEN
2.准备好PostMan 软件

二、测试交流Demo

本次使用POSTMAN工具进行快速测试,旨在通过ChatGPT API实现有效的上下文流。在测试过程中,我们发现了三个问题:
   1.如果您想要进行具有上下文的交流,每次POST请求都需要将历史交流信息放入“messages”对象中。这会导致token数量成倍增长,从而增加您的费用成本。
   2.计费方式为请求提问token和回答token的总和。如下:

ChatGPT 返回数据中usage 对象。其中total_tokens为本次请求的计费token
usage : {
“prompt_tokens”: 177,
“completion_tokens”: 38,
“total_tokens”: 215
}

   3.每次POST请求都是独立的会话。

1.测试上下文提问

1.1 提问

// 提问Post body数据
{
  "model": "gpt-3.5-turbo",
  "messages": [
    { "role": "system", "content": "You are a chatbot" },
    { "role": "user", "content": "我能用中文向你提问题吗?" },
    { "role": "assistant", "content": "当然可以,我可以用中文回答你的问题。请问你有什么需要帮助的吗?" },
    { "role": "user", "content": "我想更好的与你交流,必须把每次交流信息告诉你是吗?" },
    {
                "role": "assistant",
                "content": "是的,您需要输入您想要与我交流的信息,我才能理解并回答您的问题。如果您有任何疑问或需要帮助,请随时告诉我。"
    },
    { "role": "user", "content": "我上句话说了什么?" }
  ],
  "max_tokens": 70,
  "temperature": 0
}

1.2 回复

// 返回response 数据
{
    "id": "chatcmpl-77aodGL1ymzpU25nZse4DVQa7M9I8",
    "object": "chat.completion",
    "created": 1682044171,
    "model": "gpt-3.5-turbo-0301",
    "usage": {
        "prompt_tokens": 177,
        "completion_tokens": 38,
        "total_tokens": 215
    },
    "choices": [
        {
            "message": {
                "role": "assistant",
                "content": "您上句话说的是:“我想更好的与你交流,必须把每次交流信息告诉你是吗?”"
            },
            "finish_reason": "stop",
            "index": 0
        }
    ]
}

2.测试单次提问

我是在 “测试 上下文提问”章节中Post请求后,紧挨执行下面Post请求。测试发现:每次Post请求都是独立会话,如果要实现上下文有效的交流就必须在单次Post请求中把上下文所有的交流内容都发送给ChatGPT。

1.1 提问

{
  "model": "gpt-3.5-turbo",
  "messages": [
    { "role": "system", "content": "You are a chatbot" },
    { "role": "user", "content": "我上句话说了什么?" }
  ],
  "max_tokens": 70,
  "temperature": 0
}

1.2 回复

{
    "id": "chatcmpl-77b90YMOLlJ1fJEtdnDC3Li9E7DL0",
    "object": "chat.completion",
    "created": 1682045434,
    "model": "gpt-3.5-turbo-0301",
    "usage": {
        "prompt_tokens": 29,
        "completion_tokens": 15,
        "total_tokens": 44
    },
    "choices": [
        {
            "message": {
                "role": "assistant",
                "content": "您上句话说了:\"You are a chatbot\"。"
            },
            "finish_reason": "stop",
            "index": 0
        }
    ]
}

三、PostMan使用

1.访问接口地址

接口地址:https://api.openai.com/v1/chat/completions
请求方式:POST

2.授权Authorization赋值

  1. Type选择Bearer Token
  2. Token输入:sk-******************** (来源OpenAI:OPENAI_ACCESS_TOKEN)

3. 选择body数据格式。

4. 点击“send”完成对象。

文章出处登录后可见!

已经登录?立即刷新
退出移动版