Spaces:
Sleeping
Sleeping
import streamlit as st | |
from transformers import AutoTokenizer, AutoModelForCausalLM | |
import warnings | |
warnings.simplefilter("ignore") | |
tokenizer = AutoTokenizer.from_pretrained("Unbabel/TowerBase-13B-v0.1") | |
model = AutoModelForCausalLM.from_pretrained("Unbabel/TowerBase-13B-v0.1", device_map="auto", load_in_4bit=True) | |
languages = ["English", "Spanish", "Vietnamese", "French", "Portuguese"] | |
def translate_text(source_lang, target_lang, text): | |
input_text = f"{source_lang}: {text}\n{target_lang}:" | |
inputs = tokenizer(input_text, return_tensors="pt") | |
outputs = model.generate(**inputs, max_new_tokens=20) | |
translated_text = tokenizer.decode(outputs[0], skip_special_tokens=True) | |
return translated_text | |
def main(): | |
st.title("Language Translator") | |
source_lang = st.selectbox("Choose source language:", languages) | |
target_lang = st.selectbox("Choose target language:", languages) | |
text = st.text_area(f"Enter text in {source_lang}:", "") | |
if st.button("Translate"): | |
translated_text = translate_text(source_lang, target_lang, text) | |
st.text_area(f"Translation in {target_lang}:", translated_text) | |
if __name__ == "__main__": | |
main() | |