Skip to content

Commit 3de445d

Browse files
authored
using getattr and default value to prevent 'OpenSearchVectorSearch' has no attribute 'bulk_size' (#29682)
- Description: Adding getattr methods and set default value 500 to cls.bulk_size, it can prevent the error below: Error: type object 'OpenSearchVectorSearch' has no attribute 'bulk_size' - Issue: #29071
1 parent 5d581ba commit 3de445d

File tree

1 file changed

+12
-4
lines changed

1 file changed

+12
-4
lines changed

libs/community/langchain_community/vectorstores/opensearch_vector_search.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1350,7 +1350,9 @@ def from_texts(
13501350
13511351
"""
13521352
embeddings = embedding.embed_documents(texts)
1353-
bulk_size = bulk_size if bulk_size is not None else cls.bulk_size
1353+
bulk_size = (
1354+
bulk_size if bulk_size is not None else getattr(cls, "bulk_size", 500)
1355+
)
13541356
return cls.from_embeddings(
13551357
embeddings,
13561358
texts,
@@ -1416,7 +1418,9 @@ async def afrom_texts(
14161418
14171419
"""
14181420
embeddings = await embedding.aembed_documents(texts)
1419-
bulk_size = bulk_size if bulk_size is not None else cls.bulk_size
1421+
bulk_size = (
1422+
bulk_size if bulk_size is not None else getattr(cls, "bulk_size", 500)
1423+
)
14201424
return await cls.afrom_embeddings(
14211425
embeddings,
14221426
texts,
@@ -1503,7 +1507,9 @@ def from_embeddings(
15031507
"max_chunk_bytes",
15041508
"is_aoss",
15051509
]
1506-
bulk_size = bulk_size if bulk_size is not None else cls.bulk_size
1510+
bulk_size = (
1511+
bulk_size if bulk_size is not None else getattr(cls, "bulk_size", 500)
1512+
)
15071513
_validate_embeddings_and_bulk_size(len(embeddings), bulk_size)
15081514
dim = len(embeddings[0])
15091515
# Get the index name from either from kwargs or ENV Variable
@@ -1636,7 +1642,9 @@ async def afrom_embeddings(
16361642
"max_chunk_bytes",
16371643
"is_aoss",
16381644
]
1639-
bulk_size = bulk_size if bulk_size is not None else cls.bulk_size
1645+
bulk_size = (
1646+
bulk_size if bulk_size is not None else getattr(cls, "bulk_size", 500)
1647+
)
16401648
_validate_embeddings_and_bulk_size(len(embeddings), bulk_size)
16411649
dim = len(embeddings[0])
16421650
# Get the index name from either from kwargs or ENV Variable

0 commit comments

Comments
 (0)