|
|
---
|
|
|
title: ACCEPTIN - Telecom Site Quality Classification
|
|
|
emoji: π‘
|
|
|
colorFrom: blue
|
|
|
colorTo: purple
|
|
|
sdk: streamlit
|
|
|
sdk_version: 1.31.0
|
|
|
app_file: app.py
|
|
|
pinned: false
|
|
|
license: mit
|
|
|
---
|
|
|
|
|
|
# π‘ ACCEPTIN - Telecom Site Quality Classification
|
|
|
|
|
|
AI-powered telecom site inspection using ConvNeXt transfer learning.
|
|
|
|
|
|
---
|
|
|
|
|
|
## π Deploying ACCEPTIN on Hugging Face Spaces
|
|
|
|
|
|
### 1. Prepare Your Project Directory
|
|
|
|
|
|
Ensure your project has the following structure:
|
|
|
```
|
|
|
ACCEPTIN/
|
|
|
βββ app.py
|
|
|
βββ requirements.txt
|
|
|
βββ README.md
|
|
|
βββ models/
|
|
|
β βββ telecom_classifier.pth
|
|
|
βββ utils/
|
|
|
β βββ data_utils.py
|
|
|
β βββ model_utils.py
|
|
|
βββ ... (other files)
|
|
|
```
|
|
|
|
|
|
### 2. Create a New Space on Hugging Face
|
|
|
1. Go to [Hugging Face Spaces](https://huggingface.co/spaces).
|
|
|
2. Click **Create new Space**.
|
|
|
3. Fill in:
|
|
|
- **Space name**: acceptin (or your choice)
|
|
|
- **SDK**: Streamlit
|
|
|
- **Hardware**: CPU basic (free)
|
|
|
- **Visibility**: Public or Private
|
|
|
4. Click **Create Space**.
|
|
|
|
|
|
### 3. Prepare Your Files
|
|
|
- **requirements.txt**: List all dependencies (see below for example).
|
|
|
- **README.md**: This file, with the YAML header above.
|
|
|
- **Model File**: Place `telecom_classifier.pth` in a `models/` folder. If >10MB, use Git LFS.
|
|
|
|
|
|
#### Example requirements.txt
|
|
|
```
|
|
|
streamlit==1.31.0
|
|
|
torch==2.2.0
|
|
|
torchvision==0.17.0
|
|
|
Pillow==10.2.0
|
|
|
numpy==1.26.0
|
|
|
timm==0.9.12
|
|
|
opencv-python-headless==4.8.1.78
|
|
|
plotly==5.18.0
|
|
|
pandas==2.2.0
|
|
|
scikit-learn==1.4.0
|
|
|
matplotlib==3.8.0
|
|
|
seaborn==0.13.0
|
|
|
tqdm==4.66.0
|
|
|
```
|
|
|
|
|
|
### 4. (If Needed) Set Up Git LFS for Large Files
|
|
|
If your model file is large:
|
|
|
```bash
|
|
|
git lfs install
|
|
|
git lfs track "*.pth"
|
|
|
git add .gitattributes
|
|
|
```
|
|
|
|
|
|
### 5. Upload Your Files to the Space
|
|
|
**A. Web Interface**
|
|
|
- Go to your Space on Hugging Face.
|
|
|
- Click the **Files** tab.
|
|
|
- Upload all files and folders (`app.py`, `requirements.txt`, `README.md`, `models/`, `utils/`, etc.).
|
|
|
|
|
|
**B. Git Method (Recommended)**
|
|
|
```bash
|
|
|
git clone https://huggingface.co/spaces/YOUR_USERNAME/acceptin
|
|
|
cd acceptin
|
|
|
# Copy your files into this directory
|
|
|
# If using Git LFS:
|
|
|
git lfs install
|
|
|
git lfs track "*.pth"
|
|
|
git add .gitattributes
|
|
|
git add .
|
|
|
git commit -m "Initial ACCEPTIN deployment"
|
|
|
git push
|
|
|
```
|
|
|
|
|
|
### 6. Wait for Build & Test
|
|
|
- Hugging Face will automatically build your Space.
|
|
|
- Wait for the build to finish (watch the logs for errors).
|
|
|
- Test your app in the browser.
|
|
|
|
|
|
### 7. Troubleshooting
|
|
|
- If you see errors, check the build logs.
|
|
|
- Make sure all dependencies are in `requirements.txt`.
|
|
|
- Ensure your model path in `app.py` matches the uploaded file location.
|
|
|
|
|
|
### 8. Share Your Space
|
|
|
- Once working, share your Space URL (e.g., `https://huggingface.co/spaces/YOUR_USERNAME/acceptin`).
|
|
|
|
|
|
---
|
|
|
|
|
|
## ποΈ Technical Overview
|
|
|
- **Model**: ConvNeXt Large (197M parameters, transfer learning from food detection)
|
|
|
- **Task**: Binary classification (good/bad telecom site)
|
|
|
- **App**: Streamlit web interface
|
|
|
- **Data**: Images of telecom sites, labeled as good or bad
|
|
|
- **Deployment**: Hugging Face Spaces (Streamlit SDK)
|
|
|
|
|
|
## π Features
|
|
|
- Upload telecom site images for instant quality assessment
|
|
|
- Visual confidence scores and inspection breakdown
|
|
|
- Modern, responsive UI
|
|
|
|
|
|
## π Model Performance
|
|
|
- **Validation Accuracy**: ~94%
|
|
|
- **Model Size**: ~750MB
|
|
|
|
|
|
## π Data Requirements
|
|
|
- Images of telecom sites (good/bad)
|
|
|
- Recommended: 100+ images per class
|
|
|
|
|
|
---
|
|
|
|
|
|
**For more details, see the in-app documentation or contact the author.** |