maxspad commited on
Commit
862e96e
·
1 Parent(s): 4fb102d

basic skeleton

Browse files
Files changed (1) hide show
  1. app.py +48 -2
app.py CHANGED
@@ -1,4 +1,50 @@
1
  import streamlit as st
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
 
3
- x = st.slider('Select a value')
4
- st.write(x, 'squared is', x * x)
 
1
  import streamlit as st
2
+ import transformers as tf
3
+
4
+ @st.experimental_singleton(show_spinner=False)
5
+ def load_model(username, prefix, model_name):
6
+ p = tf.pipeline('text-classification', f'{username}/{prefix}-{model_name}')
7
+ return p
8
+
9
+ USERNAME = 'maxspad'
10
+ PREFIX = 'nlp-qual'
11
+ models_to_load = ['qual', 'q1', 'q2i', 'q3i']
12
+ n_models = float(len(models_to_load))
13
+
14
+ models = {}
15
+
16
+ lc_placeholder = st.empty()
17
+ loader_container = lc_placeholder.container()
18
+ loader_container.caption('Loading models... please wait...')
19
+ pbar = loader_container.progress(0.0)
20
+ for i, mn in enumerate(models_to_load):
21
+ pbar.progress((i+1.0) / n_models)
22
+ models[mn] = load_model(USERNAME, PREFIX, mn)
23
+ lc_placeholder.empty()
24
+
25
+ text = st.text_area('Type your stuff')
26
+
27
+ denoms = ['5','3']
28
+ for mn in models_to_load:
29
+ st.header(mn)
30
+ cols = st.columns(2)
31
+ res = models[mn](text)[0]
32
+
33
+ if mn == 'qual':
34
+ cols[0].metric('Score', f"{res['label'].split('_')[1]}/5")
35
+ elif mn == 'q1':
36
+ cols[0].metric('Score', f"{res['label'].split('_')[1]}/3")
37
+ elif mn == 'q2i':
38
+ if res['label'] == 'LABEL_0':
39
+ cols[0].metric('Suggestion for improvement?', 'Yes')
40
+ else:
41
+ cols[0].metric('Suggestion for improvement?', 'No')
42
+ elif mn == 'q3i':
43
+ if res['label'] == 'LABEL_0':
44
+ cols[0].metric('Suggestion linked?', 'Yes')
45
+ else:
46
+ cols[0].metric('Suggestion linked?', 'No')
47
+
48
+ cols[1].caption('Confidence')
49
+ cols[1].progress(res['score'])
50