LLM PDF APP est une application web éducative qui permet d'importer un fichier PDF (cours, document pédagogique, etc.) et d'interagir avec une intelligence artificielle pour :
- Générer un résumé automatique du PDF à différents niveaux de détail (classique, collège, universitaire)
- Poser des questions sur le contenu du PDF et obtenir des réponses précises de l'IA
- Générer des quizz (QCM) pour s'auto-évaluer sur le contenu du document
L'application utilise des modèles de langage (LLM, via Ollama) pour l'analyse, la synthèse et la génération de questions.
- Frontend : HTML, CSS, JavaScript (vanilla)
- Interface utilisateur pour l'import, la visualisation du PDF, la génération de résumé, le chat IA et les quizz.
- Backend : FastAPI (Python)
- Endpoints pour l'upload, le résumé, le chat et la génération de QCM.
- Utilisation de LangChain, Ollama, FAISS pour la gestion des modèles et des embeddings.
- Modèles LLM : Ollama (ex: llama3.1)
- Stockage temporaire : Les PDF uploadés sont stockés dans
backend/uploaded_pdfs/.
-
Upload et affichage de PDF
- L'utilisateur importe un PDF qui est affiché dans le navigateur.
- Le fichier est envoyé au backend pour traitement.
-
Résumé automatique
- Trois niveaux de résumé : classique, collège, universitaire.
- Résumé structuré en HTML pour une lecture agréable.
-
Questions/Réponses IA
- L'utilisateur pose des questions sur le PDF.
- L'IA répond en se basant uniquement sur le contenu du document.
-
Génération de Quizz (QCM)
- Génération automatique de 5 questions à choix multiples.
- Deux niveaux (collège, universitaire) et deux types (connaissance, compréhension/application).
- Python 3.10+
- Ollama installé et configuré avec le modèle souhaité (ex: llama3.1)
- (Optionnel) Créer un environnement virtuel Python
pip install fastapi uvicorn langchain langchain-community langchain-ollama python-dotenvAssurez-vous qu'Ollama est lancé et que le modèle llama3.1 (ou autre) est téléchargé.
ollama run llama3.1cd backend
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000Ouvrez simplement frontend/views/main.html dans votre navigateur, ou servez le dossier frontend avec un serveur HTTP (ex: python -m http.server).
- Ouvrez l'application dans votre navigateur.
- Importez un fichier PDF.
- Utilisez les onglets pour :
- Générer un résumé
- Poser des questions à l'IA
- Générer et répondre à un quizz
LLM_PDF_APP/
│
├── backend/
│ ├── app/
│ │ └── main.py
│ ├── resume.py
│ ├── chat.py
│ ├── evalpdf.py
│ └── uploaded_pdfs/
│
├── frontend/
│ ├── views/
│ │ └── main.html
│ ├── styles/
│ │ └── style.css
│ └── script/
│ ├── script.js
│ └── connectAPI.js
│
└── README.md
- Le projet est conçu pour un usage éducatif et expérimental.
- Les modèles LLM peuvent nécessiter des ressources importantes.
- Les réponses de l'IA dépendent de la qualité du PDF et du modèle utilisé.
- Projet réalisé par Zéphyr Lathuy
