File size: 4,230 Bytes
24ec802
31ae6cb
24ec802
dcee313
9cbfa67
35b8a41
d84feea
9a5a539
8034603
cf550ac
3686bb5
7d78b47
9a5a539
 
3686bb5
 
 
 
 
97c4a33
 
6aacb1a
e26b373
 
0af4897
d319ef7
3686bb5
2c1d0fb
 
 
144a3a3
675f8dc
144a3a3
ae27f6e
 
144a3a3
 
ae27f6e
 
b6ff19b
ae27f6e
b6ff19b
144a3a3
5773811
144a3a3
5773811
 
 
 
 
24ec802
2c1d0fb
 
 
 
 
 
24ec802
 
3145812
07a752d
e0f9860
97c4a33
e0f9860
 
 
97c4a33
0af4897
e0f9860
 
97c4a33
e0f9860
0af4897
c6721a6
97c4a33
b4bc03a
e0f9860
97c4a33
e0f9860
 
97c4a33
15fe4c1
e0f9860
7121326
96d4bd6
cf550ac
31ae6cb
b2ab0e6
 
784a279
b2ab0e6
d17f3d9
97c4a33
7150cb8
e38becc
7121326
790c1c3
44106e3
297abe8
cf550ac
 
 
97c4a33
cf550ac
d319ef7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
import requests
import streamlit as st
import streamlit.components.v1 as components
import time
 
st.session_state.mytext = ""
def semanticComparativeClassification():  
    st.session_state["respuesta"] = ""
    st.session_state["logresp"] = ""
    button_placeholder.write('sdfadsfasfdasfdadfs');
    apis_urls = [
        "https://api-inference.huggingface.co/models/symanto/sn-xlm-roberta-base-snli-mnli-anli-xnli",
        "https://api-inference.huggingface.co/models/sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2",
        "https://api-inference.huggingface.co/models/sentence-transformers/distiluse-base-multilingual-cased-v2"
    ]

    for api_url in apis_urls:
        semanticComparativeClassificationCall(api_url)
        
def semanticComparativeClassificationCall(api_url: str):   
    st.session_state.logresp = st.session_state.logresp + "Model: "+api_url+"\n"
    time.sleep(1)
    headers = {"Authorization": "Bearer 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"}
    #API_URL = "https://api-inference.huggingface.co/models/Maite89/Roberta_finetuning_semantic_similarity_stsb_multi_mt"
     
    def query(payload): 
    	response = requests.post(api_url, headers=headers, json=payload)
    	return response.json()
    
    sentences =  [
    			"Conoces Lya2 , que es Lya2",
    			"He perdido la contrase帽a, no puedo entrar o acceder a Lya2",
    			"Calendario de eventos, creamos un evento , borramos un evento ",
                "Sincronizamos Lya2 con el tel茅fono o m贸bil"
                "Cambios",
    			"Cambios dobles , pedir, autorizar , borrar un cambio doble",
                "Cambios simples ,  pedir, autorizar , borrar un cambio simple",
                "Sessiones",
                "Personal",
                "Horarios",
                "脕reas",
                "Rastryco o rastrico",
                "Sylbo  la aplicaci贸n m贸bil de Lya2",
                "Sylbo",
                "Hola  hi  hola",
                "Adi贸s adi贸s bye",
                "Como programo el personal",
                "Como asigno trabajo al personal"
                "Pedir permisos",
                "Pedir vacaciones"
    		]
     	
    output = query({
    	"inputs": {
            "wait_for_model" : True,
    		"source_sentence": st.session_state.mytext,
    		"sentences": sentences
    	},
    })

    #st.write(output)
    if "error" in output:
        st.session_state.logresp = st.session_state.logresp +  output["error"] +'\n'
    else: 
        index=0
        for i in output:
            st.session_state.logresp = st.session_state.logresp+ str(i) +' - '+sentences[index]+'\n'
            #container.write(i," - ", sentences[index]) 
            index = index + 1
        maxim = max(output)
        st.session_state.logresp = st.session_state.logresp+'MAX:'+str(maxim)+'\n' 
        
        sentenceindex = output.index(maxim) 

        st.session_state.logresp = st.session_state.logresp+str(sentenceindex)+'\n'
    
        if output[sentenceindex] < 0.3 :
            st.session_state.logresp = st.session_state.logresp+api_url+"\nNo tengo respuesta para esto, 驴me lo explicas mejor o te pongo en contacto con un humano? \n\n" 
            st.session_state["respuesta"]= st.session_state["respuesta"] +api_url+"\nNo tengo respuesta para esto, 驴me lo explicas mejor o te pongo en contacto con un humano?"+"\n\n"
        else:
            st.session_state.logresp = st.session_state.logresp+api_url+"\nTema reconocido: "+ str(sentences[sentenceindex])+"\n\n"
            st.session_state["respuesta"] = st.session_state["respuesta"] +api_url+"\nTema reconocido: \n"+str(sentences[sentenceindex])+"\n\n"
     
     
    st.session_state.logresp = "sdfasfas ssss"
    

#x = st.slider('Select a value')
#st.write(x, 'squared is', x * x)
 

st.session_state.response = ""
st.session_state.logresp = ""
st.title('Reconocimiento sem谩ntico')
title = st.text_input('Pregunta', '', on_change=semanticComparativeClassification,key='mytext')

st.text_area(   "Respuesta: ", key= "respuesta", height=200 )
#st.text_area(   "Log: ", key= "logresp", height=600 )

# Section 1
button = st.button('Button')
button_placeholder = st.empty()
button_placeholder.write(st.session_state[f"logresp"])