fix: 벡터 검색 asyncpg 캐스트 — ::vector → cast(:embedding AS vector)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Hyungi Ahn
2026-04-03 14:35:14 +09:00
parent e23c4feaa0
commit b4ca918125

View File

@@ -120,12 +120,12 @@ async def _search_vector(session: AsyncSession, query: str, limit: int) -> list[
result = await session.execute(
text("""
SELECT id, title, ai_domain, ai_summary, file_format,
(1 - (embedding <=> :embedding::vector)) AS score,
(1 - (embedding <=> cast(:embedding AS vector))) AS score,
left(extracted_text, 200) AS snippet,
'vector' AS match_reason
FROM documents
WHERE embedding IS NOT NULL
ORDER BY embedding <=> :embedding::vector
ORDER BY embedding <=> cast(:embedding AS vector)
LIMIT :limit
"""),
{"embedding": str(query_embedding), "limit": limit},