refactor: remove smart search entity (#17447)

refactor: smart search entity
This commit is contained in:
Jason Rasmussen 2025-04-08 09:56:45 -04:00 committed by GitHub
parent 2b131fe935
commit fdbe6d649f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 125 additions and 134 deletions

View file

@ -4,7 +4,6 @@ import { OnJob } from 'src/decorators';
import { mapAsset } from 'src/dtos/asset-response.dto';
import { AuthDto } from 'src/dtos/auth.dto';
import { DuplicateResponseDto } from 'src/dtos/duplicate.dto';
import { AssetEntity } from 'src/entities/asset.entity';
import { AssetFileType, JobName, JobStatus, QueueName } from 'src/enum';
import { WithoutProperty } from 'src/repositories/asset.repository';
import { AssetDuplicateResult } from 'src/repositories/search.repository';
@ -53,7 +52,7 @@ export class DuplicateService extends BaseService {
return JobStatus.SKIPPED;
}
const asset = await this.assetRepository.getById(id, { files: true, smartSearch: true });
const asset = await this.assetRepository.getAssetForSearchDuplicatesJob(id);
if (!asset) {
this.logger.error(`Asset ${id} not found`);
return JobStatus.FAILED;
@ -75,14 +74,14 @@ export class DuplicateService extends BaseService {
return JobStatus.FAILED;
}
if (!asset.smartSearch?.embedding) {
if (!asset.embedding) {
this.logger.debug(`Asset ${id} is missing embedding`);
return JobStatus.FAILED;
}
const duplicateAssets = await this.searchRepository.searchDuplicates({
assetId: asset.id,
embedding: asset.smartSearch.embedding,
embedding: asset.embedding,
maxDistance: machineLearning.duplicateDetection.maxDistance,
type: asset.type,
userIds: [asset.ownerId],
@ -105,7 +104,10 @@ export class DuplicateService extends BaseService {
return JobStatus.SUCCESS;
}
private async updateDuplicates(asset: AssetEntity, duplicateAssets: AssetDuplicateResult[]): Promise<string[]> {
private async updateDuplicates(
asset: { id: string; duplicateId: string | null },
duplicateAssets: AssetDuplicateResult[],
): Promise<string[]> {
const duplicateIds = [
...new Set(
duplicateAssets