mirror of
https://github.com/hwchase17/langchain.git
synced 2025-07-14 17:07:25 +00:00
langchain[patch]: Fix MongoDBAtlasVectorSearch reference in self query retriever (#22401)
**Description:** SelfQuery Retriever with MongoDBAtlasVectorSearch (from langchain_mongodb import MongoDBAtlasVectorSearch) and Chroma (from langchain_chroma import Chroma) is not supported. The imports in the [builtin translators](8cbce684d4/libs/langchain/langchain/retrievers/self_query/base.py (L73)
) points to the [deprecated](acaf214a45/libs/community/langchain_community/vectorstores/mongodb_atlas.py (L36)
) vectorstore. **Issue:** #22272 --------- Co-authored-by: Bagatur <baskaryan@gmail.com> Co-authored-by: Bagatur <22008038+baskaryan@users.noreply.github.com>
This commit is contained in:
parent
afe89a1411
commit
f397a84a59
@ -64,13 +64,11 @@ def _get_builtin_translator(vectorstore: VectorStore) -> Visitor:
|
||||
from langchain_community.query_constructors.weaviate import WeaviateTranslator
|
||||
from langchain_community.vectorstores import (
|
||||
AstraDB,
|
||||
Chroma,
|
||||
DashVector,
|
||||
DatabricksVectorSearch,
|
||||
DeepLake,
|
||||
Dingo,
|
||||
Milvus,
|
||||
MongoDBAtlasVectorSearch,
|
||||
MyScale,
|
||||
OpenSearchVectorSearch,
|
||||
PGVector,
|
||||
@ -82,9 +80,15 @@ def _get_builtin_translator(vectorstore: VectorStore) -> Visitor:
|
||||
Vectara,
|
||||
Weaviate,
|
||||
)
|
||||
from langchain_community.vectorstores import (
|
||||
Chroma as CommunityChroma,
|
||||
)
|
||||
from langchain_community.vectorstores import (
|
||||
ElasticsearchStore as ElasticsearchStoreCommunity,
|
||||
)
|
||||
from langchain_community.vectorstores import (
|
||||
MongoDBAtlasVectorSearch as CommunityMongoDBAtlasVectorSearch,
|
||||
)
|
||||
from langchain_community.vectorstores import (
|
||||
Pinecone as CommunityPinecone,
|
||||
)
|
||||
@ -93,7 +97,7 @@ def _get_builtin_translator(vectorstore: VectorStore) -> Visitor:
|
||||
AstraDB: AstraDBTranslator,
|
||||
PGVector: PGVectorTranslator,
|
||||
CommunityPinecone: PineconeTranslator,
|
||||
Chroma: ChromaTranslator,
|
||||
CommunityChroma: ChromaTranslator,
|
||||
DashVector: DashvectorTranslator,
|
||||
Dingo: DingoDBTranslator,
|
||||
Weaviate: WeaviateTranslator,
|
||||
@ -106,7 +110,7 @@ def _get_builtin_translator(vectorstore: VectorStore) -> Visitor:
|
||||
SupabaseVectorStore: SupabaseVectorTranslator,
|
||||
TimescaleVector: TimescaleVectorTranslator,
|
||||
OpenSearchVectorSearch: OpenSearchTranslator,
|
||||
MongoDBAtlasVectorSearch: MongoDBAtlasTranslator,
|
||||
CommunityMongoDBAtlasVectorSearch: MongoDBAtlasTranslator,
|
||||
}
|
||||
if isinstance(vectorstore, DatabricksVectorSearch):
|
||||
return DatabricksVectorSearchTranslator()
|
||||
@ -148,6 +152,22 @@ def _get_builtin_translator(vectorstore: VectorStore) -> Visitor:
|
||||
if isinstance(vectorstore, PineconeVectorStore):
|
||||
return PineconeTranslator()
|
||||
|
||||
try:
|
||||
from langchain_mongodb import MongoDBAtlasVectorSearch
|
||||
except ImportError:
|
||||
pass
|
||||
else:
|
||||
if isinstance(vectorstore, MongoDBAtlasVectorSearch):
|
||||
return MongoDBAtlasTranslator()
|
||||
|
||||
try:
|
||||
from langchain_chroma import Chroma
|
||||
except ImportError:
|
||||
pass
|
||||
else:
|
||||
if isinstance(vectorstore, Chroma):
|
||||
return ChromaTranslator()
|
||||
|
||||
raise ValueError(
|
||||
f"Self query retriever with Vector Store type {vectorstore.__class__}"
|
||||
f" not supported."
|
||||
|
Loading…
Reference in New Issue
Block a user