From 27cf8a343c6d1b9e6f95d7a49d4f1c355c801734 Mon Sep 17 00:00:00 2001 From: Mohamed Marrouchi Date: Mon, 12 May 2025 17:19:06 +0100 Subject: [PATCH] fix: nitpicks --- api/src/chat/services/block.service.ts | 14 ++++++-------- api/src/utils/test/mocks/nlp.ts | 11 ++++++++++- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/api/src/chat/services/block.service.ts b/api/src/chat/services/block.service.ts index add9c8a4..0853d2b2 100644 --- a/api/src/chat/services/block.service.ts +++ b/api/src/chat/services/block.service.ts @@ -181,7 +181,9 @@ export class BlockService extends BaseService< const scoredEntities = await this.nlpService.computePredictionScore(nlp); - block = this.matchBestNLP(filteredBlocks, scoredEntities); + if (scoredEntities.entities.length > 0) { + block = this.matchBestNLP(filteredBlocks, scoredEntities); + } } } @@ -395,10 +397,8 @@ export class BlockService extends BaseService< prediction: NLU.ScoredEntities, penaltyFactor = 0.95, ): number { - if (!patterns.length) { - throw new Error( - 'Unable to compute the NLU match score : patterns are missing', - ); + if (!patterns.length || !prediction.entities.length) { + return 0; } return patterns.reduce((score, pattern) => { @@ -456,9 +456,7 @@ export class BlockService extends BaseService< penaltyFactor: number = 0.95, ): number { if (!entity || !pattern) { - throw new Error( - 'Unable to compute pattern score : missing entity/pattern', - ); + return 0; } // In case the pattern matches the entity regardless of the value (any) diff --git a/api/src/utils/test/mocks/nlp.ts b/api/src/utils/test/mocks/nlp.ts index 7c134391..f7f3b5ca 100644 --- a/api/src/utils/test/mocks/nlp.ts +++ b/api/src/utils/test/mocks/nlp.ts @@ -27,7 +27,16 @@ export const mockNlpGreetingNameEntities: NLU.ScoredEntities = { export const mockNlpGreetingFullNameEntities: NLU.ParseEntities = { entities: [ - ...mockNlpGreetingNameEntities.entities, + { + entity: 'intent', + value: 'greeting', + confidence: 0.999, + }, + { + entity: 'firstname', + value: 'jhon', + confidence: 0.5, + }, { entity: 'lastname', value: 'doe',