MongoDBLoader#
- class langchain_mongodb.loaders.MongoDBLoader(collection: Collection, *, filter_criteria: Dict | None = None, field_names: Sequence[str] | None = None, metadata_names: Sequence[str] | None = None, include_db_collection_in_metadata: bool = True)[source]#
Document Loaders are classes to load Documents.
Document Loaders are usually used to load a lot of Documents in a single run.
Methods
__init__(collection,Β *[,Β filter_criteria,Β ...])Initializes the MongoDB loader with necessary database connection details and configurations.
A lazy loader for Document.
aload()Asynchronously loads data into Document objects.
close()Close the resources used by the MongoDBLoader.
from_connection_string(connection_string,Β ...)Creates a MongoDB loader with necessary database connection details and configurations.
A lazy loader for Document.
load()Load data into Document objects.
load_and_split([text_splitter])Load Document and split into chunks.
- Parameters:
collection (Collection)
filter_criteria (Optional[Dict])
field_names (Optional[Sequence[str]])
metadata_names (Optional[Sequence[str]])
include_db_collection_in_metadata (bool)
- __init__(collection: Collection, *, filter_criteria: Dict | None = None, field_names: Sequence[str] | None = None, metadata_names: Sequence[str] | None = None, include_db_collection_in_metadata: bool = True) None[source]#
Initializes the MongoDB loader with necessary database connection details and configurations.
- Parameters:
collection (Collection) β The pymongo collection to fetch documents from.
filter_criteria (Optional[Dict]) β MongoDB filter criteria for querying
documents. (extract from)
field_names (Optional[Sequence[str]]) β List of field names to retrieve
documents.
metadata_names (Optional[Sequence[str]]) β Additional metadata fields to
documents.
include_db_collection_in_metadata (bool) β Flag to include database and
metadata. (collection names in)
- Return type:
None
- async alazy_load() AsyncIterator[Document]#
A lazy loader for Document.
- Yields:
The Document objects.
- Return type:
AsyncIterator[Document]
- async aload() List[Document][source]#
Asynchronously loads data into Document objects.
- Return type:
List[Document]
- classmethod from_connection_string(connection_string: str, db_name: str, collection_name: str, *, filter_criteria: Dict | None = None, field_names: Sequence[str] | None = None, metadata_names: Sequence[str] | None = None, include_db_collection_in_metadata: bool = True) MongoDBLoader[source]#
Creates a MongoDB loader with necessary database connection details and configurations.
- Parameters:
connection_string (str) β MongoDB connection URI.
db_name (str) β Name of the database to connect to.
collection_name (str) β Name of the collection to fetch documents from.
filter_criteria (Optional[Dict]) β MongoDB filter criteria for querying
documents. (extract from)
field_names (Optional[Sequence[str]]) β List of field names to retrieve
documents.
metadata_names (Optional[Sequence[str]]) β Additional metadata fields to
documents.
include_db_collection_in_metadata (bool) β Flag to include database and
metadata. (collection names in)
- Return type:
- lazy_load() Iterator[Document]#
A lazy loader for Document.
- Yields:
The Document objects.
- Return type:
Iterator[Document]
- load_and_split(text_splitter: TextSplitter | None = None) list[Document]#
Load Document and split into chunks. Chunks are returned as Document.
!!! danger
Do not override this method. It should be considered to be deprecated!
- Parameters:
text_splitter (TextSplitter | None) β
TextSplitter instance to use for splitting documents.
Defaults to RecursiveCharacterTextSplitter.
- Raises:
ImportError β If langchain-text-splitters is not installed and no text_splitter is provided.
- Returns:
List of Document objects.
- Return type:
list[Document]