From dd02f1025f4d52dc3e887ae3d06ba203078ccce5 Mon Sep 17 00:00:00 2001 From: bo0tzz Date: Sat, 18 Mar 2023 22:30:48 +0100 Subject: [PATCH] feat(server): Fallback to text search if machine-learning is disabled (#2015) --- server/libs/domain/src/search/search.service.ts | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/server/libs/domain/src/search/search.service.ts b/server/libs/domain/src/search/search.service.ts index 3e93f468a5..6bd6e6f70e 100644 --- a/server/libs/domain/src/search/search.service.ts +++ b/server/libs/domain/src/search/search.service.ts @@ -99,21 +99,18 @@ export class SearchService { this.assertEnabled(); const query = dto.q || dto.query || '*'; - const strategy = dto.clip ? SearchStrategy.CLIP : SearchStrategy.TEXT; + const strategy = dto.clip && MACHINE_LEARNING_ENABLED ? SearchStrategy.CLIP : SearchStrategy.TEXT; const filters = { userId: authUser.id, ...dto }; let assets: SearchResult; switch (strategy) { - case SearchStrategy.TEXT: - assets = await this.searchRepository.searchAssets(query, filters); - break; case SearchStrategy.CLIP: - default: - if (!MACHINE_LEARNING_ENABLED) { - throw new BadRequestException('Machine Learning is disabled'); - } const clip = await this.machineLearning.encodeText(query); assets = await this.searchRepository.vectorSearch(clip, filters); + case SearchStrategy.TEXT: + default: + assets = await this.searchRepository.searchAssets(query, filters); + break; } const albums = await this.searchRepository.searchAlbums(query, filters);