Update deletion for video
This commit is contained in:
@@ -56,6 +56,17 @@ public class VectorStoreController {
|
||||
return ResponseEntity.ok("Request In Working");
|
||||
}
|
||||
|
||||
@PostMapping("/deleteVideoRecords")
|
||||
public ResponseEntity<String> deleteVideoRecords(@RequestBody DeletionRequest deletionRequest){
|
||||
deletionService.deleteVideoRecords(deletionRequest);
|
||||
return ResponseEntity.ok("Request In Working");
|
||||
}
|
||||
|
||||
@PostMapping("/deleteVideoRecordsFromVectorStore")
|
||||
public ResponseEntity<String> deleteVideoRecordsOnlyFromVectorStore(@RequestBody DeletionRequest deletionRequest){
|
||||
deletionService.deleteVideoRecordsOnlyFromVectorStore(deletionRequest);
|
||||
return ResponseEntity.ok("Request In Working");
|
||||
}
|
||||
|
||||
@PostMapping("/deleteGitRecords")
|
||||
public ResponseEntity<String> deleteGitRecords(@RequestBody DeleteGitRepoDetailsRequest deleteGitRepoDetailsRequest){
|
||||
|
||||
@@ -19,11 +19,13 @@ import com.olympus.apollo.repository.KSGitInfoRepository;
|
||||
import com.olympus.apollo.repository.KSGitIngestionInfoRepository;
|
||||
import com.olympus.apollo.repository.KSIngestionInfoRepository;
|
||||
import com.olympus.apollo.repository.KSTextsRepository;
|
||||
import com.olympus.apollo.repository.KSVideoRepository;
|
||||
import com.olympus.apollo.repository.VectorStoreRepository;
|
||||
import com.olympus.dto.DeleteGitRepoDetailsRequest;
|
||||
import com.olympus.dto.DeletionRequest;
|
||||
import com.olympus.dto.ResultDTO;
|
||||
import com.olympus.model.apollo.KSDocument;
|
||||
import com.olympus.model.apollo.KSVideo;
|
||||
import com.olympus.model.apollo.KSGitInfo;
|
||||
|
||||
@Service
|
||||
@@ -34,6 +36,9 @@ public class DeletionService {
|
||||
@Autowired
|
||||
private KSDocumentRepository ksDocumentRepository;
|
||||
|
||||
@Autowired
|
||||
private KSVideoRepository ksVideoRepository;
|
||||
|
||||
@Autowired
|
||||
private KSTextsRepository ksTextsRepository;
|
||||
|
||||
@@ -103,6 +108,54 @@ public class DeletionService {
|
||||
}
|
||||
}
|
||||
|
||||
@Async("asyncTaskExecutor")
|
||||
public void deleteVideoRecords(DeletionRequest deletionRequest) {
|
||||
try {
|
||||
|
||||
String rag_filter = "KsDocumentId=='"+deletionRequest.getKsDocumentId()+"'";
|
||||
logger.info("Starting deletion");
|
||||
vectorStore.delete(rag_filter);
|
||||
|
||||
ksVideoRepository.deleteById(deletionRequest.getKsDocumentId());
|
||||
logger.info("KSDocument with id {} deleted successfully.", deletionRequest.getKsDocumentId());
|
||||
// }else{
|
||||
// logger.warn("KSDocument with id {} does not exist.", deletionRequest.getKsDocumentId());
|
||||
// }
|
||||
} catch (Exception e) {
|
||||
logger.error("An error occurred while deleting records: ", e+" "+Thread.currentThread().getName());
|
||||
throw new RuntimeException("An error occurred while deleting records", e);
|
||||
}
|
||||
}
|
||||
|
||||
@Async("asyncTaskExecutor")
|
||||
public void deleteVideoRecordsOnlyFromVectorStore(DeletionRequest deletionRequest) {
|
||||
try {
|
||||
|
||||
KSVideo ksVideo = ksVideoRepository.findById(deletionRequest.getKsDocumentId()).get();
|
||||
ksVideo.setIngestionStatus("DELETING");
|
||||
ksVideoRepository.save(ksVideo);
|
||||
|
||||
String rag_filter = "KsDocumentId=='"+deletionRequest.getKsDocumentId()+"'";
|
||||
|
||||
logger.info("Starting deletion");
|
||||
vectorStore.delete(rag_filter);
|
||||
|
||||
//elimino dal vectorStore ma mantengo il record
|
||||
ksVideo.setIngestionStatus("LOADED");
|
||||
Date now = new Date();
|
||||
ksVideo.setIngestionDate(now);
|
||||
|
||||
ksVideoRepository.save(ksVideo);
|
||||
logger.info("KSVideo with id {} deleted from VectorStore successfully.", deletionRequest.getKsDocumentId());
|
||||
// }else{
|
||||
// logger.warn("KSDocument with id {} does not exist.", deletionRequest.getKsDocumentId());
|
||||
// }
|
||||
} catch (Exception e) {
|
||||
logger.error("An error occurred while deleting records: ", e+" "+Thread.currentThread().getName());
|
||||
throw new RuntimeException("An error occurred while deleting records", e);
|
||||
}
|
||||
}
|
||||
|
||||
@Async
|
||||
public CompletableFuture<Void> deleteRecordsOfGitRepo(DeleteGitRepoDetailsRequest deleteGitRepoDetailsRequest) {
|
||||
return CompletableFuture.runAsync(() -> {
|
||||
|
||||
Reference in New Issue
Block a user