''' To-do Create a side bar to compare two or upload CSV In the second tab, allow them to compare all CSV files ''' import streamlit as st from transformers import pipeline from textblob import TextBlob from sentence_transformers import SentenceTransformer from sklearn.metrics.pairwise import cosine_similarity model = SentenceTransformer('paraphrase-xlm-r-multilingual-v1') sentences = [] # Streamlit interface st.title("Sentence Similarity") # Streamlit form elements with st.form("submission_form", clear_on_submit=False): sentence_1 = st.text_input("Sentence 1 input") sentence_2 = st.text_input("Sentence 2 input") submit_button = st.form_submit_button("Compare Sentences") if submit_button: # Perform calculations # Append input sentences to 'sentences' list sentences.append(sentence_1) sentences.append(sentence_2) # Create embeddings for both sentences sentence_embeddings = model.encode(sentences) cos_sim = cosine_similarity(sentence_embeddings[0].reshape(1, -1), sentence_embeddings[1].reshape(1, -1))[0][0] cos_sim = cos_sim * 100 # Convert to percentage st.write('Similarity between {} and {} is {}%'.format(sentence_1, sentence_2, cos_sim))