mBART-50模型gRPC封装

背景

事情是这样的,我搬砖的地方每个月都会代理几百上万的海外素材,因为涉及到语言问题都是需要英文转中文的也就是翻译。 翻译是需要成本,我们的做法是做一个中英文的映射关系这样能节约成本但是副作用是丢失语义。

调研后发现 huggingface 有两款机器学习的模型比较试用所以就尝试封装成了一个小的服务。

省流

  1. 仅简单的封装了层gRPC没有深入的调整参数
  2. 基于机器学习效率吃算力,效果看模型。(我是不粘锅)
  3. 效果一般没商业化的翻译精准

效果展示

介绍

facebook/mbart-large-50-one-to-many-mmt 可以将英语翻译成下面提到的其他49种语言。要翻译成目标语言,目标语言id必须作为第一个生成的令牌。要强制将目标语言id作为第一个生成的令牌,请将forced_bos_token_id参数传递给generate方法。

Arabic (ar_AR), Czech (cs_CZ), German (de_DE), English (en_XX), Spanish (es_XX), Estonian (et_EE), Finnish (fi_FI), French (fr_XX), Gujarati (gu_IN), Hindi (hi_IN), Italian (it_IT), Japanese (ja_XX), Kazakh (kk_KZ), Korean (ko_KR), Lithuanian (lt_LT), Latvian (lv_LV), Burmese (my_MM), Nepali (ne_NP), Dutch (nl_XX), Romanian (ro_RO), Russian (ru_RU), Sinhala (si_LK), Turkish (tr_TR), Vietnamese (vi_VN), Chinese (zh_CN), Afrikaans (af_ZA), Azerbaijani (az_AZ), Bengali (bn_IN), Persian (fa_IR), Hebrew (he_IL), Croatian (hr_HR), Indonesian (id_ID), Georgian (ka_GE), Khmer (km_KH), Macedonian (mk_MK), Malayalam (ml_IN), Mongolian (mn_MN), Marathi (mr_IN), Polish (pl_PL), Pashto (ps_AF), Portuguese (pt_XX), Swedish (sv_SE), Swahili (sw_KE), Tamil (ta_IN), Telugu (te_IN), Thai (th_TH), Tagalog (tl_XX), Ukrainian (uk_UA), Urdu (ur_PK), Xhosa (xh_ZA), Galician (gl_ES), Slovene (sl_SI)

项目仓库

quick_start_mbart-50

调用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
syntax = "proto3";

service MBARTLarge50 {
rpc InterpretE2C (EnglishRequest) returns (ChineseReply) {}
}

message EnglishRequest {
string message = 1;
}


message ChineseReply {
string message = 1;
}

  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!

请我喝杯咖啡吧~