--- title: Atlas RAG emoji: 📚 colorFrom: blue colorTo: indigo sdk: docker app_port: 7860 pinned: false short_description: Assistant RAG privé pour interroger des documents PDF hf_oauth: true hf_oauth_expiration_minutes: 480 hf_oauth_authorized_org: atlas-rag-team --- # Atlas RAG Application Flask privée utilisant : - LanceDB pour les passages déjà indexés ; - BGE-M3 pour l'embedding des questions ; - GTE multilingue pour le reranking ; - Groq pour rédiger la réponse finale. ## Stockage permanent Le Bucket `Raphael07/atlas-rag-data` doit être monté en lecture-écriture sur : ```text /data ``` Atlas utilise alors automatiquement : ```text /data/documents /data/chunk_records /tmp/atlas-rag/state.sqlite3 (catalogue local reconstruit au démarrage) /data/upload_sessions /data/hf-cache /tmp/atlas-rag/lancedb (cache local reconstruit au démarrage) ``` À chaque redémarrage, Atlas reconstruit le catalogue SQLite local et la LanceDB locale à partir des PDF et des fragments Parquet persistants, sans refaire les embeddings. ## Secrets et rôles Dans les réglages du Space, ajoute comme **Secrets** : ```text GROQ_API_KEY FLASK_SECRET_KEY ``` `FLASK_SECRET_KEY` doit être une longue valeur aléatoire. Ne publie jamais ces secrets dans le dépôt. Hugging Face crée automatiquement les variables OAuth `OAUTH_CLIENT_ID`, `OAUTH_CLIENT_SECRET`, `OAUTH_SCOPES` et `OPENID_PROVIDER_URL` grâce à `hf_oauth: true`. Variables recommandées : ```text ATLAS_AUTHORIZED_ORG=atlas-rag-team ATLAS_ADMIN_USERS=Raphael07 ATLAS_MANAGER_USERS=SupAIL3,divinetonduangu123 ``` Rôles Atlas : - administrateur : toutes les fonctions ; - gestionnaire : chat, recherche, upload, suppression, reprise et réindexation ; - visiteur : chat, recherche, sources et aperçu uniquement. ## Premier chargement des modèles La première question télécharge BGE-M3 et GTE dans `/data/hf-cache`. Elle peut donc être nettement plus lente. Les redémarrages suivants réutilisent ce cache permanent. ## Migration de l'ancienne base Au premier démarrage de cette version, Atlas lit l'ancienne base `/data/lancedb`, crée les archives persistantes dans `/data/chunk_records`, puis utilise uniquement la LanceDB locale sous `/tmp`. Ne supprime pas `/data/lancedb` avant d'avoir vu le message `Migration terminée` dans les logs.