File size: 1,721 Bytes
9c9173d 101bdf1 9c9173d 101bdf1 9c9173d 2b5061b 9c9173d 521cd8e 101bdf1 9c9173d c2bddc7 9c9173d 101bdf1 a335cd1 101bdf1 a335cd1 9c9173d a335cd1 9c9173d 101bdf1 9c9173d 101bdf1 d3643ed 721f1f6 101bdf1 9c9173d 101bdf1 521cd8e 101bdf1 9c9173d 101bdf1 521cd8e 9c9173d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
import gradio as gr
import requests
import json
import os
LANGUAGES = ['Akan', 'Arabic', ' Assamese', 'Bambara', 'Bengali', 'Catalan', 'English', 'Spanish', ' Basque', 'French', ' Gujarati', 'Hindi',
'Indonesian', 'Igbo', 'Kikuyu', 'Kannada', 'Ganda', 'Lingala', 'Malayalam', 'Marathi', 'Nepali', 'Chichewa', 'Oriya', 'Panjabi', 'Portuguese',
'Kirundi', 'Kinyarwanda', 'Shona', 'Sotho', 'Swahili', 'Tamil', 'Telugu', 'Tswana', 'Tsonga', 'Twi', 'Urdu', 'Viêt Namese', 'Wolof', 'Xhosa',
'Yoruba', 'Chinese', 'Zulu']
API_URL = "https://api-inference.huggingface.co/models/bigscience/mt0-xxl"
def translate(output, text):
"""Translate text from input language to output language"""
instruction = f"""Translatate to {output}: {text}\nTranslation: """
json_ = {
"inputs": instruction,
"parameters": {
"return_full_text": True,
"do_sample": False,
"max_new_tokens": 250,
},
"options": {
"use_cache": True,
"wait_for_model": True,
},
}
response = requests.request("POST", API_URL, json=json_)
output = response.json()[0]['generated_text']
return output.replace(instruction, '', 1)
demo = gr.Blocks()
with demo:
gr.Markdown("<h1><center>Translation with Bloom</center></h1>")
gr.Markdown("<center>Translation in many language with mt0-xxl</center>")
with gr.Row():
output_lang = gr.Dropdown(LANGUAGES, value='French', label='Select output language')
output_text = gr.Textbox(lines=6, label="Output")
buton = gr.Button("translate")
buton.click(translate, inputs=[output_lang, input_text], outputs=output_text)
demo.launch(enable_queue=True, debug=True)
|