guidel's picture
Update app.py
758f1d9
#!pip install transformers # put transformers in the requirements.txt file
import gradio as gr
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM, pipeline
en_nl_tokenizer = AutoTokenizer.from_pretrained("Helsinki-NLP/opus-mt-en-nl")
en_nl_model = AutoModelForSeq2SeqLM.from_pretrained("Helsinki-NLP/opus-mt-en-nl")
#translation_pipeline = pipeline("text-classification", model=finbert_sentiment_prosus, tokenizer=finbert_sentiment_prosus_tokenizer)
en_nl_translator = pipeline("translation_en_to_nl", model = en_nl_model, tokenizer=en_nl_tokenizer) #might ignore "translation_en_to_nl"
#
#gr.Interface.load("models/Helsinki-NLP/opus-mt-en-nl").launch()
def translate(df):
#translate the input_text
for i in range(len(df['English'])):
input_string = str(df.loc[i, 'English'])
if input_string == '':
pass
else:
df.loc[i, 'Dutch'] = en_nl_translator(input_string)[0]['translation_text'] #extract from list, then take the value associated to key 'translation_text'
return df
input_df = gr.Dataframe(
headers=["English", "Dutch"],
datatype=["str", "str"],
row_count=5,
col_count=(2, "fixed"),
)
batch_translate = gr.Interface(
fn = translate,
inputs = input_df, #[input1, input2]
outputs = "dataframe",
description = "Hela menneke, fill in the left column with the English text you want to translate"
)
if __name__ == "__main__":
batch_translate.launch()