项目介绍
ChatGPT的Java客户端
chatgpt-java是一个由社区维护的非官方Java库,旨在帮助开发者更加便捷地接入OpenAI提供的各种API接口。该项目提供了一整套SDK,可以快速集成到现有项目中,支持OpenAI的所有官方接口,还具备Tokens计算功能。
特性
chatgpt-java提供了丰富的特性,支持以下功能:
- 图片、文本生成与微调(FineTuneJob)等功能。
- 文本转语音(TTS)与图片附加的对话完成(ChatCompletionWithPicture)。
- GPT插件模式,以更简单的方式调用复杂的功能。
- 动态处理API Key在异常情况下的处理策略。
- 支持多种Tokens计算、多Apikey策略、自定义OkhttpClient等功能。
- 具备余额查询、个人账户信息查询等高级功能。
- 支持GPT3、GPT3.5、GPT4.0等最新模型。
此外,chatgpt-java还支持流式输出,提供事件源监听器(如SSE和WebSocket)以实现实时数据的流动。
更新日志
chatgpt-java的开发活跃,以下是项目近期的一些重要更新:
- 版本1.1.6:支持ChatCompletion接口logprobs参数设置,新增Assistant相关接口支持流式输出。
- 版本1.1.5:修复了一些已知的Bug。
- 版本1.1.3:新增多个API支持。
- 版本1.1.2-beta0:支持附加图片的ChatCompletion、新增数据格式指定功能等。
详细版本更新信息可以在项目文档中查看。
快速开始
开发者可以按照以下两种方式快速开始使用chatgpt-java:
方式一:使用Maven构建
- 导入pom依赖
在项目的pom.xml
文件中加入以下依赖:
<dependency>
<groupId>com.unfbx</groupId>
<artifactId>chatgpt-java</artifactId>
<version>1.0.14-beta1</version>
</dependency>
-
流式客户端使用示例
-
使用默认的OkHttpClient进行快速建立聊天模型。
-
或者可以自定义OkHttpClient,为国内访问设置代理和自定义拦截器。
-
-
默认客户端使用示例
- 直接建立OpenAiClient,进行各种API接口的调用。
方式二:下载源码直接运行
可以直接下载项目的源代码进行编译和运行,适合需要深度定制的场景。
QA
项目说明中也提供了常见问题与解决方案:
- 如何实现连续对话。
- 如何在Spring Boot中整合流式输出。
国内访问解决方案
该项目提供了国内访问的解决方案,帮助国内开发者通过代理等方式顺利接入OpenAI的API服务。
开发案例收集
chatgpt-java项目社区积极收集各类开发案例,鼓励开发者分享基于该SDK的使用经验和实际项目。
鸣谢
chatgpt-java项目基于多个开源项目和社区算法,站在巨人的肩膀上不断发展。
打赏
如果该项目对您有帮助,欢迎通过赞助支持开发者。
项目使用的开源协议详情可在项目源码中查看。