docs: Add README file detailing the document processing tool with Gemini integration.
This commit is contained in:
76
README.md
Normal file
76
README.md
Normal file
@@ -0,0 +1,76 @@
|
||||
# Document Processing Tool (Gemini Integration)
|
||||
|
||||
Questo repository contiene uno strumento Python per l'automazione dell'estrazione di informazioni strutturate da documenti Word (`.docx`). Utilizza l'intelligenza artificiale di **Google Gemini** per analizzare il testo e le tabelle, estraendo specifici dati relativi a Use Case, Test Case, Scenari e Verifiche.
|
||||
|
||||
## 🚀 Funzionalità
|
||||
|
||||
* **Lettura Documenti Word**: Supporta la lettura di file `.docx`, preservando la struttura di paragrafi e tabelle.
|
||||
* **Chunking Intelligente**: Divide il documento in frammenti gestibili per l'elaborazione AI, mantenendo il contesto.
|
||||
* **Estrazione AI-Powered**: Utilizza il modello `gemini-flash-latest` (o configurabile) per identificare ed estrarre dati strutturati come tabelle Markdown.
|
||||
* **Conversione Automatica**: Converte l'output dell'AI da Markdown a CSV in modo algoritmico.
|
||||
* **Aggregazione**: Unisce tutti i frammenti elaborati in un unico file CSV finale per ogni documento analizzato.
|
||||
|
||||
## 📋 Prerequisiti
|
||||
|
||||
* Python 3.8 o superiore
|
||||
* Un account Google Cloud con accesso alle API di Gemini (Google AI Studio)
|
||||
|
||||
## 🛠️ Installazione
|
||||
|
||||
1. **Clona il repository:**
|
||||
```bash
|
||||
git clone <url-repository>
|
||||
cd leo-documenti-uat
|
||||
```
|
||||
|
||||
2. **Crea un ambiente virtuale (opzionale ma consigliato):**
|
||||
```bash
|
||||
python -m venv .venv
|
||||
source .venv/bin/activate # Su Windows: .venv\Scripts\activate
|
||||
```
|
||||
|
||||
3. **Installa le dipendenze:**
|
||||
```bash
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
## ⚙️ Configurazione
|
||||
|
||||
1. Crea un file `.env` nella root del progetto copiando l'esempio fornito:
|
||||
```bash
|
||||
cp .env.example .env
|
||||
```
|
||||
|
||||
2. Apri il file `.env` e inserisci la tua API Key di Google:
|
||||
```env
|
||||
GOOGLE_API_KEY=la_tua_chiave_api_qui
|
||||
```
|
||||
*(Nota: `OPENAI_API_KEY` è necessaria solo se si intende utilizzare lo script `process_files_openai.py`)*
|
||||
|
||||
## ▶️ Utilizzo
|
||||
|
||||
1. **Prepara i file di input:**
|
||||
Inserisci i file `.docx` che desideri elaborare nella cartella `input/`.
|
||||
|
||||
2. **Esegui lo script:**
|
||||
```bash
|
||||
python process_files_gemini.py
|
||||
```
|
||||
|
||||
3. **Controlla l'output:**
|
||||
* I risultati parziali (chunk Markdown e CSV) verranno salvati in `output/<nome_file>/`.
|
||||
* Il file **CSV finale aggregato** sarà disponibile direttamente nella cartella `output/` con il nome del documento originale (es. `output/MioDocumento.csv`).
|
||||
|
||||
## 📂 Struttura del Progetto
|
||||
|
||||
* `input/`: Cartella dove posizionare i file `.docx` da elaborare.
|
||||
* `output/`: Cartella di destinazione per i file elaborati.
|
||||
* `process_files_gemini.py`: Script principale che utilizza Google Gemini.
|
||||
* `process_files_openai.py`: Script alternativo per l'utilizzo di OpenAI (GPT).
|
||||
* `requirements.txt`: Elenco delle dipendenze Python.
|
||||
* `.env`: File di configurazione per le variabili d'ambiente (API Keys).
|
||||
|
||||
## 📝 Note
|
||||
|
||||
* Lo script è configurato per cercare colonne specifiche: `ID`, `Descrizione`, `Risultato Atteso`, `Risultato Ottenuto`, `Stato`.
|
||||
* Il modello AI è istruito per agire come un esperto QA e non alterare il testo originale estratto.
|
||||
Reference in New Issue
Block a user