|
@@ -36,6 +36,8 @@ type DAFService interface {
|
|
// BatchSubmitTasks 批量提交任务
|
|
// BatchSubmitTasks 批量提交任务
|
|
BatchSubmitTasks(tasks []*dfa.ArticleDfaTagMapping)
|
|
BatchSubmitTasks(tasks []*dfa.ArticleDfaTagMapping)
|
|
FindTextTagLabels(text string) []string
|
|
FindTextTagLabels(text string) []string
|
|
|
|
+
|
|
|
|
+ SubmitTask(tasks *dfa.ArticleDfaTagMapping)
|
|
}
|
|
}
|
|
|
|
|
|
func (d *DAFHandler) FindTextTagLabels(text string) (labels []string) {
|
|
func (d *DAFHandler) FindTextTagLabels(text string) (labels []string) {
|
|
@@ -47,6 +49,21 @@ func (d *DAFHandler) FindTextTagLabels(text string) (labels []string) {
|
|
}
|
|
}
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+func (d *DAFHandler) SubmitTask(task *dfa.ArticleDfaTagMapping) {
|
|
|
|
+ currentTask := task
|
|
|
|
+ err := d.WorkerPool.Submit(func() {
|
|
|
|
+ d.GetTextTagLabels(currentTask)
|
|
|
|
+ insertErr := d.Insert(currentTask)
|
|
|
|
+ if insertErr != nil {
|
|
|
|
+ utils.FileLog.Error("插入dfa算法标签失败:", insertErr.Error())
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ if err != nil {
|
|
|
|
+ utils.FileLog.Error("提交任务失败:", err.Error())
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+}
|
|
func (d *DAFHandler) BatchSubmitTasks(tasks []*dfa.ArticleDfaTagMapping) {
|
|
func (d *DAFHandler) BatchSubmitTasks(tasks []*dfa.ArticleDfaTagMapping) {
|
|
// 创建结果收集通道
|
|
// 创建结果收集通道
|
|
results := make(chan *dfa.ArticleDfaTagMapping, len(tasks))
|
|
results := make(chan *dfa.ArticleDfaTagMapping, len(tasks))
|
|
@@ -137,6 +154,10 @@ func (d *DAFHandler) ReloadSensitiveWordMap() {
|
|
func (d *DAFHandler) BatchInsert(tasks []*dfa.ArticleDfaTagMapping) (err error) {
|
|
func (d *DAFHandler) BatchInsert(tasks []*dfa.ArticleDfaTagMapping) (err error) {
|
|
return dfa.BatchInsertArticleDfaTagMapping(tasks)
|
|
return dfa.BatchInsertArticleDfaTagMapping(tasks)
|
|
|
|
|
|
|
|
+}
|
|
|
|
+func (d *DAFHandler) Insert(task *dfa.ArticleDfaTagMapping) (err error) {
|
|
|
|
+ return dfa.InsertArticleDfaTagMapping(task)
|
|
|
|
+
|
|
}
|
|
}
|
|
func initSensitiveWords() (sensitiveWordMap map[SensitiveWord]TagName) {
|
|
func initSensitiveWords() (sensitiveWordMap map[SensitiveWord]TagName) {
|
|
list, err := dfa.GetList()
|
|
list, err := dfa.GetList()
|