first submit
Browse files- README.md +3 -3
- app.py +39 -0
- requirements.txt +4 -0
README.md
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
---
|
2 |
-
title:
|
3 |
-
emoji:
|
4 |
colorFrom: blue
|
5 |
-
colorTo:
|
6 |
sdk: streamlit
|
7 |
sdk_version: 1.9.0
|
8 |
app_file: app.py
|
|
|
1 |
---
|
2 |
+
title: Nynorsk
|
3 |
+
emoji: 🌖
|
4 |
colorFrom: blue
|
5 |
+
colorTo: gray
|
6 |
sdk: streamlit
|
7 |
sdk_version: 1.9.0
|
8 |
app_file: app.py
|
app.py
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import streamlit as st
|
2 |
+
from transformers import T5ForConditionalGeneration, T5TokenizerFast, T5Config
|
3 |
+
|
4 |
+
@st.cache(allow_output_mutation=True, suppress_st_warning=True)
|
5 |
+
def load_model():
|
6 |
+
model_name = "north/demo-deuncaser-base"
|
7 |
+
config = T5Config.from_pretrained(model_name)
|
8 |
+
#Debug
|
9 |
+
#st.text(config)
|
10 |
+
#st.text("north/demo-nynorsk-base")
|
11 |
+
model = T5ForConditionalGeneration.from_pretrained(model_name,config=config)
|
12 |
+
tokenizer = T5TokenizerFast.from_pretrained(model_name)
|
13 |
+
return (model, tokenizer)
|
14 |
+
|
15 |
+
def translate_to_nynorsk(model, tokenizer, text):
|
16 |
+
encoded_txt = tokenizer(text, return_tensors="pt")
|
17 |
+
generated_tokens = model.generate(
|
18 |
+
**encoded_txt
|
19 |
+
)
|
20 |
+
return tokenizer.batch_decode(generated_tokens, skip_special_tokens=True)
|
21 |
+
|
22 |
+
st.title("DeUnCaser")
|
23 |
+
|
24 |
+
expander = st.sidebar.expander("About")
|
25 |
+
expander.write("This web app adds spaces, punctation and capitalisation back into the text.")
|
26 |
+
|
27 |
+
option = st.sidebar.selectbox(
|
28 |
+
'Examples:',
|
29 |
+
('Loven har også som formål å sikre et arbeidsmiljø som gir grunnlag for en helsefremmende og meningsfylt arbeidssituasjon, og bidra til et inkluderende arbeidsliv.','En av de vanskeligste oppgavene når man oversetter fra bokmål til nynorsk, er å passe på at man bruker riktige pronomen. Man kan for eksempel si at man eier en bil og at den er rød.', 'Alle søknader behandles konfidensielt.', 'Kommunens nettsider henviser til kommunens vedtak.'))
|
30 |
+
|
31 |
+
text = st.text_area(f"Corrupted text: ",max_chars=1000, value=option)
|
32 |
+
|
33 |
+
st.text("Fixed text: ")
|
34 |
+
|
35 |
+
if text:
|
36 |
+
model, tokenizer = load_model()
|
37 |
+
translated_text = translate_to_nynorsk(model, tokenizer, text)
|
38 |
+
st.write(translated_text[0] if translated_text else "Unknown Error Translating Text")
|
39 |
+
|
requirements.txt
ADDED
@@ -0,0 +1,4 @@
|
|
|
|
|
|
|
|
|
|
|
1 |
+
streamlit
|
2 |
+
torch
|
3 |
+
transformers
|
4 |
+
transformers[sentencepiece]
|