EagleOfEmpire commited on
Commit
d88070f
·
verified ·
1 Parent(s): 6793c80

Creating app.py

Browse files
Files changed (1) hide show
  1. app.py +54 -0
app.py ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import tensorflow as tf
3
+ import numpy as np
4
+
5
+ # ----------------------------------------------------
6
+ # ЗАГРУЗКА МОДЕЛИ
7
+ # ----------------------------------------------------
8
+ # Предполагается, что модель сохранена в папке "model"
9
+ model = tf.keras.models.load_model("model")
10
+
11
+ # Если вы использовали токенизатор (например Keras Tokenizer),
12
+ # загрузите его из pickle
13
+ import pickle
14
+ with open("tokenizer.pkl", "rb") as f:
15
+ tokenizer = pickle.load(f)
16
+
17
+ # Метки классов
18
+ EMOTIONS = ["neutral", "joy", "sadness", "anger", "fear", "surprise"]
19
+ # поменяйте на свои реальные метки
20
+
21
+
22
+ # ----------------------------------------------------
23
+ # ФУНКЦИЯ ПРЕДСКАЗАНИЯ
24
+ # ----------------------------------------------------
25
+ def predict(text):
26
+ # Преобразуем текст в sequence
27
+ seq = tokenizer.texts_to_sequences([text])
28
+
29
+ # Паддинг — на ту длину, на которой обучалась модель
30
+ padded = tf.keras.preprocessing.sequence.pad_sequences(seq, maxlen=100)
31
+
32
+ # Получаем предсказание
33
+ preds = model.predict(padded)[0]
34
+
35
+ # Находим класс
36
+ emotion_idx = np.argmax(preds)
37
+ emotion = EMOTIONS[emotion_idx]
38
+
39
+ # Вернём все вероятности (удобно для вывода)
40
+ return {EMOTIONS[i]: float(preds[i]) for i in range(len(EMOTIONS))}
41
+
42
+
43
+ # ----------------------------------------------------
44
+ # GRADIO UI
45
+ # ----------------------------------------------------
46
+ iface = gr.Interface(
47
+ fn=predict,
48
+ inputs=gr.Textbox(label="Введите текст"),
49
+ outputs=gr.Label(num_top_classes=6, label="Эмоции"),
50
+ title="Emotion Classification",
51
+ description="Классификация эмоций по тексту с использованием Keras модели"
52
+ )
53
+
54
+ iface.launch()