Browse Source

filter error

wangyunpeng 3 months ago
parent
commit
6be4a6eb54

+ 4 - 2
core/src/main/java/com/tzld/supply/api/DeepSeekApiService.java

@@ -49,7 +49,7 @@ public class DeepSeekApiService {
             Map<Object, Object> bodyParam = MapBuilder
                     .builder()
                     .put("model", Optional.ofNullable(model).orElse("deepseek-chat"))
-                    .put("temperature", Optional.ofNullable(temperature).orElse(0.3))
+                    .put("temperature", Optional.ofNullable(temperature).orElse(1.0))
                     .put("messages", jsonArray)
                     .build();
             if (isJSON) {
@@ -77,7 +77,9 @@ public class DeepSeekApiService {
                     result.setSuccess(true);
                     result.setResponse(obj);
                 } else {
-                    result.setFailReason("response empty");
+                    JSONObject json = JSONObject.parseObject(responseContent);
+                    JSONObject errorObj = json.getJSONObject("error");
+                    result.setFailReason("response error, errorMsg: " + errorObj.getString("message"));
                 }
             } else {
                 JSONObject json = JSONObject.parseObject(responseContent);

+ 50 - 22
core/src/main/java/com/tzld/supply/job/ContentScreenJob.java

@@ -57,6 +57,14 @@ public class ContentScreenJob {
             return ReturnT.SUCCESS;
         }
         for (SpiderContent content : contentList) {
+            Long filterTime = DateUtils.getBeforeDayStart(2);
+            if (content.getCreateTime() < filterTime) {
+                content.setStatus(SpiderContentStatusEnum.ABANDONED.getCode());
+                content.setAiRoughStatus(SpiderContentScreenStatusEnum.ABANDONED.getCode());
+                content.setAiRoughResult("长时间未完成,自动放弃");
+                content.setUpdateTime(System.currentTimeMillis());
+                spiderContentMapper.updateByPrimaryKeySelective(content);
+            }
             String prompt = roughScreenPrompt.replace("{{title}}", content.getTitle());
             DeepSeekResult result = deepSeekApiService.requestOfficialApi(prompt, null, null, true);
 
@@ -67,16 +75,22 @@ public class ContentScreenJob {
                 } catch (Exception e) {
                     log.error(result.getResponse().getChoices().get(0).getMessage().getContent());
                 }
-            }
-            if (Objects.nonNull(obj)) {
-                Integer aiRoughStatus = checkRoughScreenStatus(obj);
-                content.setAiRoughStatus(aiRoughStatus);
-                content.setAiRoughResult(JSONObject.toJSONString(obj));
-                if (aiRoughStatus == SpiderContentScreenStatusEnum.PASSED.getCode()) {
-                    content.setStatus(SpiderContentStatusEnum.FILTERING.getCode());
-                } else {
-                    content.setStatus(SpiderContentStatusEnum.ABANDONED.getCode());
+                if (Objects.nonNull(obj)) {
+                    Integer aiRoughStatus = checkRoughScreenStatus(obj);
+                    content.setAiRoughStatus(aiRoughStatus);
+                    content.setAiRoughResult(JSONObject.toJSONString(obj));
+                    if (aiRoughStatus == SpiderContentScreenStatusEnum.PASSED.getCode()) {
+                        content.setStatus(SpiderContentStatusEnum.FILTERING.getCode());
+                    } else {
+                        content.setStatus(SpiderContentStatusEnum.ABANDONED.getCode());
+                    }
+                    content.setUpdateTime(System.currentTimeMillis());
+                    spiderContentMapper.updateByPrimaryKeySelective(content);
                 }
+            } else {
+                content.setStatus(SpiderContentStatusEnum.ABANDONED.getCode());
+                content.setAiRoughStatus(SpiderContentScreenStatusEnum.ABANDONED.getCode());
+                content.setAiRoughResult(JSONObject.toJSONString(result));
                 content.setUpdateTime(System.currentTimeMillis());
                 spiderContentMapper.updateByPrimaryKeySelective(content);
             }
@@ -110,6 +124,14 @@ public class ContentScreenJob {
             return ReturnT.SUCCESS;
         }
         for (SpiderContent content : contentList) {
+            Long filterTime = DateUtils.getBeforeDayStart(2);
+            if (content.getCreateTime() < filterTime) {
+                content.setStatus(SpiderContentStatusEnum.ABANDONED.getCode());
+                content.setAiPrecisionStatus(SpiderContentScreenStatusEnum.ABANDONED.getCode());
+                content.setAiPrecisionResult("长时间未完成,自动放弃");
+                content.setUpdateTime(System.currentTimeMillis());
+                spiderContentMapper.updateByPrimaryKeySelective(content);
+            }
             String prompt = precisionScreenPrompt.replace("{{title}}", content.getTitle())
                     .replace("{{content}}", content.getContent());
             DeepSeekResult result = deepSeekApiService.requestOfficialApi(prompt, null, null, true);
@@ -121,19 +143,25 @@ public class ContentScreenJob {
                 } catch (Exception e) {
                     log.error(result.getResponse().getChoices().get(0).getMessage().getContent());
                 }
-            }
-            if (Objects.nonNull(obj)) {
-                Integer aiPrecisionStatus = checkPrecisionScreenStatus(obj);
-                content.setAiPrecisionStatus(aiPrecisionStatus);
-                content.setAiPrecisionResult(JSONObject.toJSONString(obj));
-                if (CollectionUtil.isNotEmpty(obj.getKeywords())) {
-                    content.setKeyword(JSONObject.toJSONString(obj.getKeywords()));
-                }
-                if (aiPrecisionStatus == SpiderContentScreenStatusEnum.PASSED.getCode()) {
-                    content.setStatus(SpiderContentStatusEnum.PASSED.getCode());
-                } else {
-                    content.setStatus(SpiderContentStatusEnum.ABANDONED.getCode());
+                if (Objects.nonNull(obj)) {
+                    Integer aiPrecisionStatus = checkPrecisionScreenStatus(obj);
+                    content.setAiPrecisionStatus(aiPrecisionStatus);
+                    content.setAiPrecisionResult(JSONObject.toJSONString(obj));
+                    if (CollectionUtil.isNotEmpty(obj.getKeywords())) {
+                        content.setKeyword(JSONObject.toJSONString(obj.getKeywords()));
+                    }
+                    if (aiPrecisionStatus == SpiderContentScreenStatusEnum.PASSED.getCode()) {
+                        content.setStatus(SpiderContentStatusEnum.PASSED.getCode());
+                    } else {
+                        content.setStatus(SpiderContentStatusEnum.ABANDONED.getCode());
+                    }
+                    content.setUpdateTime(System.currentTimeMillis());
+                    spiderContentMapper.updateByPrimaryKeySelective(content);
                 }
+            } else {
+                content.setStatus(SpiderContentStatusEnum.ABANDONED.getCode());
+                content.setAiPrecisionStatus(SpiderContentScreenStatusEnum.ABANDONED.getCode());
+                content.setAiPrecisionResult(JSONObject.toJSONString(result));
                 content.setUpdateTime(System.currentTimeMillis());
                 spiderContentMapper.updateByPrimaryKeySelective(content);
             }
@@ -218,7 +246,7 @@ public class ContentScreenJob {
             }
             String prompt = pqNarrationScriptPrompt.replace("{{title}}", content.getTitle())
                     .replace("{{content}}", content.getContent());
-            DeepSeekResult result = deepSeekApiService.requestOfficialApi(prompt, null, null, false);
+            DeepSeekResult result = deepSeekApiService.requestOfficialApi(prompt, "deepseek-reasoner", null, false);
 
             String narrationScript = null;
             if (result.isSuccess()) {