Vue d'ensemble
AI Video Comment Analyzer est une application full-stack qui extrait les commentaires de vidéos YouTube et effectue une analyse basée sur le ML, incluant la classification de sentiments, la modélisation de sujets et la génération de résumés par IA. L'outil aide les créateurs de contenu et les chercheurs à comprendre les retours de leur audience grâce à des insights exploitables.Fonctionnalités Clés
| Fonctionnalité | Description |
|---|---|
| Extraction de Commentaires | Récupération de plus de 100 commentaires par vidéo via yt-dlp |
| Analyse de Sentiments | Classification multilingue par BERT (positif/négatif/neutre/suggestion) |
| Modélisation de Sujets | Clustering BERTopic pour identifier les thèmes clés de discussion |
| Résumés IA | Résumés générés localement via Ollama (llama3.2:3b) |
| Progression en Temps Réel | Streaming SSE avec métriques ML en direct pendant l'analyse |
| Dashboard Multi-Pages | Pages dédiées pour Vue d'ensemble, Graphiques, Sujets et Commentaires |
Pipeline d'Analyse
Le pipeline ML traite les commentaires en plusieurs étapes :- Extraction - yt-dlp récupère les commentaires avec leurs métadonnées (likes, réponses, horodatages)
- Analyse de Sentiments - Le modèle BERT classifie chaque commentaire avec des scores de confiance
- Modélisation de Sujets - BERTopic regroupe les commentaires similaires par thèmes
- Synthèse - Ollama génère des résumés exploitables par catégorie de sentiment
Pages du Dashboard
Vue d'ensemble
- Répartition des sentiments en un coup d'œil avec indicateur de tonalité globale
- Bandeau de preuves affichant les commentaires les plus engageants
- Cartes de résumé structurées avec thèmes, preuves et actions
Graphiques
- Diagramme circulaire de répartition des sentiments
- Graphique en barres de l'engagement par sentiment
- Visualisation en bulles des sujets
- Histogramme de confiance ML
Sujets
- Liste des sujets groupés par sentiment avec nombre de commentaires
- Panneau de détails avec mots-clés et commentaires associés
- Barre de filtre par sentiment pour une exploration ciblée
Commentaires
- Liste complète des commentaires avec badges de sujets
- Tri par likes, confiance ou récence
- Mise en surbrillance des mots liés au sentiment
Stack Technique
Frontend
- Next.js 15 - React 19 avec App Router
- TypeScript - Développement type-safe
- Tailwind CSS v4 - Styling utility-first avec design system personnalisé
- shadcn/ui - Composants UI accessibles
- Recharts - Visualisation de données
Backend
- FastAPI - API Python haute performance
- SQLAlchemy - ORM avec base de données SQLite
- yt-dlp - Extraction de commentaires YouTube
- Transformers - Modèle BERT pour l'analyse de sentiments
- BERTopic - Modélisation de sujets avec UMAP + HDBSCAN
- Ollama - Inférence LLM locale
Modèles ML
| Modèle | Fonction |
|---|---|
| nlptown/bert-base-multilingual-uncased-sentiment | Classification de sentiments |
| all-MiniLM-L6-v2 | Embeddings de phrases pour BERTopic |
| llama3.2:3b | Génération de résumés IA |
DevOps
- GitHub Actions - CI/CD avec vérifications de lint, formatage et tests
- Ruff - Linting et formatage Python
- pytest - Tests backend avec seuil de couverture de 65%
- ESLint - Qualité du code frontend
Résumé des Technologies
| Catégorie | Technologies |
|---|---|
| Frontend | Next.js 15, React 19, TypeScript, Tailwind v4, shadcn/ui |
| Backend | FastAPI, SQLAlchemy, SQLite |
| ML/IA | Transformers, BERTopic, Ollama |
| Extraction | yt-dlp |
| CI/CD | GitHub Actions, Ruff, pytest |
