Metadata-Version: 2.4
Name: raqeem
Version: 0.2.2
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Natural Language :: Arabic
Classifier: Programming Language :: Rust
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Topic :: Multimedia :: Sound/Audio :: Speech
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Summary: رقيم — the easy way to use Cohere's open Arabic speech-recognition model from Python.
Keywords: arabic,asr,speech-to-text,transcription,cohere
Home-Page: https://github.com/SufficientDaikon/raqeem
Author-email: Ahmed Taha <tahaa755@gmail.com>
License: Apache-2.0
Requires-Python: >=3.9
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: Changelog, https://github.com/SufficientDaikon/raqeem/blob/main/CHANGELOG.md
Project-URL: Homepage, https://github.com/SufficientDaikon/raqeem
Project-URL: Repository, https://github.com/SufficientDaikon/raqeem

# رقيم · raqeem

**The easy way to use Cohere's open Arabic speech-recognition model from Python.**

`raqeem` wraps
[`CohereLabs/cohere-transcribe-arabic-07-2026`](https://huggingface.co/CohereLabs/cohere-transcribe-arabic-07-2026)
— the most accurate open-source Arabic ASR model (dialects + Arabic/English
code-switching), Apache-2.0.

It is a **compiled Rust extension**, not a pure-Python wrapper: no `torch`, no model
weights, no subprocess. Inference is delegated to an endpoint you choose — Cohere's
hosted API, or your own vLLM.

```bash
pip install raqeem
```

```python
import raqeem

# Cohere hosted API (reads $COHERE_API_KEY)
t = raqeem.transcribe("voice_note.ogg", lang="ar")
print(t.text)              # verbatim, for humans
print(t.text_normalized)   # Arabic-folded, for parsing
print(t.to_dict())

# your own vLLM — the Cohere key is never sent to a self-hosted endpoint
t = raqeem.transcribe(
    "clip.wav",
    provider="openai",
    endpoint="http://localhost:8000/v1/audio/transcriptions",
)

# the Arabic normalizer on its own
raqeem.normalize_ar("الطماطم بـ ١٢٫٥ جنيه")   # 'الطماطم ب 12.5 جنيه'
```

`text_normalized` folds alef/hamza, taa-marbuta, strips tatweel and diacritics, and
converts Arabic-Indic and Persian digits to ASCII — note `١٢٫٥` becomes `12.5`, **one**
number rather than two, which matters if anything downstream parses prices or quantities.

Failures raise `raqeem.TranscriptionError`; a bad provider or a missing key/endpoint
raises `ValueError`.

Full docs, the CLI, and the roadmap (subtitles, diarization, more bindings):
**https://github.com/SufficientDaikon/raqeem**

All model accuracy credit belongs to Cohere Labs — this package is the ergonomics.
Apache-2.0.

