TASK:模块化;

This commit is contained in:
shahaibo
2025-03-27 14:32:56 +08:00
parent 78a5bebb4f
commit a8f868e215
5 changed files with 85 additions and 0 deletions

View File

@@ -32,6 +32,7 @@ import com.google.common.collect.Maps;
import io.netty.util.internal.StringUtil;
import lombok.extern.slf4j.Slf4j;
import okhttp3.*;
import org.apache.catalina.User;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -4136,4 +4137,55 @@ public class PythonService {
}
}
public JSONObject brandDNAGenerate(String prompt) {
OkHttpClient client = new OkHttpClient().newBuilder()
.connectTimeout(30, TimeUnit.SECONDS)
.pingInterval(5, TimeUnit.SECONDS)//websocket轮训间隔(单位:秒)
.readTimeout(60, TimeUnit.SECONDS)//读取超时(单位:秒)
.writeTimeout(60, TimeUnit.SECONDS)//写入超时(单位:秒)
.build();
MediaType mediaType = MediaType.parse("application/json");
//关闭FastJson的引用检测 防止出现$ref 现象
Map<String, Object> map = new HashMap<>();
map.put("prompt", prompt);
AuthPrincipalVo userHolder = UserContext.getUserHolder();
map.put("user_id", userHolder.getId());
log.info("brandDNAGenerate请求python 参数:####{}", map);
String param = JSON.toJSONString(map, SerializerFeature.WriteNullStringAsEmpty);
log.info(param);
RequestBody body = RequestBody.create(mediaType, param);
Request request = new Request.Builder()
// .url(accessPythonIp + ":" + accessPythonPort + "/api/generate_product_image")
// .url(accessPythonIp + ":9996/api/generate_product_image")
.url(accessPythonIp + ":" + accessPythonPort + "/api/GenerateBrand")
.method("POST", body)
.addHeader("Authorization", "Basic YWlkbGFiOjEyMw==")
.addHeader("Content-Type", "application/json")
.build();
Response response;
String responseBody;
try {
response = client.newCall(request).execute();
} catch (IOException ioException) {
log.error("PythonService##brandDNAGenerate异常###{}", ExceptionUtil.getThrowableList(ioException));
throw new BusinessException("brandDNAGenerate.interface.exception");
}
if (response.isSuccessful()) {
try {
if (Objects.nonNull(response.body())) {
responseBody = response.body().string();
JSONObject responseObject = JSON.parseObject(responseBody);
log.info("PythonService##responseObject###{}", responseObject);
return responseObject;
}
throw new BusinessException("brandDNAGenerate.interface.exception");
} catch (IOException | JSONException e) {
log.error("PythonService##brandDNAGenerate异常###{}", e.getMessage());
throw new BusinessException("brandDNAGenerate.interface.exception");
}
}
log.error("PythonService##brandDNAGenerate异常response###{}", response);
//生成失败
throw new BusinessException("brandDNAGenerate.interface.exception");
}
}