Jake-seong commited on
Commit
1fa361c
·
verified ·
1 Parent(s): 402cef0

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +6 -3
app.py CHANGED
@@ -4,6 +4,8 @@ from openai import OpenAI
4
  import json
5
  import os
6
  from typing import List, Dict
 
 
7
 
8
  # DB 연결 설정
9
  def get_db_conn():
@@ -38,14 +40,15 @@ def search_similar_chats(query: str, maxResults: int = 10) -> List[Dict]:
38
  Returns:
39
  List[Dict]: 검색 결과 목록
40
  """
41
- embedding = get_embedding(query)
42
  conn = get_db_conn()
 
43
  with conn.cursor() as cur:
44
  cur.execute("""
45
- SELECT id, metadata, content, embedding <#> %s::vector AS distance
46
  FROM vector_store
47
  WHERE metadata->>'documentType' = 'chatAnalysis'
48
- ORDER BY embedding <#> %s::vector
49
  LIMIT %s
50
  """, (embedding, embedding, maxResults))
51
  rows = cur.fetchall()
 
4
  import json
5
  import os
6
  from typing import List, Dict
7
+ from pgvector.psycopg2 import register_vector
8
+ import numpy as np
9
 
10
  # DB 연결 설정
11
  def get_db_conn():
 
40
  Returns:
41
  List[Dict]: 검색 결과 목록
42
  """
43
+ embedding = np.array(get_embedding(query)) # numpy array로 변환
44
  conn = get_db_conn()
45
+ register_vector(conn) # 벡터 타입 자동 변환 지원
46
  with conn.cursor() as cur:
47
  cur.execute("""
48
+ SELECT id, metadata, content, embedding <#> %s AS distance
49
  FROM vector_store
50
  WHERE metadata->>'documentType' = 'chatAnalysis'
51
+ ORDER BY embedding <#> %s
52
  LIMIT %s
53
  """, (embedding, embedding, maxResults))
54
  rows = cur.fetchall()