mirror of
				https://github.com/KevinMidboe/immich.git
				synced 2025-10-29 17:40:28 +00:00 
			
		
		
		
	feat(server): Fallback to text search if machine-learning is disabled (#2015)
This commit is contained in:
		| @@ -99,21 +99,18 @@ export class SearchService { | |||||||
|     this.assertEnabled(); |     this.assertEnabled(); | ||||||
|  |  | ||||||
|     const query = dto.q || dto.query || '*'; |     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 }; |     const filters = { userId: authUser.id, ...dto }; | ||||||
|  |  | ||||||
|     let assets: SearchResult<AssetEntity>; |     let assets: SearchResult<AssetEntity>; | ||||||
|     switch (strategy) { |     switch (strategy) { | ||||||
|       case SearchStrategy.TEXT: |  | ||||||
|         assets = await this.searchRepository.searchAssets(query, filters); |  | ||||||
|         break; |  | ||||||
|       case SearchStrategy.CLIP: |       case SearchStrategy.CLIP: | ||||||
|       default: |  | ||||||
|         if (!MACHINE_LEARNING_ENABLED) { |  | ||||||
|           throw new BadRequestException('Machine Learning is disabled'); |  | ||||||
|         } |  | ||||||
|         const clip = await this.machineLearning.encodeText(query); |         const clip = await this.machineLearning.encodeText(query); | ||||||
|         assets = await this.searchRepository.vectorSearch(clip, filters); |         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); |     const albums = await this.searchRepository.searchAlbums(query, filters); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user