Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
fix: use self.embeddings.aembed_* in async methods
  • Loading branch information
liunux4odoo committed Aug 6, 2024
commit 4ef142674b34533d05112d4d3714540746c33dc3
24 changes: 12 additions & 12 deletions langchain_postgres/vectorstores.py
Original file line number Diff line number Diff line change
Expand Up @@ -842,7 +842,7 @@ def similarity_search(
List of Documents most similar to the query.
"""
assert not self._async_engine, "This method must be called without async_mode"
embedding = self.embedding_function.embed_query(text=query)
embedding = self.embeddings.embed_query(query)
return self.similarity_search_by_vector(
embedding=embedding,
k=k,
Expand All @@ -867,7 +867,7 @@ async def asimilarity_search(
List of Documents most similar to the query.
"""
await self.__apost_init__() # Lazy async init
embedding = self.embedding_function.embed_query(text=query)
embedding = await self.embeddings.aembed_query(query)
return await self.asimilarity_search_by_vector(
embedding=embedding,
k=k,
Expand All @@ -891,7 +891,7 @@ def similarity_search_with_score(
List of Documents most similar to the query and score for each.
"""
assert not self._async_engine, "This method must be called without async_mode"
embedding = self.embedding_function.embed_query(query)
embedding = self.embeddings.embed_query(query)
docs = self.similarity_search_with_score_by_vector(
embedding=embedding, k=k, filter=filter
)
Expand All @@ -914,7 +914,7 @@ async def asimilarity_search_with_score(
List of Documents most similar to the query and score for each.
"""
await self.__apost_init__() # Lazy async init
embedding = self.embedding_function.embed_query(query)
embedding = await self.embeddings.aembed_query(query)
docs = await self.asimilarity_search_with_score_by_vector(
embedding=embedding, k=k, filter=filter
)
Expand Down Expand Up @@ -968,7 +968,7 @@ def _results_to_docs_and_scores(self, results: Any) -> List[Tuple[Document, floa
page_content=result.EmbeddingStore.document,
metadata=result.EmbeddingStore.cmetadata,
),
result.distance if self.embedding_function is not None else None,
result.distance if self.embeddings is not None else None,
)
for result in results
]
Expand Down Expand Up @@ -1472,7 +1472,7 @@ async def afrom_texts(
**kwargs: Any,
) -> PGVector:
"""Return VectorStore initialized from documents and embeddings."""
embeddings = embedding.embed_documents(list(texts))
embeddings = await embedding.aembed_documents(list(texts))
return await cls.__afrom(
texts,
embeddings,
Expand Down Expand Up @@ -1895,7 +1895,7 @@ def max_marginal_relevance_search(
Returns:
List[Document]: List of Documents selected by maximal marginal relevance.
"""
embedding = self.embedding_function.embed_query(query)
embedding = self.embeddings.embed_query(query)
return self.max_marginal_relevance_search_by_vector(
embedding,
k=k,
Expand Down Expand Up @@ -1934,7 +1934,7 @@ async def amax_marginal_relevance_search(
List[Document]: List of Documents selected by maximal marginal relevance.
"""
await self.__apost_init__() # Lazy async init
embedding = self.embedding_function.embed_query(query)
embedding = await self.embeddings.aembed_query(query)
return await self.amax_marginal_relevance_search_by_vector(
embedding,
k=k,
Expand Down Expand Up @@ -1973,7 +1973,7 @@ def max_marginal_relevance_search_with_score(
List[Tuple[Document, float]]: List of Documents selected by maximal marginal
relevance to the query and score for each.
"""
embedding = self.embedding_function.embed_query(query)
embedding = self.embeddings.embed_query(query)
docs = self.max_marginal_relevance_search_with_score_by_vector(
embedding=embedding,
k=k,
Expand Down Expand Up @@ -2014,7 +2014,7 @@ async def amax_marginal_relevance_search_with_score(
relevance to the query and score for each.
"""
await self.__apost_init__() # Lazy async init
embedding = self.embedding_function.embed_query(query)
embedding = await self.embeddings.aembed_query(query)
docs = await self.amax_marginal_relevance_search_with_score_by_vector(
embedding=embedding,
k=k,
Expand Down Expand Up @@ -2145,7 +2145,7 @@ def upsert(self, items: Sequence[Document], /, **kwargs: Any) -> UpsertResponse:
texts = [item.page_content for item in items]
metadatas = [item.metadata for item in items]
ids = [item.id if item.id is not None else str(uuid.uuid4()) for item in items]
embeddings = self.embedding_function.embed_documents(list(texts))
embeddings = self.embeddings.embed_documents(list(texts))
added_ids = self.add_embeddings(
texts=texts, embeddings=embeddings, metadatas=metadatas, ids=ids, **kwargs
)
Expand Down Expand Up @@ -2175,7 +2175,7 @@ async def aupsert(
texts = [item.page_content for item in items]
metadatas = [item.metadata for item in items]
ids = [item.id if item.id is not None else str(uuid.uuid4()) for item in items]
embeddings = await self.embedding_function.aembed_documents(list(texts))
embeddings = await self.embeddings.aembed_documents(list(texts))
added_ids = await self.aadd_embeddings(
texts=texts, embeddings=embeddings, metadatas=metadatas, ids=ids, **kwargs
)
Expand Down