MongoDB

Overview

The MongoDB class is designed to interact with a MongoDB database for storing and retrieving passage contents. It provides methods for creating, loading, saving, fetching, and searching passages in a MongoDB collection.

Usage

1. Make MongoDB Instance with Your MongoDB

To start using the MongoDB class, you first need to create an instance of the class. You can do this by providing the URL of your MongoDB server, the name of your database, and the name of your collection.

from RAGchain.DB import MongoDB

mongo_db = MongoDB(
    mongo_url="mongodb://localhost:27017",  # replace with your MongoDB server URL
    db_name="my_database",  # replace with your database name
    collection_name="my_collection"  # replace with your collection name
)

2. Use create_or_load

The create_or_load method is used to either create a new collection if it does not exist, or load an existing collection.

mongo_db.create_or_load()

3. Save Passage

You can save passages to your MongoDB collection using the save method. This method accepts a list of Passage objects.

passages = [...]  # replace with your list of Passage objects
mongo_db.save(passages)

4. Fetch Data

The fetch method allows you to retrieve passages from your MongoDB collection by their IDs. This method returns a list of Passage objects.

ids = [...]  # replace with your list of IDs. They can be UUID or string.
fetched_passages = mongo_db.fetch(ids)

# Print the fetched passages
for passage in fetched_passages:
    print(passage)

5. Search Data

You can search for passages in your MongoDB collection using the search method. This method accepts filters such as passage ID, content, filepath, and metadatas, then returns a list of Passage objects that match the filters.

search_results = mongo_db.search(content=["search term"], # replace "search term" with your search term
                                 my_metadata_key=["search metadata"]) # replace "my_metadata_key" with your metadata key
                                 # replace "search metadata" with your metadata search term

# Print the search results
for result in search_results:
    print(result)

Please replace the placeholders with your actual data. Also, make sure that your MongoDB server is running and accessible at the provided URL.

Last updated