MultiModel-Rag / backend /database.py
dev-models's picture
Initial commit
e97c8d1
raw
history blame
652 Bytes
from pymongo import MongoClient
from pymongo.collection import Collection
from config import MONGO_URI, DB_NAME, MONGO_COLLECTION
def get_mongo_client(uri: str | None = None) -> MongoClient:
"""Return a pymongo MongoClient."""
uri = uri or MONGO_URI
return MongoClient(uri)
def get_mongo_collection(client: MongoClient | None = None, db_name: str | None = None, collection_name: str | None = None) -> Collection:
"""Return a MongoDB collection instance."""
client = client or get_mongo_client()
db_name = db_name or DB_NAME
collection_name = collection_name or MONGO_COLLECTION
return client[db_name][collection_name]