| """Fix 11: Acronym/abbreviation expansion dictionary.""" |
|
|
| from __future__ import annotations |
|
|
| ACRONYM_EXPANSIONS: dict[str, str] = { |
| |
| "NATO": "Kuzey Atlantik Antlaşması Örgütü", |
| "UN": "Birleşmiş Milletler", |
| "UNESCO": "BM Eğitim, Bilim ve Kültür Örgütü", |
| "UNICEF": "BM Çocuklara Yardım Fonu", |
| "WHO": "Dünya Sağlık Örgütü", |
| "IMF": "Uluslararası Para Fonu", |
| "WTO": "Dünya Ticaret Örgütü", |
| "EU": "Avrupa Birliği", |
| "INTERPOL": "Uluslararası Kriminal Polis Örgütü", |
| "FIFA": "Uluslararası Futbol Federasyonları Birliği", |
| "IOC": "Uluslararası Olimpiyat Komitesi", |
| "UEFA": "Avrupa Futbol Birliği", |
| |
| "TBMM": "Türkiye Büyük Millet Meclisi", |
| "MEB": "Milli Eğitim Bakanlığı", |
| "TDK": "Türk Dil Kurumu", |
| "TTK": "Türk Tarih Kurumu", |
| "TCMB": "Türkiye Cumhuriyet Merkez Bankası", |
| "BDDK": "Bankacılık Düzenleme ve Denetleme Kurumu", |
| "SPK": "Sermaye Piyasası Kurulu", |
| "SGK": "Sosyal Güvenlik Kurumu", |
| "KDV": "Katma Değer Vergisi", |
| "ÖTV": "Özel Tüketim Vergisi", |
| "ÖSYM": "Ölçme, Seçme ve Yerleştirme Merkezi", |
| "YÖK": "Yükseköğretim Kurulu", |
| "TÜİK": "Türkiye İstatistik Kurumu", |
| "TÜBİTAK": "Türkiye Bilimsel ve Teknolojik Araştırma Kurumu", |
| "ASELSAN": "Askeri Elektronik Sanayii", |
| |
| "TUS": "Tıpta Uzmanlık Sınavı", |
| "DUS": "Diş Hekimliğinde Uzmanlık Sınavı", |
| "YDUS": "Yabancı Dil Uzmanlık Sınavı", |
| "KPSS": "Kamu Personeli Seçme Sınavı", |
| |
| "CMV": "Sitomegalovirüs", "EBV": "Epstein-Barr Virüsü", |
| "VZV": "Varisella-Zoster Virüsü", "HHV": "İnsan Herpes Virüsü", |
| "HSV": "Herpes Simplex Virüsü", "HIV": "İnsan İmmün Yetmezlik Virüsü", |
| "HBV": "Hepatit B Virüsü", "HCV": "Hepatit C Virüsü", |
| "RSV": "Respiratuar Sinsisyal Virüs", "HPV": "İnsan Papilloma Virüsü", |
| "HAV": "Hepatit A Virüsü", |
| "SLE": "Sistemik Lupus Eritematozus", |
| "COPD": "Kronik Obstrüktif Akciğer Hastalığı", |
| "DM": "Diabetes Mellitus", "HTN": "Hipertansiyon", |
| "MI": "Miyokard İnfarktüsü", "DVT": "Derin Ven Trombozu", |
| "PE": "Pulmoner Emboli", |
| "AML": "Akut Myeloid Lösemi", "CML": "Kronik Myeloid Lösemi", |
| "ALL": "Akut Lenfoblastik Lösemi", "CLL": "Kronik Lenfositik Lösemi", |
| "ECG": "Elektrokardiyogram", "EEG": "Elektroensefalogram", |
| "MRI": "Manyetik Rezonans Görüntüleme", |
| "CT": "Bilgisayarlı Tomografi", "USG": "Ultrasonografi", |
| "CBC": "Tam Kan Sayımı", |
| "INR": "Uluslararası Normalleştirilmiş Oran", |
| "LDL": "Düşük Yoğunluklu Lipoprotein", |
| "HDL": "Yüksek Yoğunluklu Lipoprotein", |
| "SMMM": "Serbest Muhasebeci Mali Müşavir", |
| "YMM": "Yeminli Mali Müşavir", |
| "SM": "Serbest Muhasebeci", |
| |
| "AI": "Yapay Zeka", "ML": "Makine Öğrenmesi", |
| "LLM": "Büyük Dil Modeli", "NLP": "Doğal Dil İşleme", |
| "API": "Uygulama Programlama Arayüzü", |
| "CPU": "Merkezi İşlem Birimi", "GPU": "Grafik İşlem Birimi", |
| "RAM": "Rastgele Erişim Belleği", |
| "SQL": "Yapılandırılmış Sorgu Dili", |
| "HTML": "HiperMetin İşaretleme Dili", |
| "CSS": "Basamaklı Stil Sayfaları", |
| "OS": "İşletim Sistemi", |
| "BERT": "Çift Yönlü Kodlayıcı Temsiller", |
| "GPT": "Üretici Önceden Eğitilmiş Dönüştürücü", |
| |
| "OPEC": "Petrol İhraç Eden Ülkeler Örgütü", |
| "NAFTA": "Kuzey Amerika Serbest Ticaret Anlaşması", |
| |
| "NBA": "Ulusal Basketbol Birliği", |
| "NFL": "Ulusal Futbol Ligi", |
| } |
|
|
|
|
| def reclassify_acronyms(tokens: list[dict]) -> list[dict]: |
| """Add ``_expansion`` field to known acronyms in the token stream.""" |
| result: list[dict] = [] |
| for tok in tokens: |
| if tok["type"] == "ROOT" and (tok.get("_acronym") or tok.get("_caps")): |
| expansion = ACRONYM_EXPANSIONS.get(tok["token"].strip().upper()) |
| if expansion: |
| result.append({**tok, "_expansion": expansion, "_known_acronym": True}) |
| continue |
| result.append(tok) |
| return result |
|
|