Spaces:
Sleeping
Sleeping
| """FLORES-200 language codes supported by NLLB-200, mapped to readable names. | |
| Each code is `<iso639-3>_<script>` (e.g. ``kor_Hang``). This is the full set of | |
| languages the NLLB-200 model can translate between. | |
| """ | |
| # code -> human-readable English display name | |
| LANGUAGES: dict[str, str] = { | |
| "ace_Arab": "Acehnese (Arabic)", | |
| "ace_Latn": "Acehnese (Latin)", | |
| "acm_Arab": "Mesopotamian Arabic", | |
| "acq_Arab": "Ta'izzi-Adeni Arabic", | |
| "aeb_Arab": "Tunisian Arabic", | |
| "afr_Latn": "Afrikaans", | |
| "ajp_Arab": "South Levantine Arabic", | |
| "aka_Latn": "Akan", | |
| "amh_Ethi": "Amharic", | |
| "apc_Arab": "North Levantine Arabic", | |
| "arb_Arab": "Modern Standard Arabic", | |
| "arb_Latn": "Modern Standard Arabic (Latin)", | |
| "ars_Arab": "Najdi Arabic", | |
| "ary_Arab": "Moroccan Arabic", | |
| "arz_Arab": "Egyptian Arabic", | |
| "asm_Beng": "Assamese", | |
| "ast_Latn": "Asturian", | |
| "awa_Deva": "Awadhi", | |
| "ayr_Latn": "Central Aymara", | |
| "azb_Arab": "South Azerbaijani", | |
| "azj_Latn": "North Azerbaijani", | |
| "bak_Cyrl": "Bashkir", | |
| "bam_Latn": "Bambara", | |
| "ban_Latn": "Balinese", | |
| "bel_Cyrl": "Belarusian", | |
| "bem_Latn": "Bemba", | |
| "ben_Beng": "Bengali", | |
| "bho_Deva": "Bhojpuri", | |
| "bjn_Arab": "Banjar (Arabic)", | |
| "bjn_Latn": "Banjar (Latin)", | |
| "bod_Tibt": "Standard Tibetan", | |
| "bos_Latn": "Bosnian", | |
| "bug_Latn": "Buginese", | |
| "bul_Cyrl": "Bulgarian", | |
| "cat_Latn": "Catalan", | |
| "ceb_Latn": "Cebuano", | |
| "ces_Latn": "Czech", | |
| "cjk_Latn": "Chokwe", | |
| "ckb_Arab": "Central Kurdish", | |
| "crh_Latn": "Crimean Tatar", | |
| "cym_Latn": "Welsh", | |
| "dan_Latn": "Danish", | |
| "deu_Latn": "German", | |
| "dik_Latn": "Southwestern Dinka", | |
| "dyu_Latn": "Dyula", | |
| "dzo_Tibt": "Dzongkha", | |
| "ell_Grek": "Greek", | |
| "eng_Latn": "English", | |
| "epo_Latn": "Esperanto", | |
| "est_Latn": "Estonian", | |
| "eus_Latn": "Basque", | |
| "ewe_Latn": "Ewe", | |
| "fao_Latn": "Faroese", | |
| "pes_Arab": "Western Persian", | |
| "fij_Latn": "Fijian", | |
| "fin_Latn": "Finnish", | |
| "fon_Latn": "Fon", | |
| "fra_Latn": "French", | |
| "fur_Latn": "Friulian", | |
| "fuv_Latn": "Nigerian Fulfulde", | |
| "gla_Latn": "Scottish Gaelic", | |
| "gle_Latn": "Irish", | |
| "glg_Latn": "Galician", | |
| "grn_Latn": "Guarani", | |
| "guj_Gujr": "Gujarati", | |
| "hat_Latn": "Haitian Creole", | |
| "hau_Latn": "Hausa", | |
| "heb_Hebr": "Hebrew", | |
| "hin_Deva": "Hindi", | |
| "hne_Deva": "Chhattisgarhi", | |
| "hrv_Latn": "Croatian", | |
| "hun_Latn": "Hungarian", | |
| "hye_Armn": "Armenian", | |
| "ibo_Latn": "Igbo", | |
| "ilo_Latn": "Ilocano", | |
| "ind_Latn": "Indonesian", | |
| "isl_Latn": "Icelandic", | |
| "ita_Latn": "Italian", | |
| "jav_Latn": "Javanese", | |
| "jpn_Jpan": "Japanese", | |
| "kab_Latn": "Kabyle", | |
| "kac_Latn": "Jingpho", | |
| "kam_Latn": "Kamba", | |
| "kan_Knda": "Kannada", | |
| "kas_Arab": "Kashmiri (Arabic)", | |
| "kas_Deva": "Kashmiri (Devanagari)", | |
| "kat_Geor": "Georgian", | |
| "knc_Arab": "Central Kanuri (Arabic)", | |
| "knc_Latn": "Central Kanuri (Latin)", | |
| "kaz_Cyrl": "Kazakh", | |
| "kbp_Latn": "Kabiye", | |
| "kea_Latn": "Kabuverdianu", | |
| "khm_Khmr": "Khmer", | |
| "kik_Latn": "Kikuyu", | |
| "kin_Latn": "Kinyarwanda", | |
| "kir_Cyrl": "Kyrgyz", | |
| "kmb_Latn": "Kimbundu", | |
| "kon_Latn": "Kikongo", | |
| "kor_Hang": "Korean", | |
| "kmr_Latn": "Northern Kurdish", | |
| "lao_Laoo": "Lao", | |
| "lvs_Latn": "Standard Latvian", | |
| "lij_Latn": "Ligurian", | |
| "lim_Latn": "Limburgish", | |
| "lin_Latn": "Lingala", | |
| "lit_Latn": "Lithuanian", | |
| "lmo_Latn": "Lombard", | |
| "ltg_Latn": "Latgalian", | |
| "ltz_Latn": "Luxembourgish", | |
| "lua_Latn": "Luba-Kasai", | |
| "lug_Latn": "Ganda", | |
| "luo_Latn": "Luo", | |
| "lus_Latn": "Mizo", | |
| "mag_Deva": "Magahi", | |
| "mai_Deva": "Maithili", | |
| "mal_Mlym": "Malayalam", | |
| "mar_Deva": "Marathi", | |
| "min_Latn": "Minangkabau", | |
| "mkd_Cyrl": "Macedonian", | |
| "plt_Latn": "Plateau Malagasy", | |
| "mlt_Latn": "Maltese", | |
| "mni_Beng": "Meitei (Bengali)", | |
| "khk_Cyrl": "Halh Mongolian", | |
| "mos_Latn": "Mossi", | |
| "mri_Latn": "Maori", | |
| "zsm_Latn": "Standard Malay", | |
| "mya_Mymr": "Burmese", | |
| "nld_Latn": "Dutch", | |
| "nno_Latn": "Norwegian Nynorsk", | |
| "nob_Latn": "Norwegian Bokmal", | |
| "npi_Deva": "Nepali", | |
| "nso_Latn": "Northern Sotho", | |
| "nus_Latn": "Nuer", | |
| "nya_Latn": "Nyanja", | |
| "oci_Latn": "Occitan", | |
| "gaz_Latn": "West Central Oromo", | |
| "ory_Orya": "Odia", | |
| "pag_Latn": "Pangasinan", | |
| "pan_Guru": "Eastern Panjabi", | |
| "pap_Latn": "Papiamento", | |
| "pol_Latn": "Polish", | |
| "por_Latn": "Portuguese", | |
| "prs_Arab": "Dari", | |
| "pbt_Arab": "Southern Pashto", | |
| "quy_Latn": "Ayacucho Quechua", | |
| "ron_Latn": "Romanian", | |
| "run_Latn": "Rundi", | |
| "rus_Cyrl": "Russian", | |
| "sag_Latn": "Sango", | |
| "san_Deva": "Sanskrit", | |
| "sat_Olck": "Santali", | |
| "scn_Latn": "Sicilian", | |
| "shn_Mymr": "Shan", | |
| "sin_Sinh": "Sinhala", | |
| "slk_Latn": "Slovak", | |
| "slv_Latn": "Slovenian", | |
| "smo_Latn": "Samoan", | |
| "sna_Latn": "Shona", | |
| "snd_Arab": "Sindhi", | |
| "som_Latn": "Somali", | |
| "sot_Latn": "Southern Sotho", | |
| "spa_Latn": "Spanish", | |
| "als_Latn": "Tosk Albanian", | |
| "srd_Latn": "Sardinian", | |
| "srp_Cyrl": "Serbian", | |
| "ssw_Latn": "Swati", | |
| "sun_Latn": "Sundanese", | |
| "swe_Latn": "Swedish", | |
| "swh_Latn": "Swahili", | |
| "szl_Latn": "Silesian", | |
| "tam_Taml": "Tamil", | |
| "tat_Cyrl": "Tatar", | |
| "tel_Telu": "Telugu", | |
| "tgk_Cyrl": "Tajik", | |
| "tgl_Latn": "Tagalog", | |
| "tha_Thai": "Thai", | |
| "tir_Ethi": "Tigrinya", | |
| "taq_Latn": "Tamasheq (Latin)", | |
| "taq_Tfng": "Tamasheq (Tifinagh)", | |
| "tpi_Latn": "Tok Pisin", | |
| "tsn_Latn": "Tswana", | |
| "tso_Latn": "Tsonga", | |
| "tuk_Latn": "Turkmen", | |
| "tum_Latn": "Tumbuka", | |
| "tur_Latn": "Turkish", | |
| "twi_Latn": "Twi", | |
| "tzm_Tfng": "Central Atlas Tamazight", | |
| "uig_Arab": "Uyghur", | |
| "ukr_Cyrl": "Ukrainian", | |
| "umb_Latn": "Umbundu", | |
| "urd_Arab": "Urdu", | |
| "uzn_Latn": "Northern Uzbek", | |
| "vec_Latn": "Venetian", | |
| "vie_Latn": "Vietnamese", | |
| "war_Latn": "Waray", | |
| "wol_Latn": "Wolof", | |
| "xho_Latn": "Xhosa", | |
| "ydd_Hebr": "Eastern Yiddish", | |
| "yor_Latn": "Yoruba", | |
| "yue_Hant": "Yue Chinese (Cantonese)", | |
| "zho_Hans": "Chinese (Simplified)", | |
| "zho_Hant": "Chinese (Traditional)", | |
| "zul_Latn": "Zulu", | |
| } | |
| def is_valid(code: str) -> bool: | |
| return code in LANGUAGES | |
| def name_for(code: str) -> str: | |
| """Human-readable name for a FLORES-200 code (used in API prompts).""" | |
| return LANGUAGES.get(code, code) | |
| def as_list() -> list[dict[str, str]]: | |
| """Return languages as a sorted list of {code, name} for the API.""" | |
| return [ | |
| {"code": code, "name": name} | |
| for code, name in sorted(LANGUAGES.items(), key=lambda kv: kv[1]) | |
| ] | |