ai / backend /app /tasks /background_tasks.py
Ahmed Tarek
Add application file
61d9463
from backend.app.helper.dependencies import embedding_lock, embedding_model , events_vector_db , travels_vector_db
# Background storage of new items
async def safe_store_embeddings(items , label , vector_db , db):
async with embedding_lock:
vector_db.store_embeddings(items, embedding_model)
for item in items:
item['embedded'] = 'done'
db.update_travels(items) if label == "travel" else db.update_events(items)
# Background update of existing items
async def safe_update_embeddings(items , label , vector_db , db):
async with embedding_lock:
vector_db.update_embeddings(items, embedding_model)
for item in items:
item['embedded'] = 'done'
db.update_travels(items) if label == "travel" else db.update_events(items)
# Background deletion
async def safe_delete_event_items(item_ids):
async with embedding_lock:
events_vector_db.delete_items(item_ids)
async def safe_delete_travel_items(item_ids):
async with embedding_lock:
travels_vector_db.delete_items(item_ids)