import gradio as gr import pandas as pd import faiss from sentence_transformers import SentenceTransformer #load the sentences data sentences_df = pd.read_pickle("./sentences_data.pkl") #load the model model_name_or_path="semantic_search_model" model = SentenceTransformer(model_name_or_path) #load the index index = faiss.read_index("semantic_search_vector.index") def question_answer(query): k = 4 xq = model.encode([query]) D, I = index.search(xq, k) # search sentences_df["sentences"].iloc[I.tolist()[0]] a = list(sentences_df["sentences"].iloc[I.tolist()[0]]) results = "\n".join(a) answer = results return answer iface = gr.Interface(fn=question_answer, inputs="text", outputs="text").launch()