印度语深层音译库

ai4bharat-transliteration的Python项目详细描述


AI4Bharat音译应用

Indic Deep Xlit发动机

印度次大陆主要语言的深层音译引擎。在

此软件包支持:

  1. Python库,用于从罗马文本到本地文本的音译(使用基于NN的模型)
  2. 用于与web应用程序交互的HTTP API

支持的语言

ISO 639 codeLanguage
bnBengali
gomKonkani Goan
guGujarati
hiHindi
knKannada
maiMaithili
mlMalayalam
mrMarathi
paPunjabi (Eastern)
sdSindhi (Western)
siSinhala
taTamil
teTelugu
urUrdu

使用

Python库

安装后,通过以下方式导入音译引擎:

from ai4bharat.transliteration import XlitEngine

示例1:使用单词音译

^{pr2}$

注:

  • beam_width增加了波束搜索的大小,提高了精确度,但增加了时间/计算。在
  • topk只返回指定数量的top结果。在

示例2:使用句子音译

e=XlitEngine("ta")out=e.translit_sentence("vanakkam ulagam !",beam_width=10)print(out)# output: {'ta': 'வணக்கம் உலகம் !'}

注:

  • 对于句子中的每个单词,只返回一个最上面的预测。在

示例3:使用多语言音译

e=XlitEngine(["ta","ml"])# leave empty or use "all" to load all available languages# e = XlitEngine("all)out=e.translit_word("amma",topk=5,beam_width=10)print(out)# {'ta': ['அம்மா', 'அம்ம', 'அம்மை', 'ஆம்மா', 'ம்மா'], 'ml': ['അമ്മ', 'എമ്മ', 'അമ', 'എഎമ്മ', 'അഎമ്മ']}out=e.translit_sentence("hello world",beam_width=10)print(out)# output: {'ta': 'ஹலோ வார்ல்ட்', 'ml': 'ഹലോ വേൾഡ്'}## Specify language name to get only specific language resultout=e.translit_word("amma",lang_code="ml",topk=5,beam_width=10)print(out)# output: ['അമ്മ', 'എമ്മ', 'അമ', 'എഎമ്മ', 'അഎമ്മ']

示例4:所有可用语言的音译

e=XlitEngine()out=e.translit_sentence("Hello World",beam_width=10)print(out)# {'bn': 'হেল ওয়ার্ল্ড', 'gu': 'હેલો વર્લ્ડ', 'hi': 'हेलो वर्ल्ड', 'kn': 'ಹೆಲ್ಲೊ ವರ್ಲ್ಡ್', 'gom': 'हॅलो वर्ल्ड', 'mai': 'हेल्लो वर्ल्ड', 'ml': 'ഹലോ വേൾഡ്', 'mr': 'हेलो वर्ल्ड', 'pa': 'ਹੇਲੋ ਵਰਲਡ', 'sd': 'هيلو ورلد', 'si': 'හිලෝ වර්ල්ඩ්', 'ta': 'ஹலோ வார்ல்ட்', 'te': 'హల్లో వరల్డ్', 'ur': 'ہیلو وارڈ'}

网络API

分三行运行烧瓶服务器:

fromai4bharat.transliterationimportxlit_serverapp,engine=xlit_server.get_app()app.run(debug=True,host='0.0.0.0',port=8000)

{您还可以按如下所示检查}

  1. api_expose.py中对SSL路径进行必要的修改。默认情况下,设置为本地主机,同时启用http和https。在

  2. 运行API公开代码: $ sudo env PATH=$PATH python3 api_expose.py (ExportGOOGLE_APPLICATION_CREDENTIALS如果需要,默认情况下,与Google云相关的功能被禁用。)

  3. 在浏览器(或)curl中,将链接用作http://{IP address}:{port}/tl/{lang id}/{wordin eng script} 如果启用调试模式的端口为8000,否则端口为80。在

示例:
http://localhost:80/tl/ta/amma
http://localhost:80/languages


发行说明

这个包包含围绕音译引擎构建的应用程序。此软件包的内容也可以从latest GitHub release下载,足以用于推理。在

Xlit-音译的所有NN模型(连同元数据)都是在[Creative Commons Attribution Sharelike4.0国际许可证][cc by sa]下授权的。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java检查整数是0还是检查变量是null更好?   java Android Kotlin(初学者)使用File(),并从ACTION\u GET\u内容返回Uri   java JavaFx在“内部场景”和根场景之间切换   spring将XMLBean配置转换为java配置   java JPA HIBERNATE映射列两次(embeddedID和POJO)   c#单态模式模型在什么情况下适用?   java请求。getRemoteUser在特定时间后返回null?   spring boot中PUT api控制器的java my单元测试用例失败   java在字符串中互换地解析和替换值   java Android JNI在应用程序中检测到错误:调用JNI GetMethodID时出现挂起异常   JavaSpringDataMongo:使用非简单键持久化映射   爪哇玻璃鱼连接被拒绝   java如何在用户注册时发送特定电子邮件id的自动回复?   Java列表:实例化时和之后的赋值之间的差异