from pymongo import MongoClient | |
import os | |
from config import MONGODB_URI, DB_NAME, SAVE_FOLDER | |
mongo_client = None | |
db = None | |
def init_mongodb(): | |
"""Initialise la connexion à MongoDB.""" | |
global mongo_client, db | |
mongo_client = MongoClient(MONGODB_URI) | |
db = mongo_client[DB_NAME] | |
os.makedirs(SAVE_FOLDER, exist_ok=True) | |
doc_count = db.connaissances.count_documents({}) | |
print(f"\n[DIAGNOSTIC] Collection 'connaissances': {doc_count} documents trouvés") | |
if doc_count == 0: | |
print("[AVERTISSEMENT] La collection est vide. Le système RAG ne fonctionnera pas!") | |
else: | |
sample_doc = db.connaissances.find_one({}) | |
has_embeddings = "embedding" in sample_doc and sample_doc["embedding"] is not None | |
print(f"[DIAGNOSTIC] Les documents ont des embeddings: {'✅ Oui' if has_embeddings else '❌ Non'}") | |
return db | |
def get_db(): | |
"""Récupère l'instance de la base de données.""" | |
global db | |
if db is None: | |
return init_mongodb() | |
return db |