Spaces:
Running
Running
| import streamlit as st | |
| import torch | |
| from sentence_transformers import SentenceTransformer, util | |
| embedder = SentenceTransformer('all-mpnet-base-v2') | |
| st.title("iSeBetter: Semantic Issue Transformer") | |
| st.caption("Empower Developers with Advanced AI Issue Resolution") | |
| st.markdown('#') | |
| st.subheader("Search for Similar Issues") | |
| form = st.form("Search for Similar Issues") | |
| text_input = form.text_area("Please enter the issue details", | |
| help="Title and description of the issue could be a good start!") | |
| if form.form_submit_button("Run Inference"): | |
| # Perform semantic search | |
| query_embedding = embedder.encode(text_input, convert_to_tensor=True) | |
| corpus_embeddings = torch.load('saved_corpus.pt') | |
| corpus_embeddings_name = torch.load('saved_corpus_list.txt') | |
| cos_scores = util.cos_sim(query_embedding, corpus_embeddings)[0] | |
| top_results = torch.topk(cos_scores, k=5) | |
| st.markdown('#') | |
| # Display results | |
| st.subheader("Top 5 Similar Issues") | |
| for score, idx in zip(top_results[0], top_results[1]): | |
| st.progress(score.item(), f"Issue: {corpus_embeddings_name[idx]}, Score: {score:.4f}") | |