Skip to content

Commit

Permalink
improve performance and reformat import
Browse files Browse the repository at this point in the history
  • Loading branch information
jingsi committed Apr 14, 2024
1 parent 4df9295 commit 1151942
Showing 1 changed file with 6 additions and 3 deletions.
9 changes: 6 additions & 3 deletions api/core/rag/datasource/vdb/relyt/relyt_vector.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import logging
from typing import Any

from pgvecto_rs.sdk import PGVectoRs, Record
from pydantic import BaseModel, root_validator
from sqlalchemy import text as sql_text
from sqlalchemy.orm import Session
from pgvecto_rs.sdk import PGVectoRs, Record

from core.rag.datasource.vdb.vector_base import BaseVector
from core.rag.models.document import Document
Expand Down Expand Up @@ -138,15 +138,18 @@ def delete(self) -> None:
def text_exists(self, id: str) -> bool:
with Session(self._client._engine) as session:
select_statement = sql_text(
f"SELECT id FROM collection_{self._collection_name} WHERE meta->>'doc_id' = '{id}'; "
f"SELECT id FROM collection_{self._collection_name} WHERE meta->>'doc_id' = '{id}' limit 1; "
)
result = session.execute(select_statement).fetchall()
return len(result) > 0

def search_by_vector(self, query_vector: list[float], **kwargs: Any) -> list[Document]:
from pgvecto_rs.sdk import filters
filter_condition = filters.meta_contains(kwargs.get('filter'))
results = self._client.search(
top_k=int(kwargs.get('top_k')),
embedding=query_vector
embedding=query_vector,
filter=filter_condition
)

# Organize results.
Expand Down

0 comments on commit 1151942

Please sign in to comment.