Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
middleware-automatic
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
shenjunjie
middleware-automatic
Commits
ab7ac71a
Commit
ab7ac71a
authored
Jul 24, 2024
by
shentao
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feature' into 'release'
2024/7/24 多项目ai标注优化、标签打印、枚举修改 See merge request
!122
parents
b0803aea
edcc0980
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
234 additions
and
140 deletions
+234
-140
middleware-automatic-center-client-autoconfigure/pom.xml
+2
-2
middleware-automatic-center-client/pom.xml
+1
-1
middleware-automatic-center-client/src/main/java/com/zhiwei/middleware/automatic/server/pojo/AIMark.java
+21
-0
middleware-automatic-center-client/src/main/java/com/zhiwei/middleware/automatic/server/pojo/AiApiResult.java
+16
-18
middleware-automatic-center-client/src/main/java/com/zhiwei/middleware/automatic/server/pojo/AiMarkProjectCache.java
+38
-0
middleware-automatic-center-client/src/main/java/com/zhiwei/middleware/automatic/server/pojo/AiTagRelation.java
+35
-0
middleware-automatic-center-client/src/main/java/com/zhiwei/middleware/automatic/server/pojo/enums/AiInterfaceEnums.java
+7
-25
middleware-automatic-center-server/pom.xml
+1
-1
middleware-automatic-center-server/src/main/java/com/zhiwei/middleware/automatic/server/dao/AiMarkProjectCacheDao.java
+14
-0
middleware-automatic-center-server/src/main/java/com/zhiwei/middleware/automatic/server/dao/impl/AiMarkProjectCacheDaoImpl.java
+29
-0
middleware-automatic-center-server/src/main/java/com/zhiwei/middleware/automatic/server/mission/AsyncTask.java
+8
-3
middleware-automatic-center-son/pom.xml
+1
-1
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AbstractAiTaskService.java
+42
-28
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AiTaskService.java
+5
-5
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AiTaskServiceCJCC.java
+0
-24
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AiTaskServiceCommon.java
+3
-3
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AiTaskServiceHandler.java
+8
-2
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AiTaskServiceJNKJ.java
+0
-24
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AiTaskServiceProduct.java
+3
-3
No files found.
middleware-automatic-center-client-autoconfigure/pom.xml
View file @
ab7ac71a
...
...
@@ -11,13 +11,13 @@
</parent>
<artifactId>
middleware-automatic-center-autoconfigure
</artifactId>
<version>
1.0.0.4-SNAPSHOT
</version>
<version>
${automatic.version}
</version>
<packaging>
jar
</packaging>
<properties>
<project.build.sourceEncoding>
UTF-8
</project.build.sourceEncoding>
<java.version>
1.8
</java.version>
<automatic.version>
1.0.0.
4
-SNAPSHOT
</automatic.version>
<automatic.version>
1.0.0.
5
-SNAPSHOT
</automatic.version>
</properties>
<dependencies>
...
...
middleware-automatic-center-client/pom.xml
View file @
ab7ac71a
...
...
@@ -11,7 +11,7 @@
</parent>
<artifactId>
middleware-automatic-center-client
</artifactId>
<version>
1.0.0.
4
-SNAPSHOT
</version>
<version>
1.0.0.
5
-SNAPSHOT
</version>
<properties>
<project.build.sourceEncoding>
UTF-8
</project.build.sourceEncoding>
...
...
middleware-automatic-center-client/src/main/java/com/zhiwei/middleware/automatic/server/pojo/AIMark.java
View file @
ab7ac71a
...
...
@@ -31,6 +31,11 @@ public class AIMark implements Serializable {
* 标签对应关系
*/
private
List
<
TagRelation
>
tagRelations
;
private
List
<
String
>
fields
;
private
String
methodType
;
/**
* 项目名
*/
...
...
@@ -64,6 +69,14 @@ public class AIMark implements Serializable {
this
.
interfaceRelation
=
interfaceRelation
;
}
public
List
<
String
>
getFields
()
{
return
fields
;
}
public
void
setFields
(
List
<
String
>
fields
)
{
this
.
fields
=
fields
;
}
public
List
<
TagRelation
>
getTagRelations
()
{
return
tagRelations
;
}
...
...
@@ -88,6 +101,14 @@ public class AIMark implements Serializable {
this
.
projectId
=
projectId
;
}
public
String
getMethodType
()
{
return
methodType
;
}
public
void
setMethodType
(
String
methodType
)
{
this
.
methodType
=
methodType
;
}
public
List
<
Integer
>
getMonitorLevelIds
()
{
return
monitorLevelIds
;
}
...
...
middleware-automatic-center-client/src/main/java/com/zhiwei/middleware/automatic/server/pojo/AiApiResult.java
View file @
ab7ac71a
package
com
.
zhiwei
.
middleware
.
automatic
.
server
.
pojo
;
import
java.util.Objects
;
import
org.springframework.util.CollectionUtils
;
import
java.util.List
;
import
java.util.stream.Collectors
;
/**
* author:liu-yu
...
...
@@ -24,6 +27,8 @@ public class AiApiResult {
private
String
sensitive
;
private
List
<
AiTagRelation
>
tagList
;
private
String
project
;
private
String
result
;
...
...
@@ -34,28 +39,21 @@ public class AiApiResult {
public
String
toString
()
{
StringBuilder
builder
=
new
StringBuilder
(
"AiApiResult{"
);
builder
.
append
(
"status='"
).
append
(
status
).
append
(
'\''
);
if
(
Objects
.
nonNull
(
info_class
))
{
builder
.
append
(
", info_class='"
).
append
(
info_class
).
append
(
'\''
);
}
if
(
Objects
.
nonNull
(
sent
))
{
builder
.
append
(
", sent='"
).
append
(
sent
).
append
(
'\''
);
}
if
(
Objects
.
nonNull
(
noise
))
{
builder
.
append
(
", noise='"
).
append
(
noise
).
append
(
'\''
);
}
if
(
Objects
.
nonNull
(
negLabel
))
{
builder
.
append
(
", negLabel='"
).
append
(
negLabel
).
append
(
'\''
);
}
if
(
Objects
.
nonNull
(
related
))
{
builder
.
append
(
", related='"
).
append
(
related
).
append
(
'\''
);
}
if
(
Objects
.
nonNull
(
sensitive
))
{
builder
.
append
(
", sensitive='"
).
append
(
sensitive
).
append
(
'\''
);
if
(!
CollectionUtils
.
isEmpty
(
tagList
))
{
builder
.
append
(
", aiTag='"
).
append
(
tagList
.
stream
().
map
(
e
->
" "
+
e
.
getName
()
+
":"
+
e
.
getValue
()).
collect
(
Collectors
.
joining
())).
append
(
'\''
);
}
builder
.
append
(
"}"
);
return
builder
.
toString
();
}
public
List
<
AiTagRelation
>
getTagList
()
{
return
tagList
;
}
public
void
setTagList
(
List
<
AiTagRelation
>
tagList
)
{
this
.
tagList
=
tagList
;
}
public
String
getSensitive
()
{
return
sensitive
;
}
...
...
middleware-automatic-center-client/src/main/java/com/zhiwei/middleware/automatic/server/pojo/AiMarkProjectCache.java
0 → 100644
View file @
ab7ac71a
package
com
.
zhiwei
.
middleware
.
automatic
.
server
.
pojo
;
/**
* author:liu-yu
* date: 2024/7/18 14:02
**/
public
class
AiMarkProjectCache
{
private
String
id
;
private
String
project
;
private
String
projectId
;
public
String
getId
()
{
return
id
;
}
public
void
setId
(
String
id
)
{
this
.
id
=
id
;
}
public
String
getProject
()
{
return
project
;
}
public
void
setProject
(
String
project
)
{
this
.
project
=
project
;
}
public
String
getProjectId
()
{
return
projectId
;
}
public
void
setProjectId
(
String
projectId
)
{
this
.
projectId
=
projectId
;
}
}
middleware-automatic-center-client/src/main/java/com/zhiwei/middleware/automatic/server/pojo/AiTagRelation.java
0 → 100644
View file @
ab7ac71a
package
com
.
zhiwei
.
middleware
.
automatic
.
server
.
pojo
;
/**
* author:liu-yu
* date: 2024/7/15 14:56
**/
public
class
AiTagRelation
{
private
String
name
;
private
String
value
;
public
AiTagRelation
()
{}
public
AiTagRelation
(
String
name
,
String
value
)
{
this
.
name
=
name
;
this
.
value
=
value
;
}
public
String
getName
()
{
return
name
;
}
public
void
setName
(
String
name
)
{
this
.
name
=
name
;
}
public
String
getValue
()
{
return
value
;
}
public
void
setValue
(
String
value
)
{
this
.
value
=
value
;
}
}
middleware-automatic-center-client/src/main/java/com/zhiwei/middleware/automatic/server/pojo/enums/AiInterfaceEnums.java
View file @
ab7ac71a
...
...
@@ -6,37 +6,19 @@ package com.zhiwei.middleware.automatic.server.pojo.enums;
**/
public
enum
AiInterfaceEnums
{
FEI_HE
(
"飞鹤"
,
"62baa19f4d9a553ac3e7cd9b
"
),
PRODUCT
(
"PRODUCT
"
),
LAO_XIANG_JI
(
"老乡鸡"
,
"665d8791b36dd11c5e453955"
),
COMMON
(
"COMMON"
);
JIA_NAN_KE_JI
(
"嘉楠科技"
,
"65efecab7d8b3a478260e7b6"
),
final
String
type
;
CHANG_XIN_CUN_CHU
(
"长鑫存储"
,
"65b89d4515e6c42baff23e74"
);
final
String
project
;
final
String
projectId
;
AiInterfaceEnums
(
String
project
,
String
projectId
)
{
this
.
project
=
project
;
this
.
projectId
=
projectId
;
AiInterfaceEnums
(
String
type
)
{
this
.
type
=
type
;
}
public
String
get
Project
()
{
return
project
;
public
String
get
Type
()
{
return
type
;
}
public
String
getProjectId
()
{
return
projectId
;
}
public
static
AiInterfaceEnums
create
(
String
projectId
)
{
for
(
AiInterfaceEnums
enums
:
AiInterfaceEnums
.
values
())
{
if
(
enums
.
getProjectId
().
equals
(
projectId
))
{
return
enums
;
}
}
throw
new
IllegalStateException
(
"该项目不支持ai标注:"
+
projectId
);
}
}
middleware-automatic-center-server/pom.xml
View file @
ab7ac71a
...
...
@@ -21,7 +21,7 @@
<qbjc-bean.version>
1.1.4.1-SNAPSHOT
</qbjc-bean.version>
<nlp-aggree.version>
0.0.5-SNAPSHOT
</nlp-aggree.version>
<dubbo-server.version>
2.7.4.1
</dubbo-server.version>
<automatic.version>
1.0.0.
4
-SNAPSHOT
</automatic.version>
<automatic.version>
1.0.0.
5
-SNAPSHOT
</automatic.version>
<base.version>
2.0.0-SNAPSHOT
</base.version>
</properties>
...
...
middleware-automatic-center-server/src/main/java/com/zhiwei/middleware/automatic/server/dao/AiMarkProjectCacheDao.java
0 → 100644
View file @
ab7ac71a
package
com
.
zhiwei
.
middleware
.
automatic
.
server
.
dao
;
import
com.zhiwei.middleware.automatic.server.pojo.AiMarkProjectCache
;
import
java.util.List
;
/**
* author:liu-yu
* date: 2024/7/18 14:04
**/
public
interface
AiMarkProjectCacheDao
{
List
<
AiMarkProjectCache
>
findAll
();
}
middleware-automatic-center-server/src/main/java/com/zhiwei/middleware/automatic/server/dao/impl/AiMarkProjectCacheDaoImpl.java
0 → 100644
View file @
ab7ac71a
package
com
.
zhiwei
.
middleware
.
automatic
.
server
.
dao
.
impl
;
import
com.zhiwei.middleware.automatic.server.dao.AiMarkProjectCacheDao
;
import
com.zhiwei.middleware.automatic.server.pojo.AiMarkProjectCache
;
import
org.springframework.beans.factory.annotation.Qualifier
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
import
org.springframework.stereotype.Component
;
import
java.util.List
;
/**
* author:liu-yu
* date: 2024/7/18 14:04
**/
@Component
public
class
AiMarkProjectCacheDaoImpl
implements
AiMarkProjectCacheDao
{
private
final
MongoTemplate
mongoTemplate
;
private
static
final
String
COLLECTION_NAME
=
"marker_ai_mark_project"
;
public
AiMarkProjectCacheDaoImpl
(
@Qualifier
(
"markerMongoTemplate"
)
MongoTemplate
mongoTemplate
)
{
this
.
mongoTemplate
=
mongoTemplate
;
}
@Override
public
List
<
AiMarkProjectCache
>
findAll
()
{
return
mongoTemplate
.
findAll
(
AiMarkProjectCache
.
class
,
COLLECTION_NAME
);
}
}
middleware-automatic-center-server/src/main/java/com/zhiwei/middleware/automatic/server/mission/AsyncTask.java
View file @
ab7ac71a
...
...
@@ -2,8 +2,9 @@ package com.zhiwei.middleware.automatic.server.mission;
import
com.zhiwei.middleware.automatic.server.common.GenericAttribute
;
import
com.zhiwei.middleware.automatic.server.dao.AiMarkCountDao
;
import
com.zhiwei.middleware.automatic.server.dao.AiMarkProjectCacheDao
;
import
com.zhiwei.middleware.automatic.server.pojo.AiMarkCount
;
import
com.zhiwei.middleware.automatic.server.pojo.
enums.AiInterfaceEnums
;
import
com.zhiwei.middleware.automatic.server.pojo.
AiMarkProjectCache
;
import
com.zhiwei.middleware.automatic.server.util.RedissonUtil
;
import
com.zhiwei.middleware.automatic.server.util.TimeUtil
;
import
com.zhiwei.middleware.automatic.server.util.Tools
;
...
...
@@ -25,6 +26,8 @@ public class AsyncTask {
private
final
RedissonUtil
redissonUtil
;
private
final
AiMarkProjectCacheDao
aiMarkProjectCacheDao
;
public
static
Long
DAY_START_TIME
;
public
static
Long
DAY_END_TIME
;
...
...
@@ -32,10 +35,12 @@ public class AsyncTask {
public
static
String
CURRENT_TIME
;
public
AsyncTask
(
@Qualifier
(
"hangzhouMongoTemplate"
)
MongoTemplate
hangZhouMongo
,
AiMarkCountDao
aiMarkCountDao
,
RedissonUtil
redissonUtil
)
{
AiMarkCountDao
aiMarkCountDao
,
RedissonUtil
redissonUtil
,
AiMarkProjectCacheDao
aiMarkProjectCacheDao
)
{
this
.
hangZhouMongo
=
hangZhouMongo
;
this
.
aiMarkCountDao
=
aiMarkCountDao
;
this
.
redissonUtil
=
redissonUtil
;
this
.
aiMarkProjectCacheDao
=
aiMarkProjectCacheDao
;
}
public
List
<
String
>
findAllGroup
()
{
...
...
@@ -60,7 +65,7 @@ public class AsyncTask {
public
void
syncDayCount
()
{
String
timeKey
=
TimeUtil
.
COMMON_TIME_FORMAT
.
format
(
System
.
currentTimeMillis
()
-
GenericAttribute
.
DAY_TIME
);
for
(
Ai
InterfaceEnums
enums
:
AiInterfaceEnums
.
values
())
{
for
(
Ai
MarkProjectCache
enums
:
aiMarkProjectCacheDao
.
findAll
())
{
AiMarkCount
aiMarkCount
=
new
AiMarkCount
();
aiMarkCount
.
setTime
(
timeKey
);
aiMarkCount
.
setTotal
(
redissonUtil
.
getCount
(
Tools
.
assembleKey
(
GenericAttribute
.
KEY_AI
,
timeKey
,
enums
.
getProject
(),
GenericAttribute
.
KEY_TOTAL
)));
...
...
middleware-automatic-center-son/pom.xml
View file @
ab7ac71a
...
...
@@ -24,7 +24,7 @@
<qbjc-bean.version>
1.1.4.1-SNAPSHOT
</qbjc-bean.version>
<kafka.version>
2.4.1.RELEASE
</kafka.version>
<base.version>
2.0.0-SNAPSHOT
</base.version>
<automatic.version>
1.0.0.
4
-SNAPSHOT
</automatic.version>
<automatic.version>
1.0.0.
5
-SNAPSHOT
</automatic.version>
<marker.version>
1.2.3-SNAPSHOT
</marker.version>
<filter.version>
1.1.6-SNAPSHOT
</filter.version>
<nlp-aggree.version>
0.0.5-SNAPSHOT
</nlp-aggree.version>
...
...
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AbstractAiTaskService.java
View file @
ab7ac71a
...
...
@@ -6,6 +6,7 @@ import com.zhiwei.middleware.automatic.server.common.GenericAttribute;
import
com.zhiwei.middleware.automatic.server.pojo.AIMark
;
import
com.zhiwei.middleware.automatic.server.pojo.AiApiResult
;
import
com.zhiwei.middleware.automatic.server.pojo.AiInterfaceParam
;
import
com.zhiwei.middleware.automatic.server.pojo.AiTagRelation
;
import
com.zhiwei.middleware.automatic.server.pojo.enums.AiInterfaceEnums
;
import
com.zhiwei.middleware.automatic.server.util.RedissonUtil
;
import
com.zhiwei.middleware.automatic.son.dao.AiApiResultDao
;
...
...
@@ -19,9 +20,7 @@ import org.springframework.data.mongodb.core.query.Criteria;
import
org.springframework.data.mongodb.core.query.Query
;
import
java.time.Instant
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Objects
;
import
java.util.*
;
import
java.util.stream.Collectors
;
/**
...
...
@@ -50,27 +49,29 @@ public abstract class AbstractAiTaskService implements AiTaskService {
long
now
=
System
.
currentTimeMillis
();
AIMark
.
InterfaceRelation
interfaceRelation
=
aiParam
.
getAiMark
().
getInterfaceRelation
();
String
s
=
httpResult
(
interfaceRelation
.
getMethod
(),
interfaceRelation
.
getUrl
(),
param
.
toString
(),
interfaceRelation
.
getHeader
().
getInnerMap
());
requestMarkTotalCount
(
timeKey
);
String
project
=
aiParam
.
getAiMark
().
getProject
();
requestMarkTotalCount
(
timeKey
,
project
);
if
(
StringUtils
.
isEmpty
(
s
))
{
requestErrorCount
(
timeKey
);
log
.
error
(
"ai标注失败,项目:{},数据id:{},耗时:{},错误信息:ai接口返回为null"
,
aiInterfaceEnums
.
getProject
()
,
requestErrorCount
(
timeKey
,
project
);
log
.
error
(
"ai标注失败,项目:{},数据id:{},耗时:{},错误信息:ai接口返回为null"
,
project
,
aiParam
.
getJson
().
getString
(
"id"
),
System
.
currentTimeMillis
()
-
now
);
return
null
;
}
long
endTime
=
System
.
currentTimeMillis
()
-
now
;
AiApiResult
aiRes
=
aiApiResultConversion
(
s
,
aiParam
);
if
(
Objects
.
isNull
(
aiRes
))
{
requestResIncomplete
(
timeKey
);
log
.
info
(
"项目:{},数据url:{},耗时:{},ai接口返回信息不完整:{}"
,
aiInterfaceEnums
.
getProject
()
,
param
.
getJSONObject
(
"data"
).
getString
(
GenericAttribute
.
URL
),
endTime
,
s
);
requestResIncomplete
(
timeKey
,
project
);
log
.
info
(
"项目:{},数据url:{},耗时:{},ai接口返回信息不完整:{}"
,
project
,
param
.
getJSONObject
(
"data"
).
getString
(
GenericAttribute
.
URL
),
endTime
,
s
);
return
null
;
}
log
.
info
(
"项目:{},数据url:{},ai标签:{},耗时:{},具体数据:{}"
,
aiInterfaceEnums
.
getProject
()
,
param
.
getJSONObject
(
"data"
).
getString
(
GenericAttribute
.
URL
),
aiRes
.
toString
(),
endTime
,
aiRes
.
getResult
());
log
.
info
(
"项目:{},数据url:{},ai标签:{},耗时:{},具体数据:{}"
,
project
,
param
.
getJSONObject
(
"data"
).
getString
(
GenericAttribute
.
URL
),
aiRes
.
toString
(),
endTime
,
aiRes
.
getResult
());
List
<
AIMark
.
TagRelation
>
tagRelations
=
aiParam
.
getAiMark
().
getTagRelations
();
Map
<
String
,
List
<
AIMark
.
TagRelation
>>
relateGroup
=
tagRelations
.
stream
().
collect
(
Collectors
.
groupingBy
(
AIMark
.
TagRelation
::
getRelateKey
,
Collectors
.
toList
()));
List
<
AIMark
.
TagRelation
>
tagRelationList
=
relateGroup
.
values
().
stream
().
map
(
relations
->
relations
.
stream
().
filter
(
x
->
relateValueVerify
(
x
,
aiRes
)).
findFirst
().
orElse
(
null
)).
filter
(
Objects:
:
nonNull
).
collect
(
Collectors
.
toList
());
Map
<
String
,
AiTagRelation
>
aiTagGroup
=
aiRes
.
getTagList
().
stream
().
collect
(
Collectors
.
toMap
(
AiTagRelation:
:
getName
,
e
->
e
));
List
<
AIMark
.
TagRelation
>
tagRelationList
=
relateGroup
.
values
().
stream
().
map
(
relations
->
relations
.
stream
().
filter
(
x
->
relateValueVerify
(
x
,
aiTagGroup
)).
findFirst
().
orElse
(
null
)).
filter
(
Objects:
:
nonNull
).
collect
(
Collectors
.
toList
());
if
(
tagRelationList
.
isEmpty
())
{
markNotRelation
(
timeKey
);
log
.
info
(
"
数据url:{},ai标签:{},没有绑定关系,以过滤"
,
param
.
getJSONObject
(
"data"
).
getString
(
GenericAttribute
.
URL
),
aiRes
.
toString
());
markNotRelation
(
timeKey
,
project
);
log
.
info
(
"
项目:{},数据url:{},ai标签:{},没有绑定关系,以过滤"
,
project
,
param
.
getJSONObject
(
"data"
).
getString
(
GenericAttribute
.
URL
),
aiRes
.
toString
());
return
null
;
}
JSONObject
json
=
aiParam
.
getJson
();
...
...
@@ -81,7 +82,7 @@ public abstract class AbstractAiTaskService implements AiTaskService {
json
.
put
(
GenericAttribute
.
ES_M_TIME
,
System
.
currentTimeMillis
());
json
.
put
(
GenericAttribute
.
ES_M_GROUP
,
aiParam
.
getAiMark
().
getProject
());
json
.
put
(
GenericAttribute
.
ES_M_GROUP_ID
,
aiParam
.
getAiMark
().
getProjectId
());
log
.
info
(
"
数据url:{},ai标签:{},标注标签:{},成功标注"
,
param
.
getJSONObject
(
"data"
).
getString
(
GenericAttribute
.
URL
),
aiRes
.
toString
(),
logTag
);
log
.
info
(
"
项目:{},数据url:{},ai标签:{},标注标签:{},成功标注"
,
project
,
param
.
getJSONObject
(
"data"
).
getString
(
GenericAttribute
.
URL
),
aiRes
.
toString
(),
logTag
);
return
json
;
}
...
...
@@ -114,7 +115,7 @@ public abstract class AbstractAiTaskService implements AiTaskService {
return
null
;
}
MarkInfo
markInfo
=
MarkInfoUtil
.
transformToMarkInfo
(
jsonObject
);
markSuccess
(
timeKey
);
markSuccess
(
timeKey
,
aiParam
.
getAiMark
().
getProject
()
);
return
markInfo
;
}
...
...
@@ -160,8 +161,17 @@ public abstract class AbstractAiTaskService implements AiTaskService {
aiRes
.
setNegLabel
(
result
.
getString
(
"neg_label"
));
aiRes
.
setRelated
(
result
.
getString
(
"related"
));
aiRes
.
setSensitive
(
result
.
getString
(
"sensitive"
));
List
<
AiTagRelation
>
tagList
=
new
ArrayList
<>();
for
(
String
field
:
aiParam
.
getAiMark
().
getFields
())
{
String
value
=
result
.
getString
(
field
);
if
(
StringUtils
.
isEmpty
(
value
))
{
continue
;
}
tagList
.
add
(
new
AiTagRelation
(
field
,
value
));
}
aiRes
.
setTagList
(
tagList
);
aiRes
.
setResult
(
res
.
toJSONString
());
aiRes
.
setProject
(
ai
InterfaceEnums
.
getProject
());
aiRes
.
setProject
(
ai
Param
.
getAiMark
()
.
getProject
());
aiApiResultDao
.
insert
(
aiRes
);
return
aiRes
;
}
else
{
...
...
@@ -170,32 +180,33 @@ public abstract class AbstractAiTaskService implements AiTaskService {
}
@Override
public
void
requestMarkTotalCount
(
String
timeKey
)
{
redissonUtil
.
putCount
(
Tools
.
assembleKey
(
GenericAttribute
.
KEY_AI
,
timeKey
,
aiInterfaceEnums
.
getProject
()
,
GenericAttribute
.
KEY_TOTAL
),
1
);
public
void
requestMarkTotalCount
(
String
timeKey
,
String
project
)
{
redissonUtil
.
putCount
(
Tools
.
assembleKey
(
GenericAttribute
.
KEY_AI
,
timeKey
,
project
,
GenericAttribute
.
KEY_TOTAL
),
1
);
}
@Override
public
void
requestErrorCount
(
String
timeKey
)
{
redissonUtil
.
putCount
(
Tools
.
assembleKey
(
GenericAttribute
.
KEY_AI
,
timeKey
,
aiInterfaceEnums
.
getProject
(),
GenericAttribute
.
KEY_RES_ERROR
),
1
);
public
void
requestErrorCount
(
String
timeKey
,
String
project
)
{
redissonUtil
.
putCount
(
Tools
.
assembleKey
(
GenericAttribute
.
KEY_AI
,
timeKey
,
project
,
GenericAttribute
.
KEY_RES_ERROR
),
1
);
}
@Override
public
void
requestResIncomplete
(
String
timeKey
)
{
redissonUtil
.
putCount
(
Tools
.
assembleKey
(
GenericAttribute
.
KEY_AI
,
timeKey
,
aiInterfaceEnums
.
getProject
()
,
GenericAttribute
.
KEY_RES_INCOMPLETE
),
1
);
public
void
requestResIncomplete
(
String
timeKey
,
String
project
)
{
redissonUtil
.
putCount
(
Tools
.
assembleKey
(
GenericAttribute
.
KEY_AI
,
timeKey
,
project
,
GenericAttribute
.
KEY_RES_INCOMPLETE
),
1
);
}
@Override
public
void
markNotRelation
(
String
timeKey
)
{
redissonUtil
.
putCount
(
Tools
.
assembleKey
(
GenericAttribute
.
KEY_AI
,
timeKey
,
aiInterfaceEnums
.
getProject
()
,
GenericAttribute
.
KEY_NOT_MARK_RELATION
),
1
);
public
void
markNotRelation
(
String
timeKey
,
String
project
)
{
redissonUtil
.
putCount
(
Tools
.
assembleKey
(
GenericAttribute
.
KEY_AI
,
timeKey
,
project
,
GenericAttribute
.
KEY_NOT_MARK_RELATION
),
1
);
}
@Override
public
void
markSuccess
(
String
timeKey
)
{
redissonUtil
.
putCount
(
Tools
.
assembleKey
(
GenericAttribute
.
KEY_AI
,
timeKey
,
aiInterfaceEnums
.
getProject
()
,
GenericAttribute
.
KEY_SUCCESS
),
1
);
public
void
markSuccess
(
String
timeKey
,
String
project
)
{
redissonUtil
.
putCount
(
Tools
.
assembleKey
(
GenericAttribute
.
KEY_AI
,
timeKey
,
project
,
GenericAttribute
.
KEY_SUCCESS
),
1
);
}
private
boolean
relateValueVerify
(
AIMark
.
TagRelation
tagRelation
,
AiApiResult
result
)
{
String
relateValue
=
getResultValue
(
tagRelation
.
getRelateKey
(),
result
);
private
boolean
relateValueVerify
(
AIMark
.
TagRelation
tagRelation
,
Map
<
String
,
AiTagRelation
>
aiTagGroup
)
{
AiTagRelation
aiTagRelationGroup
=
aiTagGroup
.
get
(
tagRelation
.
getRelateKey
());
String
relateValue
=
Objects
.
nonNull
(
aiTagRelationGroup
)
?
aiTagRelationGroup
.
getValue
()
:
""
;
if
(
StringUtils
.
isEmpty
(
relateValue
))
{
return
false
;
}
...
...
@@ -203,7 +214,10 @@ public abstract class AbstractAiTaskService implements AiTaskService {
return
false
;
}
if
(
Boolean
.
TRUE
.
equals
(
tagRelation
.
getHasRequirements
()))
{
return
tagRelation
.
getRequirements
().
stream
().
allMatch
(
e
->
e
.
getRequirementValue
().
equals
(
getResultValue
(
e
.
getRequirementKey
(),
result
)));
return
tagRelation
.
getRequirements
().
stream
().
allMatch
(
e
->
{
AiTagRelation
aiTagRelation
=
aiTagGroup
.
get
(
e
.
getRequirementKey
());
return
Objects
.
nonNull
(
aiTagRelation
)
&&
aiTagRelation
.
getValue
().
equals
(
e
.
getRequirementValue
());
});
}
return
true
;
}
...
...
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AiTaskService.java
View file @
ab7ac71a
...
...
@@ -41,13 +41,13 @@ public interface AiTaskService {
*/
AiApiResult
aiApiResultConversion
(
String
interfaceRes
,
AiInterfaceParam
aiParam
);
void
requestMarkTotalCount
(
String
timeKey
);
void
requestMarkTotalCount
(
String
timeKey
,
String
project
);
void
requestErrorCount
(
String
timeKey
);
void
requestErrorCount
(
String
timeKey
,
String
project
);
void
requestResIncomplete
(
String
timeKey
);
void
requestResIncomplete
(
String
timeKey
,
String
project
);
void
markNotRelation
(
String
timeKey
);
void
markNotRelation
(
String
timeKey
,
String
project
);
void
markSuccess
(
String
timeKey
);
void
markSuccess
(
String
timeKey
,
String
project
);
}
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AiTaskServiceCJCC.java
deleted
100644 → 0
View file @
b0803aea
package
com
.
zhiwei
.
middleware
.
automatic
.
son
.
task
.
aiTask
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.middleware.automatic.server.pojo.AiInterfaceParam
;
import
com.zhiwei.middleware.automatic.server.pojo.enums.AiInterfaceEnums
;
import
com.zhiwei.middleware.automatic.server.util.RedissonUtil
;
import
com.zhiwei.middleware.automatic.son.dao.AiApiResultDao
;
import
org.springframework.stereotype.Service
;
/**
* author:liu-yu
* date: 2024/7/15 11:04
**/
@Service
public
class
AiTaskServiceCJCC
extends
AbstractAiTaskService
{
public
AiTaskServiceCJCC
(
RedissonUtil
redissonUtil
,
AiApiResultDao
aiApiResultDao
)
{
super
(
AiInterfaceEnums
.
CHANG_XIN_CUN_CHU
,
redissonUtil
,
aiApiResultDao
);
}
@Override
public
JSONObject
httpParamByMetadata
(
AiInterfaceParam
aiParam
)
{
return
null
;
}
}
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AiTaskService
LXJ
.java
→
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AiTaskService
Common
.java
View file @
ab7ac71a
...
...
@@ -12,9 +12,9 @@ import org.springframework.stereotype.Service;
* date: 2024/7/9 14:19
**/
@Service
public
class
AiTaskService
LXJ
extends
AbstractAiTaskService
{
public
AiTaskService
LXJ
(
RedissonUtil
redissonUtil
,
AiApiResultDao
aiApiResultDao
)
{
super
(
AiInterfaceEnums
.
LAO_XIANG_JI
,
redissonUtil
,
aiApiResultDao
);
public
class
AiTaskService
Common
extends
AbstractAiTaskService
{
public
AiTaskService
Common
(
RedissonUtil
redissonUtil
,
AiApiResultDao
aiApiResultDao
)
{
super
(
AiInterfaceEnums
.
COMMON
,
redissonUtil
,
aiApiResultDao
);
}
@Override
...
...
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AiTaskServiceHandler.java
View file @
ab7ac71a
...
...
@@ -2,10 +2,12 @@ package com.zhiwei.middleware.automatic.son.task.aiTask;
import
com.zhiwei.base.entity.subclass.mark.MarkInfo
;
import
com.zhiwei.middleware.automatic.server.pojo.AiInterfaceParam
;
import
com.zhiwei.middleware.automatic.server.pojo.enums.AiInterfaceEnums
;
import
com.zhiwei.middleware.automatic.son.task.holder.ApplicationContextHolder
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Objects
;
/**
* author:liu-yu
...
...
@@ -16,7 +18,7 @@ public class AiTaskServiceHandler {
private
static
final
Map
<
String
,
AiTaskService
>
SERVICE_MAP
=
new
HashMap
<>();
private
AiTaskServiceHandler
()
{
Map
<
String
,
AiTaskService
>
beansOfType
=
ApplicationContextHolder
.
getInstance
().
getBeansOfType
(
AiTaskService
.
class
);
beansOfType
.
forEach
((
k
,
v
)
->
SERVICE_MAP
.
put
(
v
.
getType
().
get
ProjectId
(),
v
));
beansOfType
.
forEach
((
k
,
v
)
->
SERVICE_MAP
.
put
(
v
.
getType
().
get
Type
(),
v
));
}
public
static
AiTaskServiceHandler
getInstance
()
{
...
...
@@ -24,7 +26,11 @@ public class AiTaskServiceHandler {
}
public
MarkInfo
sendAIRequest
(
AiInterfaceParam
aiParam
,
String
timeKey
)
{
return
SERVICE_MAP
.
get
(
aiParam
.
getAiMark
().
getProjectId
()).
executor
(
aiParam
,
timeKey
);
AiTaskService
aiTaskService
=
SERVICE_MAP
.
get
(
aiParam
.
getAiMark
().
getMethodType
());
if
(
Objects
.
isNull
(
aiTaskService
))
{
aiTaskService
=
SERVICE_MAP
.
get
(
AiInterfaceEnums
.
COMMON
.
getType
());
}
return
aiTaskService
.
executor
(
aiParam
,
timeKey
);
}
private
static
class
AiTaskServiceHandlerHolder
{
...
...
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AiTaskServiceJNKJ.java
deleted
100644 → 0
View file @
b0803aea
package
com
.
zhiwei
.
middleware
.
automatic
.
son
.
task
.
aiTask
;
import
com.alibaba.fastjson.JSONObject
;
import
com.zhiwei.middleware.automatic.server.pojo.AiInterfaceParam
;
import
com.zhiwei.middleware.automatic.server.pojo.enums.AiInterfaceEnums
;
import
com.zhiwei.middleware.automatic.server.util.RedissonUtil
;
import
com.zhiwei.middleware.automatic.son.dao.AiApiResultDao
;
import
org.springframework.stereotype.Service
;
/**
* author:liu-yu
* date: 2024/7/10 16:43
**/
@Service
public
class
AiTaskServiceJNKJ
extends
AbstractAiTaskService
{
public
AiTaskServiceJNKJ
(
RedissonUtil
redissonUtil
,
AiApiResultDao
aiApiResultDao
)
{
super
(
AiInterfaceEnums
.
JIA_NAN_KE_JI
,
redissonUtil
,
aiApiResultDao
);
}
@Override
public
JSONObject
httpParamByMetadata
(
AiInterfaceParam
aiParam
)
{
return
null
;
}
}
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AiTaskService
FeiHe
.java
→
middleware-automatic-center-son/src/main/java/com/zhiwei/middleware/automatic/son/task/aiTask/AiTaskService
Product
.java
View file @
ab7ac71a
...
...
@@ -12,9 +12,9 @@ import org.springframework.stereotype.Service;
* date: 2024/7/9 14:16
**/
@Service
public
class
AiTaskService
FeiHe
extends
AbstractAiTaskService
{
public
AiTaskService
FeiHe
(
RedissonUtil
redissonUtil
,
AiApiResultDao
aiApiResultDao
)
{
super
(
AiInterfaceEnums
.
FEI_HE
,
redissonUtil
,
aiApiResultDao
);
public
class
AiTaskService
Product
extends
AbstractAiTaskService
{
public
AiTaskService
Product
(
RedissonUtil
redissonUtil
,
AiApiResultDao
aiApiResultDao
)
{
super
(
AiInterfaceEnums
.
PRODUCT
,
redissonUtil
,
aiApiResultDao
);
}
@Override
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment