medically / database.py
AxL95's picture
Ajout fichiers pour mieux structurer le code
92343a7 verified
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