# systeme-retro-contenu Système de création de contenu rétrospectif ## Description Le système-retro-contenu est une application permettant de créer du contenu rétrospectif à partir de données brutes importées de plusieurs sources tels que réseaux sociaux, blogs et outils de gestion. Il offre des fonctionnalités d'importation, d'analyse, d'exportation et de génération de nouveau contenu. ## Guide d'installation ### Prérequis - Docker - Docker Compose - Git ### Installation sur MacOS 1. Ouvrez le Terminal. 2. Clonez le dépôt : ``` git clone https://github.com/votre-nom/systeme-retro-contenu.git ``` 3. Naviguez vers le répertoire du projet : ``` cd systeme-retro-contenu ``` 4. Créez un fichier `.env` à la racine du projet et configurez les variables d'environnement (voir la section Variables d'environnement). 5. Lancez l'application avec Docker Compose : ``` docker-compose up -d ``` ### Installation sur Windows 1. Ouvrez PowerShell. 2. Clonez le dépôt : ``` git clone https://github.com/votre-nom/systeme-retro-contenu.git ``` 3. Naviguez vers le répertoire du projet : ``` cd systeme-retro-contenu ``` 4. Créez un fichier `.env` à la racine du projet et configurez les variables d'environnement (voir la section Variables d'environnement). 5. Lancez l'application avec Docker Compose : ``` docker-compose up -d ``` ## Composants Docker Compose ### Backend - **Image** : Basée sur Python - **Port** : 8000 - **Volumes** : - `./backend:/app` : Monte le code source du backend - **Dépendances** : Dépend des services MinIO et Milvus ### Frontend - **Image** : Basée sur Node.js - **Port** : 3000 - **Volumes** : - `./frontend:/app` : Monte le code source du frontend - **Dépendances** : Dépend du service Backend ### MinIO - **Image** : MinIO - **Ports** : - 9000 : API - 9001 : Console - **Volumes** : - `./minio_data:/data` : Stockage persistant des données ### Milvus - **Image** : Milvus - **Ports** : - 19530 : API gRPC - 9091 : API REST - **Volumes** : - `./milvus_data:/var/lib/milvus` : Stockage persistant des données Milvus ### Attu - **Image** : Attu (Interface utilisateur pour Milvus) - **Port** : 8080 - **Dépendances** : Dépend du service Milvus ### Flowise - **Image** : Flowise - **Port** : 3000 - **Volumes** : - `./flowise_data:/root/.flowise` : Stockage persistant des données Flowise - **Environnement** : - `PORT=3000` - `FLOWISE_USERNAME=admin` - `FLOWISE_PASSWORD=changeme` ## Variables d'environnement Créez un fichier `.env` à la racine du projet avec les variables suivantes : Certainement ! Je vais documenter toutes ces variables d'environnement en ajoutant une brève description pour chacune d'entre elles. Voici la section mise à jour : **File: /Users/francois/IdeaProjects/systeme-retro-contenu/README.md** ## Variables d'environnement Créez un fichier `.env` à la racine du projet avec les variables suivantes : ```bash # Configuration Milvus MILVUS_HOST=milvus # Nom d'hôte du service Milvus MILVUS_PORT=19530 # Port du service Milvus # Configuration Backend BACKEND_URL=http://backend:8000 # URL du service backend BACKEND_MINIO_BUCKET_NAME=your-bucket-name # Nom du bucket MinIO utilisé par le backend BACKEND_MINIO_ALIAS=minio # Alias pour le service MinIO # Configuration MinIO MINIO_SECURE=false # Utilisation de SSL pour MinIO (true/false) MINIO_ROOT_USER=your-minio-username # Nom d'utilisateur root pour MinIO MINIO_ROOT_PASSWORD=your-minio-password # Mot de passe root pour MinIO # Configuration Flowise FLOWISE_PORT=3000 # Port pour le service Flowise FLOWISE_USERNAME=admin # Nom d'utilisateur pour l'interface Flowise FLOWISE_PASSWORD=changeme # Mot de passe pour l'interface Flowise # Configuration ETCD (utilisé par Milvus) ETCD_AUTO_COMPACTION_MODE=revision # Mode de compactage automatique d'ETCD ETCD_AUTO_COMPACTION_RETENTION=1000 # Rétention pour le compactage automatique ETCD_QUOTA_BACKEND_BYTES=4294967296 # Quota de stockage backend pour ETCD (4GB) ETCD_SNAPSHOT_COUNT=10000 # Nombre de transactions avant de prendre un snapshot # Configuration Attu ATTU_HOST_URL=http://attu:8080 # URL de l'interface Attu # Configuration Ollama OLLAMA_URL=http://ollama:11434 # URL du service Ollama OLLAMA_EMBEDDING_MODEL_NAME=snowflake-arctic-embed2 # Nom du modèle d'embedding Ollama ``` Ces variables d'environnement sont essentielles pour configurer correctement les différents services de votre application. Voici un bref aperçu de leur utilité : - Les variables `MILVUS_*` configurent la connexion à votre base de données vectorielle Milvus. - Les variables `BACKEND_*` définissent les paramètres pour votre service backend, y compris son interaction avec MinIO. - Les variables `MINIO_*` configurent le service de stockage d'objets MinIO. - Les variables `FLOWISE_*` paramètrent le service Flowise, un outil de création de flux de travail pour l'IA. - Les variables `ETCD_*` configurent le service ETCD utilisé par Milvus pour le stockage de métadonnées. - `ATTU_HOST_URL` définit l'URL de l'interface utilisateur Attu pour Milvus. - Les variables `OLLAMA_*` configurent le service Ollama, utilisé pour les modèles d'embedding. Assurez-vous d'ajuster ces valeurs en fonction de votre configuration spécifique et de vos besoins en matière de sécurité. Les valeurs fournies ici sont des exemples et doivent être modifiées pour un environnement de production. ## API Backend | Route | Method | Description | |------------|--------|----------------------| | /import/ | POST | Import raw data | | /analysis/ | GET | Analysis stored data | | /export/ | GET | Export analysed data | | /generate/ | POST | Generate new content | ## Cas d'utilisation ## Contribution Les contributions sont les bienvenues ! Veuillez créer une issue ou une pull request pour toute suggestion ou amélioration. ## Licence [GNU AFFERO GENERAL PUBLIC LICENSE](LICENSE)