Skip to content

Instantly share code, notes, and snippets.

@sshleifer
Created August 18, 2020 15:37
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sshleifer/e79fbbabe0fab3da519fd39edffee4d2 to your computer and use it in GitHub Desktop.
Save sshleifer/e79fbbabe0fab3da519fd39edffee4d2 to your computer and use it in GitHub Desktop.
Marian Multilingual Groups
# three letter code -> (group/language name, {constituents...}
# if this language is on the target side the constituents can be used as target language codes.
# if the language is on the source side they are supported natively without special codes.
{'aav': ('Austro-Asiatic languages',
{'hoc', 'hoc_Latn', 'kha', 'khm', 'khm_Latn', 'mnw', 'vie', 'vie_Hani'}),
'afa': ('Afro-Asiatic languages',
{'acm', 'afb', 'amh', 'apc', 'ara', 'arq', 'ary', 'arz', 'hau_Latn', 'heb', 'kab', 'mlt', 'rif_Latn', 'shy_Latn', 'som', 'thv', 'tir'}),
'afr': ('Afrikaans', {'afr'}),
'alv': ('Atlantic-Congo languages',
{'ewe', 'fuc', 'fuv', 'ibo', 'kin', 'lin', 'lug', 'nya', 'run', 'sag', 'sna', 'swh', 'toi_Latn', 'tso', 'umb', 'wol', 'xho', 'yor', 'zul'}),
'ara': ('Arabic',
{'afb', 'apc', 'apc_Latn', 'ara', 'ara_Latn', 'arq', 'arq_Latn', 'arz'}),
'art': ('Artificial languages',
{'afh_Latn', 'avk_Latn', 'dws_Latn', 'epo', 'ido', 'ido_Latn', 'ile_Latn', 'ina_Latn', 'jbo', 'jbo_Cyrl', 'jbo_Latn', 'ldn_Latn', 'lfn_Cyrl', 'lfn_Latn', 'nov_Latn', 'qya', 'qya_Latn', 'sjn_Latn', 'tlh_Latn', 'tzl', 'tzl_Latn', 'vol_Latn'}),
'aze': ('Azerbaijani', {'aze_Latn'}),
'bat': ('Baltic languages', {'lit', 'lav', 'prg_Latn', 'ltg', 'sgs'}),
'bel': ('Belarusian', {'bel', 'bel_Latn'}),
'ben': ('Bengali', {'ben'}),
'bnt': ('Bantu languages',
{'kin', 'lin', 'lug', 'nya', 'run', 'sna', 'swh', 'toi_Latn', 'tso', 'umb', 'xho', 'zul'}),
'bul': ('Bulgarian', {'bul', 'bul_Latn'}),
'cat': ('Catalan', {'cat'}),
'cau': ('Caucasian languages', {'abk', 'kat', 'che', 'ady'}),
'ccs': ('South Caucasian languages', {'kat'}),
'ceb': ('Cebuano', {'ceb'}),
'cel': ('Celtic languages', {'gla', 'gle', 'bre', 'cor', 'glv', 'cym'}),
'ces': ('Czech', {'ces'}),
'cpf': ('Creoles and pidgins, French‑based', {'gcf_Latn', 'hat', 'mfe'}),
'cpp': ('Creoles and pidgins, Portuguese-based',
{'zsm_Latn', 'ind', 'pap', 'min', 'tmw_Latn', 'max_Latn', 'zlm_Latn'}),
'cus': ('Cushitic languages', {'som'}),
'dan': ('Danish', {'dan'}),
'deu': ('German', {'deu'}),
'dra': ('Dravidian languages', {'tam', 'kan', 'mal', 'tel'}),
'ell': ('Modern Greek (1453-)', {'ell'}),
'eng': ('English', {'eng'}),
'epo': ('Esperanto', {'epo'}),
'est': ('Estonian', {'est'}),
'euq': ('Basque (family)', {'eus'}),
'eus': ('Basque', {'eus'}),
'fin': ('Finnish', {'fin'}),
'fiu': ('Finno-Ugrian languages',
{'est', 'fin', 'fkv_Latn', 'hun', 'izh', 'kpv', 'krl', 'liv_Latn', 'mdf', 'mhr', 'myv', 'sma', 'sme', 'udm', 'vep', 'vro'}),
'fra': ('French', {'fra'}),
'gem': ('Germanic languages',
{'afr', 'ang_Latn', 'dan', 'deu', 'eng', 'enm_Latn', 'fao', 'frr', 'fry', 'gos', 'got_Goth', 'gsw', 'isl', 'ksh', 'ltz', 'nds', 'nld', 'nno', 'nob', 'nob_Hebr', 'non_Latn', 'pdc', 'sco', 'stq', 'swe', 'swg', 'yid'}),
'gle': ('Irish', {'gle'}),
'glg': ('Galician', {'glg'}),
'gmq': ('North Germanic languages',
{'dan', 'nob', 'nob_Hebr', 'swe', 'isl', 'nno', 'non_Latn', 'fao'}),
'gmw': ('West Germanic languages',
{'afr', 'ang_Latn', 'deu', 'eng', 'enm_Latn', 'frr', 'fry', 'gos', 'gsw', 'ksh', 'ltz', 'nds', 'nld', 'pdc', 'sco', 'stq', 'swg', 'yid'}),
'grk': ('Greek languages', {'grc_Grek', 'ell'}),
'hbs': ('Serbo-Croatian', {'hrv', 'srp_Cyrl', 'bos_Latn', 'srp_Latn'}),
'heb': ('Hebrew', {'heb'}),
'hin': ('Hindi', {'hin'}),
'hun': ('Hungarian', {'hun'}),
'hye': ('Armenian', {'hye', 'hye_Latn'}),
'iir': ('Indo-Iranian languages',
{'asm', 'awa', 'ben', 'bho', 'gom', 'guj', 'hif_Latn', 'hin', 'jdt_Cyrl', 'kur_Arab', 'kur_Latn', 'mai', 'mar', 'npi', 'ori', 'oss', 'pan_Guru', 'pes', 'pes_Latn', 'pes_Thaa', 'pnb', 'pus', 'rom', 'san_Deva', 'sin', 'snd_Arab', 'tgk_Cyrl', 'tly_Latn', 'urd', 'zza'}),
'ilo': ('Iloko', {'ilo'}),
'inc': ('Indic languages',
{'asm', 'awa', 'ben', 'bho', 'gom', 'guj', 'hif_Latn', 'hin', 'mai', 'mar', 'npi', 'ori', 'pan_Guru', 'pnb', 'rom', 'san_Deva', 'sin', 'snd_Arab', 'urd'}),
'ine': ('Indo-European languages',
{'afr', 'afr_Arab', 'aln', 'ang_Latn', 'arg', 'asm', 'ast', 'awa', 'bel', 'bel_Latn', 'ben', 'bho', 'bjn', 'bos_Latn', 'bre', 'bul', 'bul_Latn', 'cat', 'ces', 'cor', 'cos', 'csb_Latn', 'cym', 'dan', 'deu', 'dsb', 'egl', 'ell', 'eng', 'enm_Latn', 'ext', 'fao', 'fra', 'frm_Latn', 'frr', 'fry', 'gcf_Latn', 'gla', 'gle', 'glg', 'glv', 'gom', 'gos', 'got_Goth', 'grc_Grek', 'gsw', 'guj', 'hat', 'hif_Latn', 'hin', 'hrv', 'hsb', 'hye', 'hye_Latn', 'ind', 'isl', 'ita', 'jdt_Cyrl', 'ksh', 'kur_Arab', 'kur_Latn', 'lad', 'lad_Latn', 'lat_Grek', 'lat_Latn', 'lav', 'lij', 'lit', 'lld_Latn', 'lmo', 'ltg', 'ltz', 'mai', 'mar', 'max_Latn', 'mfe', 'min', 'mkd', 'mwl', 'nds', 'nld', 'nno', 'nob', 'nob_Hebr', 'non_Latn', 'npi', 'oci', 'ori', 'orv_Cyrl', 'oss', 'pan_Guru', 'pap', 'pcd', 'pdc', 'pes', 'pes_Latn', 'pes_Thaa', 'pms', 'pnb', 'pol', 'por', 'prg_Latn', 'pus', 'roh', 'rom', 'ron', 'rue', 'rus', 'rus_Latn', 'san_Deva', 'scn', 'sco', 'sgs', 'sin', 'slv', 'snd_Arab', 'spa', 'sqi', 'srd', 'srp_Cyrl', 'srp_Latn', 'stq', 'swe', 'swg', 'tgk_Cyrl', 'tly_Latn', 'tmw_Latn', 'ukr', 'urd', 'vec', 'wln', 'yid', 'zlm_Latn', 'zsm_Latn', 'zza'}),
'isl': ('Icelandic', {'isl'}),
'ita': ('Italian', {'ita'}),
'itc': ('Italic languages',
{'arg', 'ast', 'bjn', 'cat', 'cos', 'egl', 'ext', 'fra', 'frm_Latn', 'gcf_Latn', 'glg', 'hat', 'ind', 'ita', 'lad', 'lad_Latn', 'lat_Grek', 'lat_Latn', 'lij', 'lld_Latn', 'lmo', 'max_Latn', 'mfe', 'min', 'mwl', 'oci', 'pap', 'pcd', 'pms', 'por', 'roh', 'ron', 'scn', 'spa', 'srd', 'tmw_Latn', 'vec', 'wln', 'zlm_Latn', 'zsm_Latn'}),
'jpn': ('Japanese',
{'jpn', 'jpn_Bopo', 'jpn_Hang', 'jpn_Hani', 'jpn_Hira', 'jpn_Kana', 'jpn_Latn', 'jpn_Yiii'}),
'jpx': ('Japanese (family)', {'jpn'}),
'kat': ('Georgian', {'kat'}),
'kor': ('Korean', {'kor_Hani', 'kor_Hang', 'kor_Latn', 'kor'}),
'lav': ('Latvian', {'lav'}),
'lit': ('Lithuanian', {'lit'}),
'mkd': ('Macedonian', {'mkd'}),
'mkh': ('Mon-Khmer languages',
{'vie_Hani', 'mnw', 'vie', 'kha', 'khm_Latn', 'khm'}),
'msa': ('Malay (macrolanguage)',
{'zsm_Latn', 'ind', 'max_Latn', 'zlm_Latn', 'min'}),
'mul': ('Multiple languages',
{'abk', 'acm', 'ady', 'afb', 'afh_Latn', 'afr', 'akl_Latn', 'aln', 'amh', 'ang_Latn', 'apc', 'ara', 'arg', 'arq', 'ary', 'arz', 'asm', 'ast', 'avk_Latn', 'awa', 'aze_Latn', 'bak', 'bam_Latn', 'bel', 'bel_Latn', 'ben', 'bho', 'bod', 'bos_Latn', 'bre', 'brx', 'brx_Latn', 'bul', 'bul_Latn', 'cat', 'ceb', 'ces', 'cha', 'che', 'chr', 'chv', 'cjy_Hans', 'cjy_Hant', 'cmn', 'cmn_Hans', 'cmn_Hant', 'cor', 'cos', 'crh', 'crh_Latn', 'csb_Latn', 'cym', 'dan', 'deu', 'dsb', 'dtp', 'dws_Latn', 'egl', 'ell', 'enm_Latn', 'epo', 'est', 'eus', 'ewe', 'ext', 'fao', 'fij', 'fin', 'fkv_Latn', 'fra', 'frm_Latn', 'frr', 'fry', 'fuc', 'fuv', 'gan', 'gcf_Latn', 'gil', 'gla', 'gle', 'glg', 'glv', 'gom', 'gos', 'got_Goth', 'grc_Grek', 'grn', 'gsw', 'guj', 'hat', 'hau_Latn', 'haw', 'heb', 'hif_Latn', 'hil', 'hin', 'hnj_Latn', 'hoc', 'hoc_Latn', 'hrv', 'hsb', 'hun', 'hye', 'iba', 'ibo', 'ido', 'ido_Latn', 'ike_Latn', 'ile_Latn', 'ilo', 'ina_Latn', 'ind', 'isl', 'ita', 'izh', 'jav', 'jav_Java', 'jbo', 'jbo_Cyrl', 'jbo_Latn', 'jdt_Cyrl', 'jpn', 'kab', 'kal', 'kan', 'kat', 'kaz_Cyrl', 'kaz_Latn', 'kek_Latn', 'kha', 'khm', 'khm_Latn', 'kin', 'kir_Cyrl', 'kjh', 'kpv', 'krl', 'ksh', 'kum', 'kur_Arab', 'kur_Latn', 'lad', 'lad_Latn', 'lao', 'lat_Latn', 'lav', 'ldn_Latn', 'lfn_Cyrl', 'lfn_Latn', 'lij', 'lin', 'lit', 'liv_Latn', 'lkt', 'lld_Latn', 'lmo', 'ltg', 'ltz', 'lug', 'lzh', 'lzh_Hans', 'mad', 'mah', 'mai', 'mal', 'mar', 'max_Latn', 'mdf', 'mfe', 'mhr', 'mic', 'min', 'mkd', 'mlg', 'mlt', 'mnw', 'moh', 'mon', 'mri', 'mwl', 'mww', 'mya', 'myv', 'nan', 'nau', 'nav', 'nds', 'niu', 'nld', 'nno', 'nob', 'nob_Hebr', 'nog', 'non_Latn', 'nov_Latn', 'npi', 'nya', 'oci', 'ori', 'orv_Cyrl', 'oss', 'ota_Arab', 'ota_Latn', 'pag', 'pan_Guru', 'pap', 'pau', 'pdc', 'pes', 'pes_Latn', 'pes_Thaa', 'pms', 'pnb', 'pol', 'por', 'ppl_Latn', 'prg_Latn', 'pus', 'quc', 'qya', 'qya_Latn', 'rap', 'rif_Latn', 'roh', 'rom', 'ron', 'rue', 'run', 'rus', 'sag', 'sah', 'san_Deva', 'scn', 'sco', 'sgs', 'shs_Latn', 'shy_Latn', 'sin', 'sjn_Latn', 'slv', 'sma', 'sme', 'smo', 'sna', 'snd_Arab', 'som', 'spa', 'sqi', 'srp_Cyrl', 'srp_Latn', 'stq', 'sun', 'swe', 'swg', 'swh', 'tah', 'tam', 'tat', 'tat_Arab', 'tat_Latn', 'tel', 'tet', 'tgk_Cyrl', 'tha', 'tir', 'tlh_Latn', 'tly_Latn', 'tmw_Latn', 'toi_Latn', 'ton', 'tpw_Latn', 'tso', 'tuk', 'tuk_Latn', 'tur', 'tvl', 'tyv', 'tzl', 'tzl_Latn', 'udm', 'uig_Arab', 'uig_Cyrl', 'ukr', 'umb', 'urd', 'uzb_Cyrl', 'uzb_Latn', 'vec', 'vie', 'vie_Hani', 'vol_Latn', 'vro', 'war', 'wln', 'wol', 'wuu', 'xal', 'xho', 'yid', 'yor', 'yue', 'yue_Hans', 'yue_Hant', 'zho', 'zho_Hans', 'zho_Hant', 'zlm_Latn', 'zsm_Latn', 'zul', 'zza'}),
'nic': ('Niger-Kordofanian languages',
{'bam_Latn', 'ewe', 'fuc', 'fuv', 'ibo', 'kin', 'lin', 'lug', 'nya', 'run', 'sag', 'sna', 'swh', 'toi_Latn', 'tso', 'umb', 'wol', 'xho', 'yor', 'zul'}),
'nld': ('Dutch', {'nld'}),
'nor': ('Norwegian', {'nob', 'nno'}),
'phi': ('Philippine languages',
{'ilo', 'akl_Latn', 'war', 'hil', 'pag', 'ceb'}),
'pol': ('Polish', {'pol'}),
'por': ('Portuguese', {'por'}),
'pqe': ('Eastern Malayo-Polynesian languages',
{'fij', 'gil', 'haw', 'mah', 'mri', 'nau', 'niu', 'rap', 'smo', 'tah', 'ton', 'tvl'}),
'roa': ('Romance languages',
{'arg', 'ast', 'cat', 'cos', 'egl', 'ext', 'fra', 'frm_Latn', 'gcf_Latn', 'glg', 'hat', 'ind', 'ita', 'lad', 'lad_Latn', 'lij', 'lld_Latn', 'lmo', 'max_Latn', 'mfe', 'min', 'mwl', 'oci', 'pap', 'pms', 'por', 'roh', 'ron', 'scn', 'spa', 'tmw_Latn', 'vec', 'wln', 'zlm_Latn', 'zsm_Latn'}),
'ron': ('Romanian', {'ron'}),
'run': ('Rundi', {'run'}),
'rus': ('Russian', {'rus'}),
'sal': ('Salishan languages', {'shs_Latn'}),
'sem': ('Semitic languages',
{'acm', 'afb', 'amh', 'apc', 'ara', 'arq', 'ary', 'arz', 'heb', 'mlt', 'tir'}),
'sla': ('Slavic languages',
{'bel', 'bel_Latn', 'bos_Latn', 'bul', 'bul_Latn', 'ces', 'csb_Latn', 'dsb', 'hrv', 'hsb', 'mkd', 'orv_Cyrl', 'pol', 'rue', 'rus', 'slv', 'srp_Cyrl', 'srp_Latn', 'ukr'}),
'slv': ('Slovenian', {'slv'}),
'spa': ('Spanish', {'spa'}),
'swe': ('Swedish', {'swe'}),
'taw': ('Tai', {'lao', 'tha'}),
'tgl': ('Tagalog', {'tgl_Latn'}),
'tha': ('Thai', {'tha'}),
'trk': ('Turkic languages',
{'aze_Latn', 'bak', 'chv', 'crh', 'crh_Latn', 'kaz_Cyrl', 'kaz_Latn', 'kir_Cyrl', 'kjh', 'kum', 'ota_Arab', 'ota_Latn', 'sah', 'tat', 'tat_Arab', 'tat_Latn', 'tuk', 'tuk_Latn', 'tur', 'tyv', 'uig_Arab', 'uig_Cyrl', 'uzb_Cyrl', 'uzb_Latn'}),
'tur': ('Turkish', {'tur'}),
'ukr': ('Ukrainian', {'ukr'}),
'urd': ('Urdu', {'urd'}),
'urj': ('Uralic languages',
{'est', 'fin', 'fkv_Latn', 'hun', 'izh', 'kpv', 'krl', 'liv_Latn', 'mdf', 'mhr', 'myv', 'sma', 'sme', 'udm', 'vep', 'vro'}),
'vie': ('Vietnamese', {'vie', 'vie_Hani'}),
'war': ('Waray (Philippines)', {'war'}),
'zho': ('Chinese',
{'cjy_Hans', 'cjy_Hant', 'cmn', 'cmn_Bopo', 'cmn_Hang', 'cmn_Hani', 'cmn_Hans', 'cmn_Hant', 'cmn_Hira', 'cmn_Kana', 'cmn_Latn', 'cmn_Yiii', 'gan', 'hak_Hani', 'lzh', 'lzh_Bopo', 'lzh_Hang', 'lzh_Hani', 'lzh_Hans', 'lzh_Hira', 'lzh_Kana', 'lzh_Yiii', 'nan', 'nan_Hani', 'wuu', 'wuu_Bopo', 'wuu_Hani', 'wuu_Latn', 'yue', 'yue_Bopo', 'yue_Hang', 'yue_Hani', 'yue_Hans', 'yue_Hant', 'yue_Hira', 'yue_Kana', 'zho', 'zho_Hans', 'zho_Hant'}),
'zle': ('East Slavic languages',
{'bel', 'orv_Cyrl', 'bel_Latn', 'rus', 'ukr', 'rue'}),
'zls': ('South Slavic languages',
{'bos_Latn', 'bul', 'bul_Latn', 'hrv', 'mkd', 'slv', 'srp_Cyrl', 'srp_Latn'}),
'zlw': ('West Slavic languages', {'csb_Latn', 'dsb', 'hsb', 'pol', 'ces'})}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment