Spaces:
Running
Running
Added condition to update embeddings when profile is updated
Browse files
main.py
CHANGED
|
@@ -15,7 +15,7 @@ import threading
|
|
| 15 |
SUPABASE_CONNECTION_STRING = os.getenv("SUPABASE_CONNECTION_STRING")
|
| 16 |
|
| 17 |
# --- Toggles & Tuning ---
|
| 18 |
-
PROCESSING_CHUNK_SIZE =
|
| 19 |
EMBEDDING_BATCH_SIZE = 32
|
| 20 |
DRY_RUN = False
|
| 21 |
|
|
@@ -58,7 +58,12 @@ def fetch_and_lock_chunk(conn, chunk_size):
|
|
| 58 |
languages
|
| 59 |
FROM public.candidates
|
| 60 |
WHERE
|
|
|
|
| 61 |
embeddings IS NULL
|
|
|
|
|
|
|
|
|
|
|
|
|
| 62 |
FOR UPDATE SKIP LOCKED
|
| 63 |
LIMIT %s
|
| 64 |
"""
|
|
|
|
| 15 |
SUPABASE_CONNECTION_STRING = os.getenv("SUPABASE_CONNECTION_STRING")
|
| 16 |
|
| 17 |
# --- Toggles & Tuning ---
|
| 18 |
+
PROCESSING_CHUNK_SIZE = 32
|
| 19 |
EMBEDDING_BATCH_SIZE = 32
|
| 20 |
DRY_RUN = False
|
| 21 |
|
|
|
|
| 58 |
languages
|
| 59 |
FROM public.candidates
|
| 60 |
WHERE
|
| 61 |
+
-- Condition 1: Embedding is missing (New Job)
|
| 62 |
embeddings IS NULL
|
| 63 |
+
OR
|
| 64 |
+
-- Condition 2: Job created after the last embedding (Retry/Update Logic)
|
| 65 |
+
-- Note: Since there is no 'updated_at' column, we rely on created_at vs embeddings_created_at
|
| 66 |
+
(embeddings_created_at IS NOT NULL AND created_at > embeddings_created_at)
|
| 67 |
FOR UPDATE SKIP LOCKED
|
| 68 |
LIMIT %s
|
| 69 |
"""
|