Update app.py
Browse files
app.py
CHANGED
@@ -1,4 +1,4 @@
|
|
1 |
-
|
2 |
import onnxruntime as rt
|
3 |
from transformers import AutoTokenizer
|
4 |
import torch, json
|
@@ -23,51 +23,4 @@ def classify_movie_genre(sinopse):
|
|
23 |
|
24 |
label = gr.outputs.Label(num_top_classes=5)
|
25 |
iface = gr.Interface(fn=classify_movie_genre, inputs="text", outputs=label)
|
26 |
-
iface.launch(inline=False)
|
27 |
-
|
28 |
-
import gradio as gr
|
29 |
-
import onnxruntime as rt
|
30 |
-
from transformers import AutoTokenizer
|
31 |
-
import torch, json
|
32 |
-
|
33 |
-
tokenizer = AutoTokenizer.from_pretrained("neuralmind/bert-large-portuguese-cased")
|
34 |
-
with open("genre_types_encoded.json", "r") as fp:
|
35 |
-
encode_genre_types = json.load(fp)
|
36 |
-
|
37 |
-
genres = list(encode_genre_types.keys())
|
38 |
-
|
39 |
-
inf_session = rt.InferenceSession("movie-classifier-quantized.onnx")
|
40 |
-
input_name = inf_session.get_inputs()[0].name
|
41 |
-
output_name = inf_session.get_outputs()[0].name
|
42 |
-
|
43 |
-
def classify_movie_genre(sinopse):
|
44 |
-
input_ids = tokenizer(sinopse)["input_ids"][:512]
|
45 |
-
logits = inf_session.run([output_name], {input_name: [input_ids]})[0]
|
46 |
-
logits = torch.FloatTensor(logits)
|
47 |
-
probs = torch.sigmoid(logits)[0]
|
48 |
-
return dict(zip(genres, map(float, probs)))
|
49 |
-
|
50 |
-
label = gr.outputs.Label(num_top_classes=5)
|
51 |
-
|
52 |
-
sample_synopses = [
|
53 |
-
"Um grupo de amigos enfrenta um perigoso monstro sobrenatural em uma pequena cidade.", # Horror
|
54 |
-
"Um casal de detetives investiga uma série de assassinatos misteriosos em uma grande metrópole.", # Thriller
|
55 |
-
"Uma jovem embarca em uma jornada de autodescoberta em um mundo fantástico.", # Fantasy
|
56 |
-
"Um astronauta se esforça para sobreviver em uma missão espacial que deu errado.", # Sci-Fi
|
57 |
-
"Uma comédia romântica sobre duas pessoas que se apaixonam apesar de suas diferenças.", # Romance
|
58 |
-
]
|
59 |
-
|
60 |
-
iface = gr.Interface(
|
61 |
-
fn=classify_movie_genre,
|
62 |
-
inputs=[gr.Textbox(lines=5, label="Digite a sinopse do filme ou selecione um exemplo:")],
|
63 |
-
outputs=label,
|
64 |
-
)
|
65 |
-
|
66 |
-
# Add a dropdown menu of sample synopses
|
67 |
-
iface.components["inputs"][0].add_option(
|
68 |
-
"Exemplo de Sinopses",
|
69 |
-
sample_synopses,
|
70 |
-
value="Um grupo de amigos enfrenta um perigoso monstro sobrenatural em uma pequena cidade.",
|
71 |
-
)
|
72 |
-
|
73 |
-
iface.launch(inline=False)
|
|
|
1 |
+
import gradio as gr
|
2 |
import onnxruntime as rt
|
3 |
from transformers import AutoTokenizer
|
4 |
import torch, json
|
|
|
23 |
|
24 |
label = gr.outputs.Label(num_top_classes=5)
|
25 |
iface = gr.Interface(fn=classify_movie_genre, inputs="text", outputs=label)
|
26 |
+
iface.launch(inline=False)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|