import tensorflow as tf from use_ml import preprocess_text def predict_sentiment(): model = tf.keras.models.load_model("nn_binary.keras") vectorizer = tf.keras.models.load_model("nn_vectorizer_binary.keras") def _inner(text: str) -> str: p_text = preprocess_text(text) vec = vectorizer([p_text]) pred = model.predict(vec)[0][0] res = { "labels": "positive" if pred >= 0.5 else "negative", "probs": pred } return res return _inner def predict_category(): model = tf.keras.models.load_model("nn_category.keras") vectorizer = tf.keras.models.load_model("nn_vectorizer_category.keras") def _inner(text: str) -> str: p_text = preprocess_text(text) vec = vectorizer([p_text]) pred = model.predict(vec)[0] labels = [ "политика", "экономика", "спорт", "культура" ] res = { "labels": labels, "probs": pred } return res return _inner def predict_categorys(): model = tf.keras.models.load_model("nn_categorys.keras") vectorizer = tf.keras.models.load_model("nn_vectorizer_categorys.keras") def _inner(text: str): p_text = preprocess_text(text) vec = vectorizer([p_text]) labels = [ "политика", "экономика", "спорт", "культура" ] pred = model.predict(vec)[0] res = { "labels": labels, "probs": pred } return res return _inner