quivr/backend/models/databases/supabase/files.py
Stan Girard 4d41901106
feat(perf): increased perf embedding and search for files (#1182)
* feat(upload): changed to task

* feat(sha1): added column for better speed
2023-09-15 23:39:29 +02:00

29 lines
836 B
Python

from models.databases.repository import Repository
class File(Repository):
def __init__(self, supabase_client):
self.db = supabase_client
def set_file_vectors_ids(self, file_sha1):
response = (
self.db.table("vectors")
.select("id")
.filter("file_sha1", "eq", file_sha1)
.execute()
)
return response.data
def get_brain_vectors_by_brain_id_and_file_sha1(self, brain_id, file_sha1):
self.set_file_vectors_ids(file_sha1)
# Check if file exists in that brain
response = (
self.db.table("brains_vectors")
.select("brain_id, vector_id")
.filter("brain_id", "eq", str(brain_id))
.filter("file_sha1", "eq", file_sha1)
.execute()
)
return response