首先你要有一个openai的账号,然后申请apikey,并且里面有一定的额度。
然后上代码
添加依赖
<dependency>
<groupId>com.github.plexpt</groupId>
<artifactId>chatgpt</artifactId>
<version>4.0.5</version>
</dependency>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-http</artifactId>
<version>5.8.18</version>
</dependency>
加点魔法
连接
java
import cn.hutool.http.*;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject;
import com.plexpt.chatgpt.util.Proxys;
import org.springframework.web.bind.annotation.*;
import java.net.Proxy;
import java.util.HashMap;
import java.util.Map;
@RestController
@RequestMapping("/xxx")
public class ChatGPTController {
@GetMapping("/xxx")
public static void chat(@RequestParam("content")String content) {
Map<String, String> headers = new HashMap<>();
headers.put("Content-Type", "application/json");
JSONObject json = new JSONObject();
json.set("model", "gpt-3.5-turbo");
JSONObject msg = new JSONObject();
msg.set("role", "user");
msg.set("content",content);
JSONArray array = new JSONArray();
array.add(msg);
json.set("messages", array);
json.set("temperature", 0);
json.set("max_tokens", 2048);
json.set("top_p", 1);
json.set("frequency_penalty", 0.0);
json.set("presence_penalty", 0.0);
try {
Proxy proxy = Proxys.http("地址", 端口号);
HttpResponse response = HttpRequest.post("https://api.openai.com/v1/chat/completions")
.headerMap(headers, false)
.bearerAuth("apikey")
.setProxy(proxy)
.body(String.valueOf(json))
.timeout(600000)
.execute();
System.out.println(response.body());
} catch (Exception e) {
e.printStackTrace();
}
}
}