Multi-Rag / api /MultiRag /routes /delete_thread_route.py
VashuTheGreat2's picture
Upload folder using huggingface_hub
5551822 verified
import fastapi
import logging
import os
import shutil
from exception import MyException
from api.constants import DATA_FOLDER_PATH,DB_FOLDER_PATH
from src.MultiRag.graph.builder import deleteThread
router = fastapi.APIRouter()
@router.delete("/delete_thread")
async def delete_thread(thread_id: str):
try:
logging.info(f"Attempting to delete thread {thread_id}")
await deleteThread(thread_id)
data_path = f"{DATA_FOLDER_PATH}/{thread_id}"
db_path = f"{DB_FOLDER_PATH}/{thread_id}"
if os.path.exists(data_path):
shutil.rmtree(data_path)
if os.path.exists(db_path):
shutil.rmtree(db_path)
logging.info(f"Successfully deleted thread {thread_id}")
return {"message": f"Thread {thread_id} has been deleted."}
except Exception as e:
logging.error(f"Failed to delete thread {thread_id}: {str(e)}")
raise MyException("Failed to delete thread") from e