منصوبے کے بارے میں
Haqumei (薄明/拍命) ایک جاپانی Grapheme-to-Phoneme (G2P) لائبریری ہے جو Rust میں نافذ کی گئی ہے، جس میں Python bindings اور ایک کمانڈ لائن انٹرفیس موجود ہے۔ یہ جاپانی متن کو فونیم کی ترتیب میں تبدیل کرتا ہے، جو speech synthesis اور text-to-speech frontends کے لیے درست اور تفصیلی لسانی تجزیہ فراہم کرتی ہے۔
**بنیادی صلاحیتیں**
لائبریری کئی اہم APIs فراہم کرتی ہے:
- `g2p`: بنیادی متن سے فونیم میں تبدیلی
- `g2k`: متن سے کاتاکانا پڑھنے کی تبدیلی
- `g2p_prosody`: فونیم کی ترتیبیں جن میں prosodic علامات (پچ کا اتار چڑھاؤ، فقرے کی حدود، توقف) شامل ہوتی ہیں
- `g2p_mapping`: لفظ-فونیم میپنگ جس میں نامعلوم الفاظ کی پہچان شامل ہے
- `g2p_mapping_detailed`: تفصیلی میپنگ جس میں تقریر کا حصہ (part-of-speech) اور لہجے کی معلومات شامل ہیں
- `g2p_mapping_prosody`: ساختی میپنگ جس میں prosody، پچ، اور صرفیاتی معلومات شامل ہیں
- `g2p_candidates`: مبہم متن کے لیے متعدد پڑھنے کے امکانات
**درستگی**
Haqumei jsut-label بینچ مارک پر 0.83% فونیم خرابی کی شرح (PER) اور ROHAN پر 0.78% کاتاکانا خرابی کی شرح (KER) حاصل کرتی ہے، جو pyopenjtalk (1.31% PER, 5.02% KER) اور pyopenjtalk-plus (1.09% PER, 1.60% KER) سے بہتر کارکردگی ہے۔ درستگی میں بہتری pyopenjtalk-plus کی لغت اور تکنیکوں پر مبنی ہے۔
**خصوصیات**
- **لفظ-فونیم میپنگ**: الفاظ اور فونیم کے درمیان میپنگ فراہم کرتی ہے، جس میں نامعلوم الفاظ (`unk`) اور خالی جگہوں (`sp`) کی پہچان شامل ہے، جس سے ان پٹ متن سے معلومات کا کم سے کم نقصان ہوتا ہے۔
- **Prosody معلومات**: متعدد prosody فارمیٹس (Default, Prefix, Numeric) کی حمایت کرتی ہے جس میں پچ اونچی/نیچی، لہجے کے فقرے کی حدود، اور prosodic علامات شامل ہیں۔
- **Allophone حل**: موریک ناک (撥音) اور جیمینیٹ حروفِ صحیح (促音) کو مخصوص فونیم لیبلز کے ساتھ سنبھالتی ہے۔
- **نامعلوم الفاظ کے متبادل**: انگریزی الفاظ کے لیے haqumei-kanalizer کے ذریعے پڑھنے کا تخمینہ، کانجی کے لیے on'yomi fallback، اور صرف کاتاکانا الفاظ کے لیے لہجے کی اصلاح۔
- **Concurrency**: ملٹی تھریڈڈ G2P کارروائیوں کے لیے بیچ پروسیسنگ کے طریقے۔
- **اپنی مرضی کے اختیارات**: allophone لیبلز، یونیکوڈ نارملائزیشن، اور پڑھنے کے رویے کے لیے لچکدار ترتیب۔
- **اپنی مرضی کی لغات**: اپنی مرضی کی ایمبیڈڈ لغات کے ساتھ تعمیر کی حمایت۔
**تنصیب**
- Rust: `cargo add haqumei`
- Python: `pip install haqumei` (لینکس x86_64/aarch64، میک او ایس aarch64، ونڈوز x86_64 کے لیے پہلے سے تیار شدہ وہیل)
- CLI: `cargo install haqumei-cli`
**تکنیکی تفصیلات**
لائبریری صرفیاتی تجزیے کے لیے MeCab استعمال کرتی ہے اور HTS-format full-context label format کو وسعت دیتی ہے۔ یہ تعمیر کے دوران ایک لغت شامل کرتی ہے (جب تک کہ اپنی مرضی کی لغت فراہم نہ کی جائے، نیٹ ورک سے ڈاؤن لوڈ ہوتی ہے)۔ Python bindings پہلے سے تیار شدہ وہیل استعمال کرتے ہیں جن میں لغت شامل ہوتی ہے، جس سے تنصیب کے دوران نیٹ ورک تک رسائی کی ضرورت نہیں ہوتی۔
**لائسنس**
Apache-2.0
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.