Logo Lanfrica

LeulTew/amharic-ir-improved

Domain:

natural language processing

Record type:

software
Creator:
Leu
Host:
# Amharic Information Retrieval System **Efficient and Intelligent Search for Amharic Text.** This project delivers a robust Information Retrieval (IR) system engineered specifically for the nuances of the Amharic language. Harnessing advanced text processing, smart indexing strategies, and sophisticated ranking, it provides accurate and rapid search across Amharic document corpora. Key features include AI-powered summarization and a user-friendly interface. ## ✨ Key Features * **Smart Amharic Stemming:** Hybrid stemming algorithm tailored for Amharic morphology ensuring accurate term matching. * **Hybrid Indexing:** Optimized inverted index for fast retrieval and efficient storage, incorporating title enhancement for improved relevance. * **Composite Ranking:** Combines TF-IDF, position bias, and term proximity for nuanced and effective document ranking. * **AI Summarization:** Integrated with Google Gemini AI to generate concise summaries for quick content understanding. * **Bilingual Interface (Amharic/English):** Accessible and user-friendly for both Amharic and English speakers. * **Corpus Ready:** Includes scripts for easy corpus generation from VOA Amharic and BBC Amharic news sources. * **Search History:** Conveniently access recent queries via browser-based search history. **➡️ Full Documentation Available Here** for in-depth details on architecture, algorithms, and evaluation. ## 🚀 Installation **Prerequisites:** * Python 3.8+ * ChromeDriver (ensure in your PATH) * Google Gemini API Key **Steps:** 1. **Clone the repository:** ```bash git clone cd amharic-ir-improved ``` 2. **(Optional) Create virtual environment:** ```bash python -m venv venv source venv/bin/activate # or venv\Scripts\activate on Windows ``` 3. **Install dependencies:** ```bash pip install -r requirements.txt ``` 4. **Set Environment Variables:** * **GEMINI_API_KEY:** Your Google Gemini API key (required for summarization). * **SECRET_KEY:** …