pierreguillou
commited on
Commit
•
667b990
1
Parent(s):
ce63d82
Update app.py
Browse files
app.py
CHANGED
@@ -71,7 +71,7 @@ pos_pattern = '<PROPN.*>*<N.*>*<ADJ.*>*'
|
|
71 |
|
72 |
|
73 |
# vectorizer options
|
74 |
-
vectorizer_options = ["keyword", "
|
75 |
|
76 |
|
77 |
# function principal (keywords)
|
@@ -92,9 +92,9 @@ def get_kw_html(doc, top_n, diversity, vectorizer_option, model_id, pos_pattern)
|
|
92 |
)
|
93 |
|
94 |
# upt to 3-gram
|
95 |
-
elif vectorizer_option == "
|
96 |
vectorizer = CountVectorizer(
|
97 |
-
ngram_range=(1,
|
98 |
#stop_words=stop_words,
|
99 |
lowercase=lowercase
|
100 |
)
|
@@ -288,7 +288,7 @@ def get_kw_html(doc, top_n, diversity, vectorizer_option, model_id, pos_pattern)
|
|
288 |
keywords_with_distance_list_sorted = keywords_with_distance_list_sorted[:top_n]
|
289 |
|
290 |
# main keyword
|
291 |
-
label = f"A palavra/frase chave com a maior
|
292 |
|
293 |
# json for printing
|
294 |
keywords_list_json = {keyword:prob for keyword, prob in keywords_with_distance_list_sorted}
|
@@ -305,9 +305,10 @@ def get_kw_html(doc, top_n, diversity, vectorizer_option, model_id, pos_pattern)
|
|
305 |
def get_kw_html_0(doc, top_n, diversity, vectorizer_option, model_id=0, pos_pattern=pos_pattern):
|
306 |
return get_kw_html(doc, top_n, diversity, vectorizer_option, model_id, pos_pattern)
|
307 |
|
|
|
308 |
title = "Extração das palavras/frases chave em português"
|
309 |
|
310 |
-
description = '<p>(17/12/2022) Forneça seu próprio texto em português e o APP vai fazer a extração das palavras/frases chave com as maiores
|
311 |
<p>Este aplicativo usa os modelos seguintes:\
|
312 |
<br />- <a href="https://huggingface.co/sentence-transformers/paraphrase-multilingual-mpnet-base-v2">SBERT multilingual</a>,\
|
313 |
<br />- <a href="https://maartengr.github.io/KeyBERT/index.html">KeyBERT</a> para calcular as similaridades entre as palavras/frases chave e o texto do documento.</p>'
|
@@ -368,7 +369,7 @@ interface_0 = gr.Interface(
|
|
368 |
gr.Textbox(lines=15, label="Texto do documento"),
|
369 |
gr.Slider(1, 20, value=num_results, step=1., label=f"Número das palavras/frases chave a procurar (0: mínimo - 20: máximo - padrão: {num_results})"),
|
370 |
gr.Slider(0, 1, value=diversity, step=0.1, label=f"Diversidade entre as palavras/frases chave encontradas (0: mínimo - 1: máximo - padrão: {diversity})"),
|
371 |
-
gr.Radio(choices=vectorizer_options, value=vectorizer_options[0], label=f"Tipo de resultados (keyword: lista de palavras únicas -
|
372 |
],
|
373 |
outputs=[
|
374 |
gr.HTML(label=f"{model_name[0]}"),
|
|
|
71 |
|
72 |
|
73 |
# vectorizer options
|
74 |
+
vectorizer_options = ["keyword", "3gramword", "nounfrase"]
|
75 |
|
76 |
|
77 |
# function principal (keywords)
|
|
|
92 |
)
|
93 |
|
94 |
# upt to 3-gram
|
95 |
+
elif vectorizer_option == "3gramword":
|
96 |
vectorizer = CountVectorizer(
|
97 |
+
ngram_range=(1, 3),
|
98 |
#stop_words=stop_words,
|
99 |
lowercase=lowercase
|
100 |
)
|
|
|
288 |
keywords_with_distance_list_sorted = keywords_with_distance_list_sorted[:top_n]
|
289 |
|
290 |
# main keyword
|
291 |
+
label = f"A palavra/frase chave com a maior similaridade é <span style='color: black; background-color: yellow; padding:2px'>{keywords_with_distance_list_sorted[0][0]}</span>."
|
292 |
|
293 |
# json for printing
|
294 |
keywords_list_json = {keyword:prob for keyword, prob in keywords_with_distance_list_sorted}
|
|
|
305 |
def get_kw_html_0(doc, top_n, diversity, vectorizer_option, model_id=0, pos_pattern=pos_pattern):
|
306 |
return get_kw_html(doc, top_n, diversity, vectorizer_option, model_id, pos_pattern)
|
307 |
|
308 |
+
|
309 |
title = "Extração das palavras/frases chave em português"
|
310 |
|
311 |
+
description = '<p>(17/12/2022) Forneça seu próprio texto em português e o APP vai fazer a extração das palavras/frases chave com as maiores similaridades ao texto.</p>\
|
312 |
<p>Este aplicativo usa os modelos seguintes:\
|
313 |
<br />- <a href="https://huggingface.co/sentence-transformers/paraphrase-multilingual-mpnet-base-v2">SBERT multilingual</a>,\
|
314 |
<br />- <a href="https://maartengr.github.io/KeyBERT/index.html">KeyBERT</a> para calcular as similaridades entre as palavras/frases chave e o texto do documento.</p>'
|
|
|
369 |
gr.Textbox(lines=15, label="Texto do documento"),
|
370 |
gr.Slider(1, 20, value=num_results, step=1., label=f"Número das palavras/frases chave a procurar (0: mínimo - 20: máximo - padrão: {num_results})"),
|
371 |
gr.Slider(0, 1, value=diversity, step=0.1, label=f"Diversidade entre as palavras/frases chave encontradas (0: mínimo - 1: máximo - padrão: {diversity})"),
|
372 |
+
gr.Radio(choices=vectorizer_options, value=vectorizer_options[0], label=f"Tipo de resultados (keyword: lista de palavras únicas - 3gramword: lista de 1 a 5 palavras - nounfrase: lista de frases nominais)"),
|
373 |
],
|
374 |
outputs=[
|
375 |
gr.HTML(label=f"{model_name[0]}"),
|