A Java Version ChatGPT SDK
integrate with acheong08/ChatGPT, use official Api of openAI(2023.3.2).
2023.3.2 use official api, model is not free, but you have $18 free quota
pip3 install --upgrade revChatGPT
you will find it in src/main/resources/server.py
, and run:
pip3 install flask flask-restful
pip3 install --upgrade revChatGPT
python3 server.py
by default, it listen on http://127.0.0.1:5000
https://search.maven.org/artifact/com.swordintent.chatgpt/web-api/
Maven
<dependency>
<groupId>com.swordintent.chatgpt</groupId>
<artifactId>web-api</artifactId>
<version>1.0.0</version>
</dependency>
Gradle
implementation 'com.swordintent.chatgpt:web-api:1.0.0'
chatgptClient.init(address, chatGptConfig)
method to init client.password
, the password
is your openAI's api-keys, you can find here.address
to http://127.0.0.1:5000 or another. ChatgptClient chatgptClient = ChatgptClientImpl.getInstance();
ChatGptConfig chatGptConfig = ChatGptConfig.builder()
.password("")
.build();
String address = "http://127.0.0.1:5000";
chatgptClient.init(address, chatGptConfig);
chatgptClient.chat(request)
method to chat. conversationId
would be null.
when you want reset multiple rounds set them to null too. //first round or reset multiple rounds
ChatRequest request = ChatRequest.builder()
.prompt(content)
.conversationId(null)
.build();
ChatResponse response = chatgptClient.chat(request);
conversationId
from response and set them to next chat request. //multiple rounds
ChatRequest request = ChatRequest.builder()
.prompt(content)
.conversationId(response.getConversationId())
.build();
ChatResponse response = chatgptClient.chat(request);
the conversationId
now is the full object of python chatbot object, so maybe it was huge.
you must set conversationId
to null in your java program when you restart your python server.