import streamlit as st from transformers import pipeline, AutoTokenizer base="Helsinki-NLP/opus-mt-en-zh" model="edwinlaw/opus-mt-cantonese-v2" tokenizer = AutoTokenizer.from_pretrained(base) def translate(text, src_lang, tgt_lang): translator = pipeline( "translation", model=model, tokenizer=tokenizer, src_lang=src_lang, tgt_lang=tgt_lang, ) translated_text = translator(text) return translated_text st.title("💬 Translate English into Cantonese:") st.markdown( """ This translation engine is a fine-tuned version of the [Helsinki-NLP/opus-mt-en-zh](https://huggingface.co/Helsinki-NLP/opus-mt-en-zh) model, initially designed for translating English to Mandarin Chinese. This [fine-tuned model](https://huggingface.co/edwinlaw/opus-mt-cantonese-v2) has been trained using 6000+ Cantonese sentences along with their English translations. Translations generated are intended for experimental use only. Correctness is not guaranteed. Proceed at your own risk. """) st.subheader('Enter a simple English sentence here:') prompt = st.text_input('') if prompt: translation = translate(prompt, 'en', 'yue') translated_txt = translation[0]['translation_text'] st.write(translated_txt) with st.expander('Chat History'): st.info(translated_txt)