AI 提问追问环境demo 添加
This commit is contained in:
@@ -10,6 +10,7 @@ import org.springframework.stereotype.Component;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
@@ -37,10 +38,10 @@ public class OpenAiStreamClient {
|
||||
/**
|
||||
* 发送流式请求
|
||||
*
|
||||
* @param prompt 提示词
|
||||
* @param promptJson 提示词json数据集合
|
||||
* @param listener 流式响应监听器
|
||||
*/
|
||||
public void streamChat(String prompt, OpenAiStreamListenerService listener) {
|
||||
public void streamChat(String promptJson, OpenAiStreamListenerService listener) {
|
||||
OkHttpClient client = new OkHttpClient.Builder()
|
||||
.connectTimeout(30, TimeUnit.SECONDS)
|
||||
.readTimeout(60, TimeUnit.SECONDS)
|
||||
@@ -53,13 +54,18 @@ public class OpenAiStreamClient {
|
||||
Map<String, Object> requestBody = new HashMap<>();
|
||||
requestBody.put("model", model);
|
||||
requestBody.put("stream", true);
|
||||
|
||||
// 构建消息
|
||||
Map<String, String> message = new HashMap<>();
|
||||
message.put("role", role);
|
||||
message.put("content", prompt);
|
||||
requestBody.put("messages", new Object[]{message});
|
||||
|
||||
if(StrUtil.isNotEmpty(promptJson)) {
|
||||
List<Map> promptList = JSONUtil.toList(promptJson, Map.class);
|
||||
Object[] objects = new Object[promptList.size()];
|
||||
for (int i = 0; i < promptList.size(); i++) {
|
||||
objects[i] = promptList.get(i);
|
||||
}
|
||||
//获取到的提示
|
||||
requestBody.put("messages", objects);
|
||||
}
|
||||
//开始给AI发送请求数据
|
||||
System.out.println("请求AI数据参数为:"+JSONUtil.toJsonStr(requestBody));
|
||||
// 创建请求
|
||||
Request request = new Request.Builder()
|
||||
.url(apiUrl)
|
||||
|
||||
Reference in New Issue
Block a user