import gradio as gr # For building the chatbot UI import random # For generating random responses # Chatbot response function def chatbot_response(user_input): # Ensure the input is in lowercase and stripped of extra spaces user_input = user_input.strip().lower() # Define responses for specific queries if "hello" in user_input or "hi" in user_input: return "Hello! How can I help you with your studies today?" # Handle time management query elif "time management" in user_input: return "Time management is key! Try creating a prioritized to-do list and setting specific study blocks." # Handle study tips query elif "study tips" in user_input: tips = [ "Take regular breaks while studying to stay focused.", "Use active recall and spaced repetition for better retention.", "Set a specific goal for each study session." ] return random.choice(tips) # If input doesn't match predefined queries else: return "I'm here to assist with general academic questions. Feel free to ask about study tips, time management, or anything else!" # Gradio interface setup with gr.Blocks() as demo: gr.Markdown("# Study Assistance Chatbot") gr.Markdown("Ask me anything related to your academic studies.") chatbot = gr.Chatbot() # Chat history UI user_input = gr.Textbox(label="Enter your question here:", placeholder="Type your question...") # Textbox for user input submit_button = gr.Button("Submit") # Submit button for user input # Submit action - to update chat with response submit_button.click(chatbot_response, inputs=user_input, outputs=chatbot) # Launch the Gradio app demo.launch()