# Helsinki-NLP/opus-mt-zh-en import gradio as gr from transformers import pipeline import os # def test(text): # return text # inputs=gr.TextArea(lines=10,label='请输入英文字段名',placeholder='以换行\\n为分隔符') # outputs=gr.TextArea(lines=10,label='转译结果') # interface = gr.Interface(fn=test, inputs=inputs, outputs=outputs) # interface.launch() # translator = pipeline("translation", model=os.path.join(os.getcwd(),"test-ml-trained"), max_time=5) # # list-list # def en2zh(EnNames): # pres=[] # for name in EnNames: # pre = translator(name[0].replace('_',' '), )[0]["translation_text"] # pres.append([pre]) # print(name,pre) # return pres # interface = gr.Interface(fn=en2zh, inputs="list", outputs="list") # interface.launch() translator = pipeline("translation", model=os.path.join(os.getcwd(),"test-ml-trained"), max_time=5) translator_1 = pipeline("translation", model=os.path.join(os.getcwd(),"test-ml-trained_1"), max_time=5) translator_2 = pipeline("translation", model=os.path.join(os.getcwd(),"test-ml-trained_2"), max_time=5) translator_3 = pipeline("translation", model=os.path.join(os.getcwd(),"test-ml-trained_3"), max_time=5) translator_4 = pipeline("translation", model=os.path.join(os.getcwd(),"test-ml-trained_4"), max_time=5) # text-text def en2zh(text): pres=[] enNames=text.split('\n') for name in enNames: pre = translator(name.replace('_',' '), )[0]["translation_text"] pre = pre+'\n'+ translator_1(name.replace('_',' '), )[0]["translation_text"] pre = pre+'\n'+ translator_2(name.replace('_',' '), )[0]["translation_text"] pre = pre+'\n'+ translator_3(name.replace('_',' '), )[0]["translation_text"] pre = pre+'\n'+ translator_4(name.replace('_',' '), )[0]["translation_text"] pres.append(pre) print(name,pre) return '\n\n'.join(pres) inputs=gr.TextArea(lines=10,label='请输入英文字段名(若输入多个,请用换行分隔)',placeholder='以换行\\n为分隔符') outputs=gr.TextArea(lines=10,label='参考转译结果') interface = gr.Interface(fn=en2zh, inputs=inputs, outputs=outputs) interface.launch()