RAGChain Docs
  • Introduction
  • Quick Start
  • Installation
  • RAGchain Structure
    • File Loader
      • Dataset Loader
        • Ko-Strategy-QA Loader
      • Hwp Loader
      • Rust Hwp Loader
      • Win32 Hwp Loader
      • OCR
        • Nougat Loader
        • Mathpix Markdown Loader
        • Deepdoctection Loader
    • Text Spliter
      • Recursive Text Splitter
      • Markdown Header Splitter
      • HTML Header splitter
      • Code splitter
      • Token splitter
    • Retrieval
      • BM25 Retrieval
      • Hybrid Retrieval
      • Hyde Retrieval
      • VectorDB Retrieval
    • LLM
    • DB
      • MongoDB
      • Pickle DB
    • Reranker
      • BM25 Reranker
      • UPR Reranker
      • TART Reranker
      • MonoT5 Reranker
      • LLM Reranker
    • Benchmark
      • Auto Evaluator
      • Dataset Evaluators
        • Qasper
        • Ko-Strategy-QA
        • Strategy-QA
        • ms-marco
  • Utils
    • Query Decomposition
    • Evidence Extractor
    • Embedding
    • Slim Vector Store
      • Pinecone Slim
      • Chroma Slim
    • File Cache
    • Linker
      • Redis Linker
      • Dynamo Linker
      • Json Linker
    • REDE Search Detector
    • Semantic Clustering
  • Pipeline
    • BasicIngestPipeline
    • BasicRunPipeline
    • RerankRunPipeline
    • ViscondeRunPipeline
  • For Advanced RAG
    • Time-Aware RAG
    • Importance-Aware RAG
Powered by GitBook
On this page
  • Overview
  • Usage
  • 1. Make MongoDB Instance with Your MongoDB
  • 2. Use create_or_load
  • 3. Save Passage
  • 4. Fetch Data
  • 5. Search Data
  1. RAGchain Structure
  2. DB

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

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.

PreviousDBNextPickle DB

Last updated 1 year ago

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 objects that match the filters.

Passage