Spaces:
Sleeping
Sleeping
File size: 2,453 Bytes
a2727ec 403fdb2 |
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 79 |
---
title: EGoV Chatbot
emoji: 💻
colorFrom: red
colorTo: blue
sdk: docker
pinned: false
license: mit
---
# EGoV Chatbot 💻
EGoV Chatbot là một ứng dụng **chatbot tra cứu thủ tục hành chính** sử dụng dữ liệu từ Hugging Face Hub và cơ chế **hybrid search** (semantic + keyword).
Dự án này được triển khai dưới dạng **Hugging Face Space** với backend **Flask** và **Docker SDK**.
---
## 🚀 Tính năng chính
- **Tra cứu thủ tục hành chính** với dữ liệu có sẵn.
- **Hybrid Search**: kết hợp tìm kiếm từ khóa (BM25) và tìm kiếm vector (Sentence Transformers).
- **REST API Endpoint**: `/chat` để nhận câu hỏi và trả về câu trả lời.
- **Tích hợp Hugging Face Hub**: tải dữ liệu và model trực tiếp từ HF Hub bằng token.
---
## 📂 Cấu trúc dự án
```
├── app.py # Flask backend chính
├── requirements.txt # Danh sách thư viện cần cài đặt
├── Dockerfile # Docker build cho Space
├── id_to_record.pkl # File mapping id -> dữ liệu thủ tục
├── toan_bo_du_lieu_final.json # Dữ liệu gốc (tùy chọn)
└── README.md # File này
```
---
## 🔑 Biến môi trường yêu cầu
Trước khi chạy, cần cung cấp biến môi trường:
- `HF_TOKEN`: Token Hugging Face của bạn (để tải dữ liệu/model từ Hub).
Trong Hugging Face Space, đặt token trong mục **"Settings > Secrets"**.
---
## 🐳 Chạy bằng Docker (cục bộ)
```bash
docker build -t egov-chatbot .
docker run -p 7860:7860 -e HF_TOKEN=your_hf_token egov-chatbot
```
Sau đó truy cập:
[http://localhost:7860/chat?query=Thủ tục làm CCCD](http://localhost:7860/chat?query=Thủ%20tục%20làm%20CCCD)
---
## 📡 API Endpoint
- **`POST /chat`**
- **Body**: `{ "query": "Câu hỏi của bạn" }`
- **Response**: `{ "answer": "Câu trả lời từ chatbot" }`
Ví dụ:
```bash
curl -X POST http://localhost:7860/chat \
-H "Content-Type: application/json" \
-d '{"query": "Thủ tục cấp giấy khai sinh"}'
```
---
## 📝 Giấy phép
Dự án sử dụng giấy phép **MIT** – tự do sử dụng và tùy biến.
---
## 📖 Tham khảo
- [Hugging Face Hub](https://huggingface.co/)
- [Sentence Transformers](https://www.sbert.net/)
- [BM25 Ranker](https://github.com/castorini/pyserini)
|