Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >springboot 接入 ChatGPT

springboot 接入 ChatGPT

作者头像
Kindear
发布于 2023-03-20 03:01:21
发布于 2023-03-20 03:01:21
96800
代码可运行
举报
运行总次数:0
代码可运行

项目地址

https://gitee.com/Kindear/lucy-chat

介绍

lucy-chat是接入OpenAI-ChatGPT大模型人工智能Java解决方案,大模型人工智能的发展是不可阻挡的趋势,我们环境无法创造工具,但是也要更好的使用工具,该包简化了接入流程,可以非常方便的引入并使用ChatGPT相关功能。

接入方式

lucy-chat提供了两种形式接入服务,完成集成或者独立部署后可以访问[部署地址]/doc.html调用相关接口。

1. Jar引入

准备

在引入任何 Lucy系列依赖之前,需要完成jitpack镜像仓库的配置。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<repositories>
        <repository>
            <id>jitpack.io</id>
            <url>https://www.jitpack.io</url>
        </repository>
</repositories>

引入

根据版本号引入

当前默认1.0.0-r4

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
		<dependency>
			<groupId>com.gitee.kindear</groupId>
			<artifactId>lucy-chat</artifactId>
			<version>${version}</version>
		</dependency>

启动类

启用 knife4j 文档,需要在启动类上配置 @EnableKnife4j

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
@EnableKnife4j
@SpringBootApplication
public class DemoApplication {

    public static void main(String[] args) {

        SpringApplication.run(LucyAdminApplication.class, args);
    }

}

配置文件

使用 lucy-chat需要配置如下文件信息

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
spring.application.name=lucy-chat
# 运行端口
server.port=8080
# swagger 匹配
spring.mvc.pathmatch.matching-strategy=ant_path_matcher

# chat-gpt api-key
# 申请地址 https://platform.openai.com/account/api-keys
openai.chat.key=

# chat-gpt proxy host
# 配置代理地址 请参阅 https://www.v2ex.com/t/921689
openai.chat.host=

# 连接池最大连接数
forest.max-connections=1000
# 连接超时时间,单位为毫秒
forest.connect-timeout=30000
# 数据读取超时时间,单位为毫秒
forest.read-timeout=30000

2. 独立服务

  1. 从开源地址下载项目
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
git clone https://gitee.com/Kindear/lucy-chat
  1. 修改POM文件中打包方式,即恢复 <build>相关注释掉的内容
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                </configuration>

            </plugin>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>${spring-boot.version}</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
  1. 修改相关配置文件, 参考上文的配置文件相关内容,项目中提供的 key为私人 key,随时会被替换。
  2. 打包项目并部署

效果

1. 对话

2. 图像绘制

3. 文本编辑

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-03-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Java ServletContext详解
服务器会为每一个工程创建一个对象,这个对象就是ServletContext对象,这个对象是 全局唯一的,工程内部的所有servlet都共享这个对象,所有应用程序共享对象
一只胡说八道的猴子
2020/09/27
8000
Java ServletContext详解
JavaWeb核心篇(2)——Request和Response
上篇文章中提及到了Servlet,在Servlet中我们主要继承了HTTPServlet类,在HTTPServlet类中我们会接触到两个对象
秋落雨微凉
2022/10/25
5540
JavaWeb核心篇(2)——Request和Response
E015Web学习笔记-Request和Respons(三)
如果超链接指向的资源可以被浏览器解析,则会展示在浏览器里面,否则弹出下载框,询问下载;
訾博ZiBo
2025/01/06
560
E015Web学习笔记-Request和Respons(三)
HttpServletResponse
web服务器接收到客户端的http请求,针对这个请求,分别创建一个代表请求的HttpServletRequest对象、代表响应的一个 HttpServletResponse对象;
Albert_xiong
2021/06/21
5690
HttpServletResponse
Servlet: 全网最全Servlet详解
从事web开发的人,会很清楚一个东西叫 Web服务器,比如J2EE开—Tomcat,Jetty,.NET开发—IIS等。HTTP服务器是使用 HTTP(超文本传输协议) 与客户机浏览器进行信息交流。
Freedom123
2024/03/29
4410
Servlet: 全网最全Servlet详解
E017Web学习笔记-Cookie和Session(二)
服务器端会话技术,在一次会话的多次请求间共享数据,将数据存储在服务器,HttpSession;
訾博ZiBo
2025/01/06
1030
E017Web学习笔记-Cookie和Session(二)
E013Web学习笔记-Request和Respons(一)
第二步:Tomcat服务器会根据请求url中的资源路径,创建对应的Servlet对象;
訾博ZiBo
2025/01/06
630
E013Web学习笔记-Request和Respons(一)
JavaWeb day6 Servlet快速入门 学习和编写Servlet程序
介绍完Servlet是什么以后,接下来我们就按照快速入门->执行流程->生命周期->体系结构->urlPattern配置->XML配置的学习步骤,一步步完成对Servlet的知识学习,首选我们来通过一个入门案例来快速把Servlet用起来。
小小程序员
2023/02/24
5550
JavaWeb day6 Servlet快速入门 学习和编写Servlet程序
Java匹马行天下之JavaWeb核心技术——Servlet
Servlet是在服务器上运行的小程序,也就是一个Java类,但比较特殊,不需要new,自动就可以运行。也有创建、垃圾回收和销毁过程。Servlet是JavaWeb的三大组件之一(Servlet、Filter、Listener),它属于动态资源。Servlet的作用是处理请求,服务器会把接收到的请求交给Servlet来处理,在Servlet中通常需要:
泰斗贤若如
2019/06/18
7570
E011Web学习笔记-Servlet
实际上Servlet是一个接口,定义了Java类被浏览器访问到(或者说被Tomcat识别的)规则;
訾博ZiBo
2025/01/06
770
E011Web学习笔记-Servlet
BeanUtils工具类的介绍和使用
点击下载 链接:https://pan.baidu.com/s/18_yOL2r_uxDjfQdJ89Qvpg 提取码:a5xl
不愿意做鱼的小鲸鱼
2022/09/24
8030
BeanUtils工具类的介绍和使用
JavaWeb 入门篇(4)HttpResponse 详解 HttpRequest 详解
​ 在创建Servlet时会覆盖service()方法,或doGet()/doPost(),这些方法都有两个参数,一个为代表请求的request和代表响应response。service方法中的response的类型是ServletResponse,而doGet/doPost方法的response的类型是HttpServletResponse,HttpServletResponse是ServletResponse的子接口,功能和方法更加强大。
宁在春
2022/10/31
6230
JavaWeb 入门篇(4)HttpResponse 详解 HttpRequest 详解
tomcat和servlet快速入门教程!!!
4.1 bin/startup.bat ,双击运行该文件即可 4.2 访问:浏览器输入: http://localhost:8080 回车访问自己 或者 http://别人的ip:8080 访问别人 可以通过ipconfig:查看本机ip地址
大忽悠爱学习
2021/11/15
4710
Servlet 简介
当一个 Servlet 被第一请求的时候,Servlet 引擎就初始化这个 Servlet,在这里是调用 init()方法完成必需的初始化工作。而且这个对象一致在内存中活动,Servlet 为后续的客户请求新建线程,直接调用Servlet 中的 service()方法提供服务,不再初始化 Servlet。
兮动人
2021/06/11
3500
Servlet 简介
Java Request(域对象+请求转发+原理)详解
request对象 request对象和response对象都是由服务器创建的,我们是来使用他们 request对象是用来获取请求消息的,response对象是用来设置响应消息的
一只胡说八道的猴子
2020/09/27
4.1K0
Java Request(域对象+请求转发+原理)详解
【JavaEE初阶】Servlet (二) Servlet中常用的API
我们写 Servlet 代码的时候, 首先第一步就是先创建类, 继承自 HttpServlet, 并重写其中的某些方法.
xxxflower
2023/10/16
3800
【JavaEE初阶】Servlet (二) Servlet中常用的API
JavaWeb day8 Request和Response快速入门(下)Response
介绍完Response的相关体系结构后,接下来对于Response我们需要学习如下内容:
小小程序员
2023/02/22
7641
JavaWeb day8 Request和Response快速入门(下)Response
JavaWeb入门篇(6) 实现字符过滤器 解决全局字符乱码 实现模拟权限拦截
简单的一次记录。 看完不给我点给赞,你还想逃吗?不存在的。 留下你来过的足迹,一起学习。
宁在春
2022/10/31
5050
JavaWeb入门篇(6) 实现字符过滤器 解决全局字符乱码 实现模拟权限拦截
Java学习之Request篇
在b/s架构里面,请求和响应是必不可少的。访问网页时,会发出一个request请求,服务器接收到请求后,根据设定代码,给我们响应对应的内容。
全栈程序员站长
2022/07/13
2560
JavaWeb day7 Request和Response(上)
==Request是请求对象,Response是响应对象。==这两个对象在我们使用Servlet的时候有看到:图片
小小程序员
2023/02/21
7990
JavaWeb day7 Request和Response(上)
相关推荐
Java ServletContext详解
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档