什么是Chat Generative Pre-trained Transformer
Chat Generative Pre-trained Transformer,是以人工智能驱动的聊天机器人程序 ,已经更新多个版本,很多大厂也都在接入其API。

整合难度
难度一颗星,基本上就是给官方API发请求,然后获取响应即可。

先睹为快
QA问答

图像绘画:一艘宇宙飞船遨游在浩瀚星空

oK现在开始实战++
1、创建一个基于springboot的maven项目并引入依赖
1.1 idea新建一个maven项目

1.2 修改配置文件pom.xml

   <dependency><groupId>com.theokanning.openai-gpt3-java</groupId><artifactId>client</artifactId><version>0.10.0</version></dependency>

1.3 将apikeys配置在application

1.4 编写测试类

@SpringBootTest
class GptDemoApplicationTests {@Value("${api.keys}")private String apiKeys;@Testvoid contextLoads() {OpenAiService service = new OpenAiService(apiKeys);System.out.println("\nCreating Image...");CreateImageRequest request = CreateImageRequest.builder().prompt("A spaceship travels in the vast starry sky").build();System.out.println("\nImage is located at:");System.out.println(service.createImage(request).getData().get(0).getUrl());}/*** qa*/@Testvoid qa(){OpenAiService service = new OpenAiService(apiKeys,3000);String ques = "地球为什么是圆的?";System.err.println(ques);System.out.println("\nCreating completion...");CompletionRequest completionRequest = CompletionRequest.builder().model("text-davinci-003").prompt(ques).user("testing").maxTokens(1000).topP(1.0).n(1).temperature(0.0).frequencyPenalty(0.0).presencePenalty(0.0).build();service.createCompletion(completionRequest).getChoices().forEach(obj ->{System.err.println(obj.getText());});}
}

2、简单测试下是否能够运行
2.1 首先测试QA是否正常运行

OpenAiService service = new OpenAiService(apiKeys,3000);String ques = "地球为什么是圆的?";System.err.println(ques);System.out.println("\nCreating completion...");CompletionRequest completionRequest = CompletionRequest.builder().model("text-davinci-003").prompt(ques).user("testing").maxTokens(1000).topP(1.0).n(1).temperature(0.0).frequencyPenalty(0.0).presencePenalty(0.0).build();

2.2 执行测试代码,查看控制台结果

2.3 测试生成一张图片,生成 一艘宇宙飞船遨游在浩瀚星空 的图片

     CreateImageRequest request = CreateImageRequest.builder().prompt("A spaceship travels in the vast starry sky").build();

2.5 运行测试方法,点击控制台打印的图片地址,查看生成的图片

springboot整合Chat Generative Pre-trained Transformer相关推荐

  1. chatGTP的全称Chat Generative Pre-trained Transformer

    chatGPT,有时候我会拼写为:chatGTP,所以知道这个GTP的全称是很有用的. ChatGPT全名:Chat Generative Pre-trained Transformer ,中文翻译是 ...

  2. SpringBoot整合阿里云OSS文件上传、下载、查看、删除

    SpringBoot整合阿里云OSS文件上传.下载.查看.删除 该项目源码地址:https://github.com/ggb2312/springboot-integration-examples ( ...

  3. springboot整合jpa_SpringBoot与SpringDataJPA整合 Ehcache

    1. SpringBoot整合Spring Data JPA步骤-(上) (1) 创建一个Maven的jar工程. (2)修改POM文件添加Web启动器,Thymeleaf启动器,Spring Dat ...

  4. springboot整合websocket实现简易版单人聊天

    websockt在作为即时通讯类的聊天方面有较多的应用,其主要的特点就是轻量,使用方便,容易快速上手,通过webscoket整合服务端,就可以实现简单的类似聊天的功能,下面说说springboot整合 ...

  5. MinIO入门-02 SpringBoot 整合MinIO并实现文件上传

    SpringBoot 整合MinIO并实现文件上传 1.依赖 <!-- https://mvnrepository.com/artifact/io.minio/minio --> < ...

  6. Springboot 整合Websocket+Stomp协议+RabbitMQ做消息代理 实例教程

    前言 如果你还没有了解过websocket,关于整合websocket的简单入门使用,可以先看看我这篇: <SpringBoot 整合WebSocket 简单实战案例> https://b ...

  7. 在线聊天室的消息单聊的实现——springboot整合WebSocket(二)

    一.声明 项目的搭建请大家移步到:在线聊天室的消息群聊的实现--springboot整合WebSocket(一) 单聊的实现是在群聊项目上进行延申改造的. 二.引入依赖 <dependency& ...

  8. SocketIO介绍+SpringBoot整合SocketIO完成实时通信

    Socket.IO笔记 即时通信是基于TCP长连接,建立连接之后,客户段/服务器可以无限次随时向对端发送数据,实现服务器数据发送的即时性 HTTP HTTP是短链接,设计的目的是减少服务器的压力 HT ...

  9. 【ReactJs+springBoot项目——租房】第6章:MongoDB入门+SpringBoot整合MongoDB+搭建微聊系统+实现微聊功能

    MongoDB入门 MongoDB的java api的使用 SpringBoot整合MongoDB使用 搭建微聊系统 实现微聊功能 分布式WebSocket解决方案分析 1.MongoDB入门 1.1 ...

最新文章

  1. 后盾网lavarel视频项目---页面post方式提交之后动态弹出错误信息
  2. hdu 5172(RMQ+前缀和)
  3. SAP UI5 createBindingContext in local JSON model
  4. qq html制作,jquery学习练习:制作QQ简易聊天框
  5. 瑞德西韦有效吗?专家一句大实话解释清楚了
  6. RSocket协议初识
  7. 寂寞的hasLayout
  8. Linux两种方式rd.break和init重置root管理员密码
  9. 深入学习NSUserDefaults/standardUserDefaults
  10. NumPy Beginner's Guide 2e 带注释源码 五、处理 NumPy 矩阵和 ufunc
  11. C# 使用openxml解析PPTX中的文本内容
  12. scp 及 ssh 命令出错解决
  13. edge浏览器打开html文件路径被拆分,Edge浏览器显示网页排版错位
  14. Java:轻松一刻/程序员才懂的幽默
  15. word只能以安全模式打开
  16. 2023我的秋招之路(1)7.21NJ银行金融科技岗提前批笔试
  17. Dynamics CRM 数据导出到Excel时列标题不能重复
  18. React:styled-components的使用
  19. linux权限管理详解
  20. 根据车牌获取信息 pom 文件

热门文章

  1. 1-交通数据的获取系列学习
  2. 画saliency intensity map图,pytorch版本
  3. IDEA+Java控制台实现医院管理系统
  4. getch()使用和注意事项!
  5. SSM网约车管理系统毕业设计源码051630
  6. XXE外部实体注入漏洞总结
  7. Rsync 下行同步 + Inotify 实时同步详解
  8. windows任务栏透明_如何使Windows 10任务栏完全透明
  9. centos7 安装 nextcloud 教程
  10. mysql闪电_闪电算法是什么?如何应对闪电算法?