ChatGPT session Key的用处
无需购买API KEY:session key 效果等同于官方API,能使用常用的聊天模型
直接用于API接口调用:session key可以直接用于后端程序调用ChatGPT官方API,需要单独申请ChatGPT KEY。在调用ChatGPT API时,只需要将API KEY换成session Key即可,接口调用方法一致。
ChatGPT session Key的获取方法
1.浏览器登录自己的ChatGPT账号
浏览器打开ChatGPT官网,登录自己的账号。
2.浏览器窗口点F12,打开调试对话框
登录成功后,窗口点击键盘F12,弹出调试对话框。
3.向ChatGPT进行测试提问
向ChatGPT提一个测试问题,任何简单的问题均可。该步骤的目的是捕获网络请求日志,以便调试窗口能够搜索到session key。
4.在调试对话框搜索关键字
在调试窗口中查找conversation关键字的记录,依次查看该记录的”Headers”-“Request”-“Authorization”,将”Bearer”后的很长字符串全部复制。这一长串字符就是session key。
5.复制session key
保存步骤4复制的session key,记录保存的日期,预估过期时间。目前一般有效期7-10天左右。
ChatGPT session Key的使用方法
ChatGPT session key 的使用方法和API KEY完全一致。以下是JAVA程序调用示例:
ChatGPT chatGPT = ChatGPT.builder()
.apiKey("eyJhbGciOiJS************")
.timeout(9000)
.apiHost("https://api.openai.com/") //反向代理地址
.build()
.init();
//prompt
Message system = Message.ofSystem("我是来自中国的用户,和我沟通请进来用中文简体");
//获取历史消息记录
List<Message> historyMsgList = new ArrayList<>();
Message message = Message.of("鲁迅和周树人为什么打架");
historyMsgList.add(message);
if(StrUtil.isNotEmpty(system.getContent())){
historyMsgList.add(0,system);
}
ChatCompletion chatCompletion = ChatCompletion.builder()
.model(ChatCompletion.Model.GPT_4.getName())
//.messages(Arrays.asList(system, message))
.messages(historyMsgList)
.maxTokens(3000)
.temperature(0.9)
.build();
ChatCompletionResponse response = chatGPT.chatCompletion(chatCompletion);
log.info("ChatGPT返回:{}",response);
Message res = response.getChoices().get(0).getMessage();
log.info("GPT回复:{}",res.getContent());
以上代码使用了第三方的公共库,测试请添加以下依赖:
<dependency>
<groupId>com.github.plexpt</groupId>
<artifactId>chatgpt</artifactId>
<version>4.2.0</version>
</dependency>
运行返回:
常见问题Q&A
session key能使用GPT4 API吗?
如果你的ChatGPT账号已经订阅ChatGPT plus,session key可以直接调用GPT4模型。如果没有付费订阅,只能使用GPT3.5模型。
session key能使用多久?
一般7-10天左右。过期后重新登录ChatGPT账号获取新的key。
session key的支持高并发调用吗?
不能。session key的调用限制和账号一致。
ChatGPT3.5每分钟调用3次,ChatGPT4每三小时调用4次。
为什么要用session key?
如果没有订阅ChatGPT4 Plus,也没有付费意愿,只有1个ChatGPT账号。你可以通过session key免费且高频的调用GPT3.5的接口,满足日常使用。
session key需要特殊网络吗?
需要,网络要求和ChatGPT账号一致。