admin 管理员组文章数量: 887017
一、先看效果
目前程序员盒子Web应该已经基于OpenAI开放能力实现了一个用起来还比较流畅的AI智能对话机器人。
访问程序员盒子首页: 程序员盒子 - 助力编程学习提效
Ctrl + Enter 快捷键可唤醒AI助手:
我问:程序员盒子网站
AI回答:程序员盒子网站是一家专注于提供程序员需要的资源的网站。它提供了各种关于编程的资源,以及讨论、分享等社区功能,使用户可以更快更好的学习开发技能。程序员盒子网站收集了大量与编程相关的资料和内容,这些资料包括但不限于书籍、教程、技术文章、编程语言等。它还提供了一个交流平台,让用户可以相互分享经验,讨论技术问题,提出建议和解决问题。
如图对话所示,当我问到程序员盒子网站的时候,AI的回答却是对网站内容进行的一定分析之后给出了回复,这个回复内容在网上找不到的(也证明分析能力还是很强的,确实可以称为我的一个AI助手!)
那我们下来看下这样的对话能力我们改如何实现,即如何接入OpenAi的对话能力,自己实现一个ChatGPT的对话功能。
二、申请Token
大家自己如果有了解过的也知道OpenAi在访问账号、网络等对国内有限制,盒子对此作了一层简单的封装,让我们的对话能力接入变得非常简单。首先,在对话之前你需要先申请OpenAi接口请求Token,这个由程序员盒子cu.api接口平台提供技术支持:
接口文档地址: OpenAi Token国内获取API接口
盒子提供了后端请求的API与支持前端跨域请求的Jsonp API两个接口:
Java调用示例:
// 创建自己的token获取API(其中AK、SK在程序员盒子个人中心接口调用菜单下可以获取)
String tokenApi = String.format("https://www.coderutil/api/openai/getToken?access-key=%s&secret-key=%s", 盒子为你分配的AK, 盒子为你分配的SK);
// 请求获取token
String token = HttpClientUtil.get(tokenApi, String.class);
三、请求OpenAi 对话API实现对话能力
这里说前端如何实现,主要关心对话数据能力:
示例代码:
/**
* 聊天对话
*/
public Object chat(String input) {
// 请求程序员盒子获取Token
String token = getTokenFromCoderUtilApi(ak, sk);
// 请求头参数
Map<String, String> headers = this.buildHeaders(token);
// 对话模型、输入 body
Map<String, Object> param = this.buildChatParam(input);
// openAi 对话接口
String completionsApi = "https://api.openai/v1/completions";
try {
// 请求并返回对话结果
return HttpClientUtil.post(completionsApi, param, headers, Object.class);
} catch (URISyntaxException e) {
throw new RuntimeException(e);
}
}
/**
* 构造请求头
*/
private Map<String, String> buildHeaders(String token) {
Map<String, String> headers = new HashMap<>();
headers.put("Content-Type", "application/json");
headers.put("Authorization", "Bearer ".concat(token));
return headers;
}
/**
* 构造请求参数
*/
private Map<String, Object> buildChatParam(String input) {
Map<String, Object> param = new HashMap<>();
param.put("model", "text-davinci-003"); // 对话模型
param.put("prompt", input+"\n");
param.put("max_tokens", 3000);
param.put("temperature", 0.8);
return param;
}
Done!!
程序员盒子接入百度文心大模型文生图能力_程序员盒子技术团队的博客-CSDN博客
本文标签: 能力 功能 WEB OpenAI ChatGpt
版权声明:本文标题:Web应用如何集成OpenAI开放能力实现ChatGPT的对话功能 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1724527448h756557.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论