Commit ·
cbae03f
1
Parent(s): a638586
[NOTICKET][document] delete from vector embedding if user delete document in knowledge
Browse files
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)
|