Add targeted comments explaining non-obvious behaviour

- embedder.py: lazy model load rationale, RGB conversion, shared vector space
- main.py: why vec appears twice, ::vector cast, 1-distance score formula
- main_oracle.py: why array.array("f") is required instead of plain list
- main_oracle_indb.py: no embedder import — embedding done inside Oracle SQL
- index_images_oracle.py: same array.array requirement on indexing path

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-19 14:39:40 +02:00
parent 70da90c238
commit 1c5e00d8e4
6 changed files with 18 additions and 0 deletions
+2
View File
@@ -20,6 +20,8 @@ app.mount("/ui", StaticFiles(directory=os.path.abspath(FRONTEND_DIR), html=True)
@app.get("/search")
def search(q: str = Query(...), limit: int = Query(12)):
# oracledb rejects a plain Python list for a VECTOR column.
# array.array("f") produces a typed 32-bit float buffer that matches VECTOR(512, FLOAT32).
vec = array.array("f", embed_text(q))
conn = get_connection()
cur = conn.cursor()