Logo Lanfrica

belkacemm/tamazight-corpus

Domaine:

natural language processing

Type de record:

software
Créateur:
bel
Hôte:
# Tamazight Corpus Framework A Python framework for creating, collecting, managing, validating, and storing speech corpora. The framework was initially developed for collecting **Tamazight/Kabyle speech data**, but it can also be used to create speech corpora for other languages. Each recording consists of: - WAV audio - Speaker - Transcript - Sample rate - Number of channels - Duration - Recording ID The framework provides both a **Python/CLI interface** and a **Flask web application**. For deployment, persistent storage can be provided by **Supabase Storage**, allowing the application to run on platforms such as Render without losing corpus data after a restart or redeployment. --- ## Features - Create corpus projects - Manage speakers - Record speech using a microphone - Upload existing WAV files - Enter and edit transcripts - Validate audio information - Automatically generate recording IDs - Store recording metadata - Store transcripts - Play recordings from the web application - Persistent cloud storage with Supabase - Local filesystem storage for development - Flask web interface - Command-line interface - Designed for low-resource language corpus collection --- # 1. Architecture The framework separates corpus-management logic from the storage system. ```text Tamazight Corpus Framework | +---------------+---------------+ | | Python / CLI Flask Web App | | +---------------+---------------+ | Project | +---------+---------+ | | Corpus Speakers | | Repository Repository | +------+------+ | | FileRepository SupabaseRepository | | Local disk Supabase Storage This design allows the same corpus framework to work with different storage backends. 2. Requirements Python Python 3.13 or newer is recommended. Check your Python version: python --version uv The project uses uv⁠� for Python environme …