File size: 2,426 Bytes
1da6910
 
 
 
 
 
60489b5
3950fb0
1da6910
 
 
 
 
15acde2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9dec565
 
15acde2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
60489b5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
---
title: Multilingual Text Summarizer
emoji: πŸ“
colorFrom: blue
colorTo: pink
sdk: gradio
sdk_version: 5.29.0
app_file: app.py
pinned: false
license: apache-2.0
---


# 🧠 Multilingual Text Summarizer with Transformers

This project is a web-based application that summarizes English or French text using LLMs. It supports direct input, `.txt`, and `.pdf` files with automatic language detection.

The project uses **Large Language Models (LLMs)** such as **BART** or **T5**, deployed via a simple, interactive **Gradio** interface.


## πŸ“Œ Objectives

- Automate the **synthesis of long texts** (e-mails, reports, news...)
- Apply **automatic summarization techniques with LLMs**.
- Propose a **simple and responsive user interface**.
- Demonstrate a **real-life case of NLP model industrialization**.


## 🧠 Technical stack

- [Transformers](https://huggingface.co/docs/transformers/index) - Pre-trained models (BART, T5...)
- [Streamlit](https://streamlit.io) - Web interface
- [Gradio](https://www.gradio.app/) - Web interface
- [Python](https://www.python.org) - Processing & pipeline
- [Data](https://huggingface.co/datasets/abisee/cnn_dailymail/viewer/2.0.0?views%5B%5D=_200_train) - abisee/cnn_dailymail

- (Bonus) Docker, FastAPI, GitHub Actions - MLOps


## ✨ Features
- Automatic language detection (English or French)
- Summarization using state-of-the-art models
- Gradio-based web interface
- Supports text, .txt and .pdf inputs

## πŸš€ Run the App

```bash
git clone https://github.com/issa-kabore/SmartSummarizer.git
cd SmartSummarizer
pip install -r requirements.txt
python app_gradio.py
```


## πŸš€ Demo
πŸ‘‰ [Link to deployed app](https://...)
πŸ“Έ See screenshots below


## πŸ“‚ Project structure 
```bash
SmartSummarizer/
β”‚
β”œβ”€β”€ app_gradio.py                # Gradio main script (user interface)
β”œβ”€β”€ summarizer/
β”‚   β”œβ”€β”€ __init__.py             
β”‚   β”œβ”€β”€ models.py                # Loading models and pipelines
β”‚   β”œβ”€β”€ utils.py                # Import functions .txt/.pdf and Language detection
β”‚   └── summarize.py             # Main summary function
β”‚
β”œβ”€β”€ assets/                      # (Optional) static files: images, logos, etc.
β”‚
β”œβ”€β”€ requirements.txt             # Dependencies to install
β”œβ”€β”€ README.md                    # Project presentation
└── .gitignore                   # Files to be ignored by Git

```