PixScribeIA est une application intelligente qui génère automatiquement des descriptions d’images.
Elle combine :
- 🦰 Un modèle CNN personnalisé pour la détection d’objets
- 🤖 Un modèle pré-entraîné (BLIP) pour la génération de descriptions en langage naturel
- ⚡ Un frontend React moderne (Vite.js)
- 🔥 Un backend Node.js Express pour gérer les requêtes
- 🚀 Une API FastAPI en Python pour toute la logique IA
PixScribeIA/
├── backend/ # Backend Node.js (serveur API Express)
├── frontend/ # Frontend React (Vite.js)
├── ia/ # API FastAPI + PyTorch (logique IA)
├── docker-compose.yml # Docker multi-services
├── .env # Variables d'environnement centralisées
└— README.md| Côté | Technologies | Détails |
|---|---|---|
| Frontend | React + Vite | UI rapide et moderne |
| Backend | Node.js + Express | API intermédiaire |
| IA | FastAPI (Python) | API REST pour IA |
| Modèle IA | PyTorch + CNN + BLIP | Modèle pour prédiction + génération |
| Base de données | MySQL 8 + phpMyAdmin | Stockage utilisateurs, historiques |
Pré-requis : Docker et Docker Compose installés sur votre machine.
docker-compose up --buildCela démarre :
- Frontend sur http://localhost:5173
- Backend API Node.js sur http://localhost:5000
- IA API FastAPI sur http://localhost:8000
- Base de données MySQL + PhpMyAdmin sur http://localhost:8080
Si vous êtes sur MacOS (Apple Silicon ou Intel), une branche spécifique est disponible pour un déploiement optimisé :
Le projet utilise un fichier .env unique à la racine :
# FRONTEND
VITE_API_URL=http://backend:5000/api
# BACKEND
DB_NAME=cours-mia
DB_USER=root
DB_PASSWORD=root
DB_HOST=db
DB_PORT=3306
JWT_SECRET=super_secret_key
FASTAPI_URL=http://ia:8000/api
# MYSQL
MYSQL_ROOT_PASSWORD=root
MYSQL_DATABASE=cours-mia- 📸 L'utilisateur charge une image via l'interface React
- 🚀 Le backend Node.js reçoit l'image et appelle l'API FastAPI
- 🦰 Le CNN détecte les objets principaux
- ✍️ Le modèle BLIP génère une description en langage naturel
- 🎨 La description est renvoyée au frontend et affichée.
- 📈 Génération automatique de textes ALT pour l'accessibilité
- 📷 Légendes automatiques pour albums photo
- 💬 Création de contenus créatifs pour les réseaux sociaux
- 👨🎓 Projet éducatif pour enfants et malvoyants
- 📄 Retrouver facilement vos anciennes requêtes
- 👁️🗨️ Aperçu complet de l'image et de la description générée en cliquant sur un élément de l'historique
Feel free to fork, star, and contribute!
MIT License