chore: Updating Upstash Vector Store parameters format

This commit is contained in:
joaoguilhermeS 2024-06-22 17:28:15 -03:00 • committed by Gabriel Luiz Freitas Almeida
commit 23eaccd339

View file

@ -11,7 +11,7 @@ from langflow.schema import Data
class UpstashVectorStoreComponent(LCVectorStoreComponent):
display_name = "Upstash"
description = "Upstash Vector Store with search capabilities"
documentation = "https://python.langchain.com/docs/modules/data_connection/vectorstores/integrations/upstash"
documentation = "https://python.langchain.com/v0.2/docs/integrations/vectorstores/upstash/"
icon = "Upstash"
inputs = [
@ -26,23 +26,18 @@ class UpstashVectorStoreComponent(LCVectorStoreComponent):
value="text",
advanced=True,
),
MultilineInput(name="search_query", display_name="Search Query"),
DataInput(
name="ingest_data",
display_name="Ingest Data",
is_list=True,
),
HandleInput(
name="embedding",
display_name="Embedding",
input_types=["Embeddings"],
info="To use Upstash's embeddings, don't provide an embedding.",
),
DataInput(
name="vector_store_inputs",
display_name="Vector Store Inputs",
is_list=True,
),
BoolInput(
name="add_to_vector_store",
display_name="Add to Vector Store",
info="If true, the Vector Store Inputs will be added to the Vector Store.",
),
MultilineInput(name="search_input", display_name="Search Input"),
IntInput(
name="number_of_results",
display_name="Number of Results",
@ -58,9 +53,8 @@ class UpstashVectorStoreComponent(LCVectorStoreComponent):
def _build_upstash(self) -> UpstashVectorStore:
use_upstash_embedding = self.embedding is None
if self.add_to_vector_store:
documents = []
for _input in self.vector_store_inputs or []:
for _input in self.ingest_data or []:
if isinstance(_input, Data):
documents.append(_input.to_lc_document())
else:
@ -90,22 +84,15 @@ class UpstashVectorStoreComponent(LCVectorStoreComponent):
index_url=self.index_url,
index_token=self.index_token,
)
else:
upstash_vs = UpstashVectorStore(
embedding=self.embedding or use_upstash_embedding,
text_key=self.text_key,
index_url=self.index_url,
index_token=self.index_token,
)
return upstash_vs
def search_documents(self) -> List[Data]:
vector_store = self._build_upstash()
if self.search_input and isinstance(self.search_input, str) and self.search_input.strip():
if self.search_query and isinstance(self.search_query, str) and self.search_query.strip():
docs = vector_store.similarity_search(
query=self.search_input,
query=self.search_query,
k=self.number_of_results,
)