| import streamlit as st | |
| import torch | |
| import requests | |
| import time | |
| import numpy as np | |
| import os | |
| from toxic1 import toxicity_page | |
| from strim_nlp import classic_ml_page | |
| from lstm import lstm_model_page | |
| from bert_strim import bert_model_page | |
| def app_description_page(): | |
| st.title("Welcome to My App!") | |
| st.markdown("<h3 style='font-size: 18px;'>This is a Streamlit application where you can explore four different models.</h3>", unsafe_allow_html=True) | |
| st.markdown("<h3 style='font-size: 18px;'>About the project:</h3>", unsafe_allow_html=True) | |
| st.markdown("<h3 style='font-size: 18px;'>The task is to train 3 different models on a dataset that contains reviews about the clinic.</h3>", unsafe_allow_html=True) | |
| st.markdown("<h3 style='font-size: 18px;'>You can write text and the model will classify it as “Negative” or “Positive”</h3>", unsafe_allow_html=True) | |
| data = { | |
| "Model": ["CatBoostClassifier", "LSTM", "Rubert-tiny2", "Rubert-tiny-toxicity"], | |
| "F1 metric": [0.87, 0.94, 0.90, 0.84] | |
| } | |
| df = pd.DataFrame(data) | |
| st.markdown("<h3 style='font-size: 18px;'>Models:</h3>", unsafe_allow_html=True) | |
| st.markdown("<h3 style='font-size: 18px;'>1. CatBoostClassifier trained on TF-IDF </h3>", unsafe_allow_html=True) | |
| st.markdown("<h3 style='font-size: 18px;'>2. LSTM with BahdanauAttention </h3>", unsafe_allow_html=True) | |
| st.markdown("<h3 style='font-size: 18px;'>3. Rubert-tiny2 </h3>", unsafe_allow_html=True) | |
| st.markdown("<h3 style='font-size: 18px;'>4. Rubert-tiny-toxicity </h3>", unsafe_allow_html=True) | |
| st.dataframe(df) | |
| st.image('20182704132259.jpg', use_column_width=True) | |
| def model_selection_page(): | |
| st.sidebar.title("Model Selection") | |
| selected_model = st.sidebar.radio("Select a model", ("Classic ML", "LSTM", "BERT")) | |
| if selected_model == "Classic ML": | |
| classic_ml_page() | |
| st.write("You selected Classic ML.") | |
| elif selected_model == "LSTM": | |
| lstm_model_page() | |
| st.write("You selected LSTM.") | |
| elif selected_model == "BERT": | |
| bert_model_page() | |
| st.write("You selected BERT.") | |
| def main(): | |
| page = st.sidebar.radio("Go to", ("App Description", "Model Selection", "Toxicity Model")) | |
| if page == "App Description": | |
| app_description_page() | |
| elif page == "Model Selection": | |
| model_selection_page() | |
| elif page == "Toxicity Model": | |
| toxicity_page() | |
| if __name__ == "__main__": | |
| main() | |