1
1
mirror of https://github.com/leon-ai/leon.git synced 2024-09-20 06:17:20 +03:00

refactor: do not call any core singletons during setup

This commit is contained in:
louistiti 2023-04-15 00:32:28 +08:00
parent a03afa78be
commit 994cca7bf4
No known key found for this signature in database
GPG Key ID: 92CD6A2E497E1669
3 changed files with 21 additions and 17 deletions

View File

@ -156,17 +156,6 @@ export default class NER {
} }
} }
public anonymizeEntities(
utterance: NLPUtterance,
entities: NEREntity[]
): NLPUtterance {
entities.forEach((entity) => {
utterance = utterance.replace(entity.sourceText, `{${entity.entity}}`)
})
return utterance
}
/** /**
* Get spaCy entities from the TCP server * Get spaCy entities from the TCP server
*/ */

View File

@ -294,7 +294,11 @@ export default class NLU {
const processingTimeEnd = Date.now() const processingTimeEnd = Date.now()
const processingTime = processingTimeEnd - processingTimeStart const processingTime = processingTimeEnd - processingTimeStart
Telemetry.utterance(this.nluResult, processedData?.executionTime || 0) Telemetry.utterance(
BRAIN.lang,
this.nluResult,
processedData?.executionTime || 0
)
return resolve({ return resolve({
processingTime, // In ms, total time processingTime, // In ms, total time

View File

@ -4,7 +4,8 @@ import axios from 'axios'
import osName from 'os-name' import osName from 'os-name'
import getos from 'getos' import getos from 'getos'
import type { NLUResult } from '@/core/nlp/types' import type { ShortLanguageCode } from '@/types'
import type { NLUResult, NEREntity, NLPUtterance } from '@/core/nlp/types'
import { import {
IS_TELEMETRY_ENABLED, IS_TELEMETRY_ENABLED,
INSTANCE_ID, INSTANCE_ID,
@ -17,7 +18,6 @@ import {
TCP_SERVER_VERSION, TCP_SERVER_VERSION,
TTS_PROVIDER TTS_PROVIDER
} from '@/constants' } from '@/constants'
import { BRAIN, NER } from '@/core'
import { SystemHelper } from '@/helpers/system-helper' import { SystemHelper } from '@/helpers/system-helper'
import { SkillDomainHelper } from '@/helpers/skill-domain-helper' import { SkillDomainHelper } from '@/helpers/skill-domain-helper'
import { LogHelper } from '@/helpers/log-helper' import { LogHelper } from '@/helpers/log-helper'
@ -103,6 +103,7 @@ export class Telemetry {
} }
public static async utterance( public static async utterance(
lang: ShortLanguageCode,
nluResult: NLUResult, nluResult: NLUResult,
executionTime: number executionTime: number
): Promise<void> { ): Promise<void> {
@ -130,10 +131,9 @@ export class Telemetry {
triggeredSkill, triggeredSkill,
triggeredAction, triggeredAction,
probability, probability,
language: BRAIN.lang, language: lang,
executionTime, executionTime,
// TODO: await because when github.com + hi fast = not anonymized value: this.anonymizeEntities(utterance, entities),
value: await NER.anonymizeEntities(utterance, entities),
triggeredSkillVersion: skill.version, triggeredSkillVersion: skill.version,
triggeredSkillBridge: skill.bridge triggeredSkillBridge: skill.bridge
} }
@ -210,4 +210,15 @@ export class Telemetry {
} }
} }
} }
private static anonymizeEntities(
utterance: NLPUtterance,
entities: NEREntity[]
): NLPUtterance {
entities.forEach((entity) => {
utterance = utterance.replace(entity.sourceText, `{${entity.entity}}`)
})
return utterance
}
} }