Logo Lanfrica

mekhlua/amharic-E-commerce-data-extractor

Domain:

natural language processing

Record type:

project
Creator:
mek
Host:
# Amharic E-commerce Data Extractor This repository is meant to support the development of a data ingestion and NER pipeline for Amharic e-commerce Telegram channels. The project is broken into several tasks corresponding to the lab assignment: 1. **Data Ingestion & Preprocessing** 2. **Labeling in CoNLL Format** 3. **Fine-tuning NER Model** 4. **Model Comparison & Selection** 5. **Model Interpretability** 6. **Vendor Scorecard and Analytics** --- ## Project Structure (suggested) ``` . ├── data/ # raw and processed data files │ ├── raw/ # scraped messages │ └── processed/ # cleaned/preprocessed dataset ├── notebooks/ # jupyter notebooks for experiments │ ├── 01-labeling.ipynb │ ├── 02-training.ipynb │ └── 03-analysis.ipynb ├── src/ # Python source code │ ├── telegram_scraper.py # scraping/ingestion code │ ├── preprocessing.py # text preprocessing utilities │ ├── labeling.py # CoNLL conversion tools │ ├── train.py # training script using HuggingFace │ ├── evaluate.py # evaluation/comparison logic │ ├── interpret.py # SHAP/LIME utilities │ └── vendor_score.py # vendor analytics engine ├── requirements.txt # Python dependencies └── README.md ``` ## Quick Start 1. **Set up Python environment** (e.g. `python -m venv .venv` and activate) 2. Install dependencies: ```sh pip install -r requirements.txt ``` 3. Follow the task instructions in respective notebooks or scripts. For example, to start ingestion run: ```sh python -m src.telegram_scraper ``` Raw messages will appear in `data/raw/messages.jsonl` and preprocessed records (with normalized text and tokens) will be written to `data/preprocessed/messages.jsonl`. ## Task Guidance Each task in the user request corresponds to a section below: ### Task 1: Data Ingestion and Preprocessing - Identify at least five Ethiopian e-commerce Telegram channels, e.g. channels selli …