Spaces:
Sleeping
Sleeping
| import streamlit as st | |
| import pickle | |
| from sklearn.metrics.pairwise import cosine_similarity | |
| # Load model and dataset | |
| with open("currentaffairs_chatbot_vectorizer.pkl", "rb") as f: | |
| vectorizer = pickle.load(f) | |
| with open("chatbot_dataset.pkl", "rb") as f: | |
| df = pickle.load(f) | |
| # Rebuild embeddings | |
| X_vectors = vectorizer.transform(df["Question"]) | |
| # Chatbot function | |
| def chatbot_response(user_input): | |
| user_vec = vectorizer.transform([user_input]) | |
| similarities = cosine_similarity(user_vec, X_vectors) | |
| idx = similarities.argmax() | |
| return df.iloc[idx]["Answer"] | |
| # Streamlit UI | |
| st.set_page_config(page_title="π UN Countries Chatbot", page_icon="π") | |
| st.title("π UN Countries Chatbot") | |
| st.write("Ask me about any UN member state and Iβll tell you the basic info.") | |
| # User input box | |
| user_input = st.text_input("You:", "") | |
| if user_input: | |
| response = chatbot_response(user_input) | |
| st.success(f"π€ {response}") | |