From b79163cf0ca65c51d9545a4e515686975948275a Mon Sep 17 00:00:00 2001 From: weiweiw <14335254+weiweiw22@user.noreply.gitee.com> Date: Fri, 20 Dec 2024 11:26:58 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=A8=A1=E5=9E=8B=E6=8E=A8?= =?UTF-8?q?=E7=90=86=E7=BD=AE=E4=BF=A1=E5=BA=A6=E9=98=88=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../client/intelligentAnnotation/AnnotationRequest.java | 2 +- .../dataset/IntelligentAnnotationServiceEntity.java | 2 +- .../Impl/dataset/IntelligentAnnotationServiceImpl.java | 2 +- .../src/main/java/com/bonus/ai/utils/AverageUtil.java | 5 +++++ .../resources/mapper/IntelligentAnnotationMapper.xml | 9 +++++---- sql/bonus_ai.sql | 2 +- 6 files changed, 14 insertions(+), 8 deletions(-) diff --git a/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/client/intelligentAnnotation/AnnotationRequest.java b/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/client/intelligentAnnotation/AnnotationRequest.java index eed6653..94d6d4d 100644 --- a/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/client/intelligentAnnotation/AnnotationRequest.java +++ b/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/client/intelligentAnnotation/AnnotationRequest.java @@ -20,7 +20,7 @@ public class AnnotationRequest { private List targetLabels; @JsonProperty("conf_threshold") - private Double confThreshold; + private Float confThreshold; public static AnnotationRequest fromJson(String json) throws JsonProcessingException { return new ObjectMapper().readValue(json, AnnotationRequest.class); diff --git a/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/domain/dataset/IntelligentAnnotationServiceEntity.java b/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/domain/dataset/IntelligentAnnotationServiceEntity.java index 0f743d4..521d2f7 100644 --- a/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/domain/dataset/IntelligentAnnotationServiceEntity.java +++ b/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/domain/dataset/IntelligentAnnotationServiceEntity.java @@ -8,7 +8,7 @@ public class IntelligentAnnotationServiceEntity extends BaseEntity { private Long serviceId; private String serviceName; private String serviceUrl; - private String annotationLabels; + private Float confLevel ; /**删除标志(0代表存在 1代表删除) */ private String delFlag; diff --git a/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/service/Impl/dataset/IntelligentAnnotationServiceImpl.java b/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/service/Impl/dataset/IntelligentAnnotationServiceImpl.java index 31cbe2a..0bdfc74 100644 --- a/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/service/Impl/dataset/IntelligentAnnotationServiceImpl.java +++ b/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/service/Impl/dataset/IntelligentAnnotationServiceImpl.java @@ -83,7 +83,7 @@ public class IntelligentAnnotationServiceImpl implements IntelligentAnnotationSe } String serviceUrl = aiAnnotationServiceInfo.getServiceUrl(); AnnotationRequest request = new AnnotationRequest(); - request.setConfThreshold(0.1); + request.setConfThreshold(aiAnnotationServiceInfo.getConfLevel()); request.setImageUrls(imageUrls); request.setTargetLabels(ObjectUtils.isEmpty(taskInfo.getLabels()) ? new ArrayList<>() : Arrays.asList(taskInfo.getLabels().split(","))); AnnotationResult result = intelligentAnnotationClient.intelligentAnnotation(serviceUrl, request); diff --git a/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/utils/AverageUtil.java b/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/utils/AverageUtil.java index 6ec9985..39c5c8c 100644 --- a/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/utils/AverageUtil.java +++ b/bonus-modules/bonus-ai/src/main/java/com/bonus/ai/utils/AverageUtil.java @@ -4,6 +4,7 @@ import com.bonus.ai.domain.DataSetBasicFileEntity; import com.bonus.ai.domain.dataset.AnnotationTaskAnnotatorEntity; import com.bonus.ai.domain.dataset.AnnotationTaskEntity; import com.bonus.common.security.utils.SecurityUtils; +import org.springframework.util.ObjectUtils; import java.util.*; @@ -53,6 +54,10 @@ public class AverageUtil { for (DataSetBasicFileEntity file : files) { + // 跳过空文件,因为这些文件与数据集的关系到,但文件实体不在 + if (ObjectUtils.isEmpty(file)){ + continue; + } // 为文件寻找一个标注人员 AnnotationTaskEntity.UserFileCount annotator = findUserWithQuota(annotators); AnnotationTaskEntity.UserFileCount reviewer = findUserWithQuota(reviewers); diff --git a/bonus-modules/bonus-ai/src/main/resources/mapper/IntelligentAnnotationMapper.xml b/bonus-modules/bonus-ai/src/main/resources/mapper/IntelligentAnnotationMapper.xml index 8df4a41..76d9742 100644 --- a/bonus-modules/bonus-ai/src/main/resources/mapper/IntelligentAnnotationMapper.xml +++ b/bonus-modules/bonus-ai/src/main/resources/mapper/IntelligentAnnotationMapper.xml @@ -10,7 +10,7 @@ - + @@ -19,7 +19,7 @@ - select intelligent_annotation_service_id, intelligent_annotation_service_name, intelligent_annotation_service_url, del_flag, create_by, create_time, update_by, update_time from ai_intelligent_annotation_service + select intelligent_annotation_service_id, intelligent_annotation_service_name, intelligent_annotation_service_url,conf_level, del_flag, create_by, create_time, update_by, update_time from ai_intelligent_annotation_service @@ -38,7 +38,7 @@ intelligent_annotation_service_name, intelligent_annotation_service_url, - intelligent_annotation_service_labels, + conf_level, del_flag, create_by, create_time, @@ -48,7 +48,7 @@ #{serviceName}, #{serviceUrl}, - #{annotationLabels}, + #{conf_level}, #{delFlag}, #{createBy}, #{createTime}, @@ -63,6 +63,7 @@ intelligent_annotation_service_name = #{serviceName}, intelligent_annotation_service_url = #{serviceUrl}, + conf_level = #{confLevel}, update_by = #{updateBy}, where intelligent_annotation_service_id = #{serviceId} diff --git a/sql/bonus_ai.sql b/sql/bonus_ai.sql index 44e66ce..1fd46a9 100644 --- a/sql/bonus_ai.sql +++ b/sql/bonus_ai.sql @@ -243,7 +243,7 @@ create table ai_intelligent_annotation_service intelligent_annotation_service_id bigint(20) not null auto_increment, intelligent_annotation_service_name varchar(128) default '' comment '智能标注服务名称', intelligent_annotation_service_url varchar(128) default '' comment '智能标注服务url', - intelligent_annotation_service_labels varchar(128) default '' comment '智能标注服务标签', + conf_level FLOAT default 0.5 comment '置信度', del_flag char(1) default '0' comment '是否删除(0代表存在,1代表删除)', create_by varchar(64) default '' comment '创建者', update_by varchar(64) default '' comment '更新者',