PDF Summariser is designed to summarize PDF files. The application lets you insert PDF files, which will be summarized in a maximum of 1400 words, according to the user's choice. It also offers the option of translating summaries into French, English or German.
The generated summary can be saved as a DOC or TXT file. The application also includes a chatbot that can answer questions about the provided PDF and its generated summary.
- Download the installer Téléchargez l'installeur here with this link to Google Drive and install the application to test it.
- PDF file summary : Summarizes PDF files according to user preferences (up to 1400 words).
- Multilingual translation : Translation of summaries into French, English or German.
- Integrated chatbot : Allows asking questions about the PDF content and its summary for interactive exploration.
- Summary export : Save summaries in DOC (Word) or TXT formats for easy storage and sharing.
- IA template storage : IA models are stored and configured in JSON format within the application, supporting multiple providers (OpenAI, Google Gemini, Ollama, etc.).
- Light and dark themes : The interface offers customizable light and dark modes for optimal viewing comfort.
- User-friendly interface : Built with Tkinter and ttkbootstrap for a simple and pleasant user experience.
- Easy installation : Distributed via a Windows installer (.exe) created with InstallForge.
- Automatic download of Ollama template: if a local Ollama template is selected, the application automatically downloads and installs the required template.
French summary demo
English summary demo
German summary demo (with the 1.0 version of PDF Summerasier)
Demo of the chatbot answering questions based on the summarized PDF content.
The bot helps explore the document interactively by responding to user queries.
Save a summary in txt format
Save a summary in doc format
Demonstration of light/dark theme
This project has enabled me to deepen my knowledge on various aspects:
- AI model manipulation : I learned how to manipulate AI models, as well as how to use them.
- File manipulation in Python : Exploration and management of PDF files, with in-depth understanding of the data.
- Data storage and management : Use of JSON formats to store and manipulate data.
- User interface with Tkinter : Create a user-friendly graphical interface with Tkinter and *Tkinter**.
- Object-oriented programming (OOP) : Using OOP to structure code in a more modular and extensible way.
- Application installer: Use of InstallForge to facilitate deployment.
The main objective was to increase my knowledge of AI models, their different brands and models (benchmark).
To use the Llama 3.2 model, you need to have downloaded Ollama locally, otherwise the model won't work.
- API KEY :
ollama(must be filled in, but is not used directly in the code) - Template name:
llama3.2(for example) - Base URL:
http://localhost:11434/v1
You can use a free Gemini key, available at https://ai.google.dev/.
- API KEY : your API key
- Model name :
gemini-1.5-flash(for example) - Base URL:
https://generativelanguage.googleapis.com/v1beta/openai/
You need to get a key from https://platform.openai.com/api-keys.
- API KEY : your API key
- Model name :
gpt-4o-mini(for example) - Base URL : leave empty
You can also insert other IA templates, but you'll need to consult their official documentation to find out how to configure their API keys and URL bases.
python -m venv .venvThen activate the virtual environment
On Windows :
python -m venv .venv
.\.venv\Scripts\activateOn Linux :
python3 -m venv .venv
source .venv/bin/activatepip install -r requirements.txtThe project requires three external tools:
- Ollama
- Poppler
- Tesseract-OCR
You have two options:
- Install them directly on your PC (classic method)
- OR place them inside the project folders, as in the packaged (.exe) version,
and follow the instructions provided in each dedicated README.
If you install the tools on your system, nothing else needs to be done.
If you prefer to include them in the project, you must follow the setup instructions found in the corresponding directories.
Thanks to David De Groote, who gave us a very interesting seminar on AI at the "École d'Informatique de Gestion" in Delémont (School of Business Information Technology or School of Business Informatics, in english according to deepl and chatgpt). Thanks to this course, I was able to realize this project. His GitBook is available in the links below.
- Installation Package OpenAI - ESIG
- OpenAI API Documentation
- OpenAI Overview
- openai-python GitHub Repository
- Ollama
- python-json-config sur PyPI
- Append to JSON file using Python - GeeksforGeeks
- Tkinter messagebox Documentation
- PyPDF GitHub Repository
- PDF Reader Tutorial
- Classes et Objets - Courspython
- Tkinter Dark/Light Theme Switching - YouTube
- ttkbootstrap Documentation
- ttkbootstrap GitHub Repository
- Centering a Window on the Screen in Tkinter - GeeksforGeeks
- Tkinter Checkbutton Widget - GeeksforGeeks
- Close a Tkinter Window with a Button - GeeksforGeeks
- Switch between Dark and Light ttk Theme - Stack Overflow
- Tkinter Separator - Python Tutorial
- Tkinter Anchors - TutorialsPoint
- Tkinter ttk Documentation
- Logo Source: Livres - Flaticon






