ChatBot / README.md
HarisVasilo's picture
Upload README.md
b9f4a34 verified
---
license: apache-2.0
title: Chatbot Q&A
sdk: streamlit
colorFrom: blue
short_description: A RAG app using DeepSeek to answer questions based on .pdf
---
# 📄 RAG PDF Q&A με Quantized DeepSeek-7B
**Ένας βοηθός που απαντάει στις ερωτήσεις του χρήστη αποκλειστικά με βάση το κείμενο που του δόθηκε από τον χρήστη (PDF) και όχι με βάση την εσωτερική του γνώση.**
---
## 🚀 Βασίζεται σε:
- **LangChain** για chunking και ανάκτηση συμφραζομένων (retrieval)
- **MiniLM (sentence-transformers/all-MiniLM-L6-v2)** για embeddings
- **ChromaDB** ως προσωρινό vector store
- **DeepSeek LLM (deepseek-ai/deepseek-llm-7b-chat)** σε 4-bit quantization
- **Streamlit** για το περιβάλλον χρήστη
- **langid** για αναγνώριση γλώσσας
---
## 🏷️ Χαρακτηριστικά
**Ανέβασμα PDF** (Ελληνικά ή Αγγλικά)
✅ Αυτόματη εξαγωγή κειμένου
**Chunking** με μέγεθος 1000 και overlap 300
✅ Δημιουργία embeddings με **MiniLM**
**ChromaDB** για προσωρινό vector store
**Καθαρισμός retriever και vectorstore** όταν αλλάζει PDF (δεν κρατά παλιές πληροφορίες)
**Αναγνώριση γλώσσας** (langid)
**Απάντηση στη γλώσσα της ερώτησης** (με αυτόματη μετάφραση όταν χρειάζεται)
✅ Επιστροφή **IDs των chunks** που χρησιμοποιήθηκαν για τη δημιουργία της απάντησης
✅ Αν δεν βρεθεί σχετική πληροφορία, απαντά **"I do not know."** ή **"Δεν γνωρίζω."**
**Quantization 4-bit** του **DeepSeek LLM** για αποδοτική χρήση GPU (A10g)
**Cache** του LLM και των pipelines για αποφυγή επανυπολογισμών
---
## 🗂️ Αρχεία
| Όνομα αρχείου | Περιγραφή |
|------------------|-------------------------------|
| `app.py` | Κύριο Streamlit app |
| `requirements.txt` | Απαιτούμενες βιβλιοθήκες |
| `Dockerfile` | Ρυθμίσεις για Hugging Face Space |
| `README.md` | Αυτό το αρχείο |
---
**Σημείωση:**
✔ Υποστηρίζεται paraphrasing μόνο για ερωτήσεις στα Αγγλικά.
✔ Για Ελληνικά paraphrasing δεν υπάρχει κατάλληλο διαθέσιμο μοντέλο αυτή τη στιγμή στο Hugging Face.