一、准备工作
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赋值
- Type选择Bearer Token
- Token输入:sk-******************** (来源OpenAI:OPENAI_ACCESS_TOKEN)
3. 选择body数据格式。
4. 点击“send”完成对象。
如有侵权,请联系我们删除。