accessible-mistral / conversion_iso639.py
ylacombe's picture
ylacombe HF staff
Create conversion_iso639.py
cfd37c9
# Language dict
language_code_to_name = {
"afr": "Afrikaans",
"amh": "Amharic",
"arb": "Modern Standard Arabic",
"ary": "Moroccan Arabic",
"arz": "Egyptian Arabic",
"asm": "Assamese",
"ast": "Asturian",
"azj": "North Azerbaijani",
"bel": "Belarusian",
"ben": "Bengali",
"bos": "Bosnian",
"bul": "Bulgarian",
"cat": "Catalan",
"ceb": "Cebuano",
"ces": "Czech",
"ckb": "Central Kurdish",
"cmn": "Mandarin Chinese",
"cym": "Welsh",
"dan": "Danish",
"deu": "German",
"ell": "Greek",
"eng": "English",
"est": "Estonian",
"eus": "Basque",
"fin": "Finnish",
"fra": "French",
"gaz": "West Central Oromo",
"gle": "Irish",
"glg": "Galician",
"guj": "Gujarati",
"heb": "Hebrew",
"hin": "Hindi",
"hrv": "Croatian",
"hun": "Hungarian",
"hye": "Armenian",
"ibo": "Igbo",
"ind": "Indonesian",
"isl": "Icelandic",
"ita": "Italian",
"jav": "Javanese",
"jpn": "Japanese",
"kam": "Kamba",
"kan": "Kannada",
"kat": "Georgian",
"kaz": "Kazakh",
"kea": "Kabuverdianu",
"khk": "Halh Mongolian",
"khm": "Khmer",
"kir": "Kyrgyz",
"kor": "Korean",
"lao": "Lao",
"lit": "Lithuanian",
"ltz": "Luxembourgish",
"lug": "Ganda",
"luo": "Luo",
"lvs": "Standard Latvian",
"mai": "Maithili",
"mal": "Malayalam",
"mar": "Marathi",
"mkd": "Macedonian",
"mlt": "Maltese",
"mni": "Meitei",
"mya": "Burmese",
"nld": "Dutch",
"nno": "Norwegian Nynorsk",
"nob": "Norwegian Bokm\u00e5l",
"npi": "Nepali",
"nya": "Nyanja",
"oci": "Occitan",
"ory": "Odia",
"pan": "Punjabi",
"pbt": "Southern Pashto",
"pes": "Western Persian",
"pol": "Polish",
"por": "Portuguese",
"ron": "Romanian",
"rus": "Russian",
"slk": "Slovak",
"slv": "Slovenian",
"sna": "Shona",
"snd": "Sindhi",
"som": "Somali",
"spa": "Spanish",
"srp": "Serbian",
"swe": "Swedish",
"swh": "Swahili",
"tam": "Tamil",
"tel": "Telugu",
"tgk": "Tajik",
"tgl": "Tagalog",
"tha": "Thai",
"tur": "Turkish",
"ukr": "Ukrainian",
"urd": "Urdu",
"uzn": "Northern Uzbek",
"vie": "Vietnamese",
"xho": "Xhosa",
"yor": "Yoruba",
"yue": "Cantonese",
"zlm": "Colloquial Malay",
"zsm": "Standard Malay",
"zul": "Zulu",
}
LANGUAGE_NAME_TO_CODE = {v: k for k, v in language_code_to_name.items()}
ISO_639_1_TO_3 = {
'aa': 'aar',
'ab': 'abk',
'ae': 'ave',
'af': 'afr',
'ak': 'aka',
'am': 'amh',
'an': 'arg',
'ar': 'ara',
'as': 'asm',
'av': 'ava',
'ay': 'aym',
'az': 'aze',
'ba': 'bak',
'be': 'bel',
'bg': 'bul',
'bi': 'bis',
'bm': 'bam',
'bn': 'ben',
'bo': 'bod',
'br': 'bre',
'bs': 'bos',
'ca': 'cat',
'ce': 'che',
'ch': 'cha',
'co': 'cos',
'cr': 'cre',
'cs': 'ces',
'cu': 'chu',
'cv': 'chv',
'cy': 'cym',
'da': 'dan',
'de': 'deu',
'dv': 'div',
'dz': 'dzo',
'ee': 'ewe',
'el': 'ell',
'en': 'eng',
'eo': 'epo',
'es': 'spa',
'et': 'est',
'eu': 'eus',
'fa': 'fas',
'ff': 'ful',
'fi': 'fin',
'fj': 'fij',
'fo': 'fao',
'fr': 'fra',
'fy': 'fry',
'ga': 'gle',
'gd': 'gla',
'gl': 'glg',
'gn': 'grn',
'gu': 'guj',
'gv': 'glv',
'ha': 'hau',
'he': 'heb',
'hi': 'hin',
'ho': 'hmo',
'hr': 'hrv',
'ht': 'hat',
'hu': 'hun',
'hy': 'hye',
'hz': 'her',
'ia': 'ina',
'id': 'ind',
'ie': 'ile',
'ig': 'ibo',
'ii': 'iii',
'ik': 'ipk',
'io': 'ido',
'is': 'isl',
'it': 'ita',
'iu': 'iku',
'ja': 'jpn',
'jv': 'jav',
'ka': 'kat',
'kg': 'kon',
'ki': 'kik',
'kj': 'kua',
'kk': 'kaz',
'kl': 'kal',
'km': 'khm',
'kn': 'kan',
'ko': 'kor',
'kr': 'kau',
'ks': 'kas',
'ku': 'kur',
'kv': 'kom',
'kw': 'cor',
'ky': 'kir',
'la': 'lat',
'lb': 'ltz',
'lg': 'lug',
'li': 'lim',
'ln': 'lin',
'lo': 'lao',
'lt': 'lit',
'lu': 'lub',
'lv': 'lav',
'mg': 'mlg',
'mh': 'mah',
'mi': 'mri',
'mk': 'mkd',
'ml': 'mal',
'mn': 'mon',
'mr': 'mar',
'ms': 'msa',
'mt': 'mlt',
'my': 'mya',
'na': 'nau',
'nb': 'nob',
'nd': 'nde',
'ne': 'nep',
'ng': 'ndo',
'nl': 'nld',
'nn': 'nno',
'no': 'nor',
'nr': 'nbl',
'nv': 'nav',
'ny': 'nya',
'oc': 'oci',
'oj': 'oji',
'om': 'orm',
'or': 'ori',
'os': 'oss',
'pa': 'pan',
'pi': 'pli',
'pl': 'pol',
'ps': 'pus',
'pt': 'por',
'qu': 'que',
'rm': 'roh',
'rn': 'run',
'ro': 'ron',
'ru': 'rus',
'rw': 'kin',
'sa': 'san',
'sc': 'srd',
'sd': 'snd',
'se': 'sme',
'sg': 'sag',
'sh': 'hbs',
'si': 'sin',
'sk': 'slk',
'sl': 'slv',
'sm': 'smo',
'sn': 'sna',
'so': 'som',
'sq': 'sqi',
'sr': 'srp',
'ss': 'ssw',
'st': 'sot',
'su': 'sun',
'sv': 'swe',
'sw': 'swa',
'ta': 'tam',
'te': 'tel',
'tg': 'tgk',
'th': 'tha',
'ti': 'tir',
'tk': 'tuk',
'tl': 'tgl',
'tn': 'tsn',
'to': 'ton',
'tr': 'tur',
'ts': 'tso',
'tt': 'tat',
'tw': 'twi',
'ty': 'tah',
'ug': 'uig',
'uk': 'ukr',
'ur': 'urd',
'uz': 'uzb',
've': 'ven',
'vi': 'vie',
'vo': 'vol',
'wa': 'wln',
'wo': 'wol',
'xh': 'xho',
'yi': 'yid',
'yo': 'yor',
'za': 'zha',
'zh': 'zho',
'zu': 'zul'}
iso639_3_to_1 = {
"aae": "sq",
"aao": "ar",
"aar": "aa",
"aat": "sq",
"abh": "ar",
"abk": "ab",
"abv": "ar",
"acm": "ar",
"acq": "ar",
"acw": "ar",
"acx": "ar",
"acy": "ar",
"adf": "ar",
"aeb": "ar",
"aec": "ar",
"afb": "ar",
"afr": "af",
"ajp": "ar",
"aka": "ak",
"aln": "sq",
"als": "sq",
"amh": "am",
"apc": "ar",
"apd": "ar",
"ara": "ar",
"arb": "ar",
"arg": "an",
"arq": "ar",
"ars": "ar",
"ary": "ar",
"arz": "ar",
"asm": "as",
"auz": "ar",
"ava": "av",
"ave": "ae",
"avl": "ar",
"ayc": "ar",
"ayh": "ar",
"ayl": "ar",
"aym": "ay",
"ayn": "ar",
"ayp": "ar",
"ayr": "ay",
"azb": "az",
"aze": "az",
"azj": "az",
"bak": "ba",
"bam": "bm",
"bbz": "ar",
"bel": "be",
"ben": "bn",
"bhr": "mg",
"bis": "bi",
"bjn": "ms",
"bmm": "mg",
"bod": "bo",
"bos": "sh",
"bre": "br",
"btj": "ms",
"bul": "bg",
"bve": "ms",
"bvu": "ms",
"bzc": "mg",
"cat": "ca",
"cdo": "zh",
"ces": "cs",
"cha": "ch",
"che": "ce",
"chu": "cu",
"chv": "cv",
"cjy": "zh",
"ckb": "ku",
"cmn": "zh",
"coa": "ms",
"cor": "kw",
"cos": "co",
"cpx": "zh",
"cre": "cr",
"crj": "cr",
"crk": "cr",
"crl": "cr",
"crm": "cr",
"csw": "cr",
"cwd": "cr",
"cym": "cy",
"czh": "zh",
"czo": "zh",
"dan": "da",
"deu": "de",
"div": "dv",
"dty": "ne",
"dup": "ms",
"dzo": "dz",
"ekk": "et",
"ell": "el",
"eng": "en",
"epo": "eo",
"esi": "ik",
"esk": "ik",
"est": "et",
"eus": "eu",
"ewe": "ee",
"fao": "fo",
"fas": "fa",
"fat": "ak",
"ffm": "ff",
"fij": "fj",
"fin": "fi",
"fra": "fr",
"fry": "fy",
"fub": "ff",
"fuc": "ff",
"fue": "ff",
"fuf": "ff",
"fuh": "ff",
"fui": "ff",
"ful": "ff",
"fuq": "ff",
"fuv": "ff",
"gan": "zh",
"gax": "om",
"gaz": "om",
"gla": "gd",
"gle": "ga",
"glg": "gl",
"glv": "gv",
"gnw": "gn",
"grn": "gn",
"gug": "gn",
"gui": "gn",
"guj": "gu",
"gun": "gn",
"hae": "om",
"hak": "zh",
"hat": "ht",
"hau": "ha",
"hbs": "sh",
"heb": "he",
"her": "hz",
"hin": "hi",
"hji": "ms",
"hmo": "ho",
"hrv": "hr",
"hsn": "zh",
"hun": "hu",
"hye": "hy",
"ibo": "ig",
"ido": "io",
"iii": "ii",
"ike": "iu",
"ikt": "iu",
"iku": "iu",
"ile": "ie",
"ina": "ia",
"ind": "ms",
"ipk": "ik",
"isl": "is",
"ita": "it",
"jak": "ms",
"jav": "jv",
"jax": "ms",
"jpn": "ja",
"kal": "kl",
"kan": "kn",
"kas": "ks",
"kat": "ka",
"kau": "kr",
"kaz": "kk",
"kby": "kr",
"khk": "mn",
"khm": "km",
"kik": "ki",
"kin": "rw",
"kir": "ky",
"kmr": "ku",
"knc": "kr",
"kng": "kg",
"koi": "kv",
"kom": "kv",
"kon": "kg",
"kor": "ko",
"kpv": "kv",
"krt": "kr",
"kua": "kj",
"kur": "ku",
"kvb": "ms",
"kvr": "ms",
"kwy": "kg",
"kxd": "ms",
"lao": "lo",
"lat": "la",
"lav": "lv",
"lce": "ms",
"lcf": "ms",
"ldi": "kg",
"lim": "li",
"lin": "ln",
"lit": "lt",
"liw": "ms",
"ltg": "lv",
"ltz": "lb",
"lub": "lu",
"lug": "lg",
"lvs": "lv",
"lzh": "zh",
"mah": "mh",
"mal": "ml",
"mar": "mr",
"max": "ms",
"meo": "ms",
"mfa": "ms",
"mfb": "ms",
"min": "ms",
"mkd": "mk",
"mlg": "mg",
"mlt": "mt",
"mnp": "zh",
"mon": "mn",
"mqg": "ms",
"mri": "mi",
"msa": "ms",
"msh": "mg",
"msi": "ms",
"mui": "ms",
"mvf": "mn",
"mya": "my",
"nan": "zh",
"nau": "na",
"nav": "nv",
"nbl": "nr",
"nde": "nd",
"ndo": "ng",
"nep": "ne",
"nhd": "gn",
"nld": "nl",
"nno": "no",
"nob": "no",
"nor": "no",
"npi": "ne",
"nya": "ny",
"oci": "oc",
"ojb": "oj",
"ojc": "oj",
"ojg": "oj",
"oji": "oj",
"ojs": "oj",
"ojw": "oj",
"orc": "om",
"ori": "or",
"orm": "om",
"orn": "ms",
"ors": "ms",
"ory": "or",
"oss": "os",
"otw": "oj",
"pan": "pa",
"pbt": "ps",
"pbu": "ps",
"pel": "ms",
"pes": "fa",
"pga": "ar",
"pli": "pi",
"plt": "mg",
"pol": "pl",
"por": "pt",
"prs": "fa",
"pse": "ms",
"pst": "ps",
"pus": "ps",
"qub": "qu",
"qud": "qu",
"que": "qu",
"quf": "qu",
"qug": "qu",
"quh": "qu",
"quk": "qu",
"qul": "qu",
"qup": "qu",
"qur": "qu",
"qus": "qu",
"quw": "qu",
"qux": "qu",
"quy": "qu",
"quz": "qu",
"qva": "qu",
"qvc": "qu",
"qve": "qu",
"qvh": "qu",
"qvi": "qu",
"qvj": "qu",
"qvl": "qu",
"qvm": "qu",
"qvn": "qu",
"qvo": "qu",
"qvp": "qu",
"qvs": "qu",
"qvw": "qu",
"qvz": "qu",
"qwa": "qu",
"qwc": "qu",
"qwh": "qu",
"qws": "qu",
"qxa": "qu",
"qxc": "qu",
"qxh": "qu",
"qxl": "qu",
"qxn": "qu",
"qxo": "qu",
"qxp": "qu",
"qxr": "qu",
"qxt": "qu",
"qxu": "qu",
"qxw": "qu",
"roh": "rm",
"ron": "ro",
"run": "rn",
"rus": "ru",
"sag": "sg",
"san": "sa",
"sdc": "sc",
"sdh": "ku",
"sdn": "sc",
"shu": "ar",
"sin": "si",
"skg": "mg",
"slk": "sk",
"slv": "sl",
"sme": "se",
"smo": "sm",
"sna": "sn",
"snd": "sd",
"som": "so",
"sot": "st",
"spa": "es",
"spv": "or",
"sqi": "sq",
"src": "sc",
"srd": "sc",
"sro": "sc",
"srp": "sh",
"ssh": "ar",
"ssw": "ss",
"sun": "su",
"swa": "sw",
"swc": "sw",
"swe": "sv",
"swh": "sw",
"tah": "ty",
"tam": "ta",
"tat": "tt",
"tdx": "mg",
"tel": "te",
"tgk": "tg",
"tgl": "tl",
"tha": "th",
"tir": "ti",
"tkg": "mg",
"tmw": "ms",
"ton": "to",
"tsn": "tn",
"tso": "ts",
"tuk": "tk",
"tur": "tr",
"twi": "ak",
"txy": "mg",
"uig": "ug",
"ukr": "uk",
"urd": "ur",
"urk": "ms",
"uzb": "uz",
"uzn": "uz",
"uzs": "uz",
"ven": "ve",
"vie": "vi",
"vkk": "ms",
"vkt": "ms",
"vol": "vo",
"vro": "et",
"wln": "wa",
"wol": "wo",
"wuu": "zh",
"xho": "xh",
"xmm": "ms",
"xmv": "mg",
"xmw": "mg",
"ydd": "yi",
"yid": "yi",
"yih": "yi",
"yor": "yo",
"yue": "zh",
"zch": "za",
"zeh": "za",
"zgb": "za",
"zgm": "za",
"zgn": "za",
"zha": "za",
"zhd": "za",
"zhn": "za",
"zho": "zh",
"zlj": "za",
"zlm": "ms",
"zln": "za",
"zlq": "za",
"zmi": "ms",
"zqe": "za",
"zsm": "ms",
"zul": "zu",
"zyb": "za",
"zyg": "za",
"zyj": "za",
"zyn": "za",
"zzj": "za"
}
LANGID_TO_ISO = ISO_639_1_TO_3 # {v: k for k, v in iso639_3_to_1.items()}
# Source langs: S2ST / S2TT / ASR don't need source lang
# T2TT / T2ST use this
text_source_language_codes = [
"afr",
"amh",
"arb",
"ary",
"arz",
"asm",
"azj",
"bel",
"ben",
"bos",
"bul",
"cat",
"ceb",
"ces",
"ckb",
"cmn",
"cym",
"dan",
"deu",
"ell",
"eng",
"est",
"eus",
"fin",
"fra",
"gaz",
"gle",
"glg",
"guj",
"heb",
"hin",
"hrv",
"hun",
"hye",
"ibo",
"ind",
"isl",
"ita",
"jav",
"jpn",
"kan",
"kat",
"kaz",
"khk",
"khm",
"kir",
"kor",
"lao",
"lit",
"lug",
"luo",
"lvs",
"mai",
"mal",
"mar",
"mkd",
"mlt",
"mni",
"mya",
"nld",
"nno",
"nob",
"npi",
"nya",
"ory",
"pan",
"pbt",
"pes",
"pol",
"por",
"ron",
"rus",
"slk",
"slv",
"sna",
"snd",
"som",
"spa",
"srp",
"swe",
"swh",
"tam",
"tel",
"tgk",
"tgl",
"tha",
"tur",
"ukr",
"urd",
"uzn",
"vie",
"yor",
"yue",
"zsm",
"zul",
]
TEXT_SOURCE_LANGUAGE_NAMES = sorted([language_code_to_name[code] for code in text_source_language_codes])