sofhiaazzhr commited on
Commit
cbae03f
·
1 Parent(s): a638586

[NOTICKET][document] delete from vector embedding if user delete document in knowledge

Browse files
Files changed (1) hide show
  1. src/document/document_service.py +7 -1
src/document/document_service.py CHANGED
@@ -1,7 +1,7 @@
1
  """Service for managing documents."""
2
 
3
  from sqlalchemy.ext.asyncio import AsyncSession
4
- from sqlalchemy import select, delete
5
  from src.db.postgres.models import Document
6
  from src.storage.az_blob.az_blob import blob_storage
7
  from src.middlewares.logging import get_logger
@@ -77,6 +77,12 @@ class DocumentService:
77
  # Delete from blob storage
78
  await blob_storage.delete_file(document.blob_name)
79
 
 
 
 
 
 
 
80
  # Delete from database
81
  await db.execute(
82
  delete(Document).where(Document.id == document_id)
 
1
  """Service for managing documents."""
2
 
3
  from sqlalchemy.ext.asyncio import AsyncSession
4
+ from sqlalchemy import select, delete, text
5
  from src.db.postgres.models import Document
6
  from src.storage.az_blob.az_blob import blob_storage
7
  from src.middlewares.logging import get_logger
 
77
  # Delete from blob storage
78
  await blob_storage.delete_file(document.blob_name)
79
 
80
+ # Delete vector embeddings from pgvector
81
+ await db.execute(
82
+ text("DELETE FROM langchain_pg_embedding WHERE cmetadata->'data'->>'document_id' = :doc_id"),
83
+ {"doc_id": document_id}
84
+ )
85
+
86
  # Delete from database
87
  await db.execute(
88
  delete(Document).where(Document.id == document_id)