| import gradio as gr |
|
|
| def get_health_advice(query): |
| responses = { |
| "fever": "π‘οΈ For fever, take Paracetamol, rest well, and stay hydrated.", |
| "cold": "π€§ Use steam inhalation, warm fluids, and over-the-counter cold medicine.", |
| "headache": "π Try Ibuprofen, stay in a quiet place, and drink plenty of water.", |
| "cough": "π€§ For cough, try honey and ginger tea, or use a cough suppressant if needed.", |
| "stomach ache": "π΅ Drink chamomile tea or take an antacid to soothe the stomach.", |
| "sore throat": "π§΄ Gargle with warm salt water, and try throat lozenges or warm tea.", |
| "fatigue": "π€ Rest well, stay hydrated, and eat a balanced diet to replenish energy.", |
| "nausea": "π₯ Ginger tea or peppermint can help with nausea, and avoid heavy foods.", |
| "dizziness": "π§ββοΈ If feeling dizzy, sit down, hydrate, and avoid sudden movements. Seek medical attention if it persists.", |
| "back pain": "πͺ Stretch and use a hot pack on the back. Over-the-counter pain relievers may help.", |
| "allergy": "π€§ For mild allergies, take antihistamines or use nasal sprays for relief.", |
| "hair fall": "πββοΈ For hair fall, try a balanced diet, use mild shampoos, and consider consulting a dermatologist. Regular scalp massage and reducing stress may help as well.", |
| "diabetes": "π For diabetes, maintain a balanced diet with low sugar intake, exercise regularly, monitor blood sugar levels, and follow your doctor's advice for medication." |
| } |
| |
| |
| for keyword in responses: |
| if keyword in query.lower(): |
| return responses[keyword] |
| return "β οΈ Sorry, I couldn't recognize your condition. Please consult a healthcare professional." |
|
|
| with gr.Blocks(css=""" |
| .gradio-container { |
| background-color: #ffffff; |
| font-family: 'Segoe UI', sans-serif; |
| } |
| h1 { |
| color: #2ecc71; |
| text-align: center; |
| margin-bottom: 0; |
| } |
| h2 { |
| color: #444; |
| text-align: center; |
| font-weight: normal; |
| margin-top: 0; |
| } |
| .textbox input, .textbox textarea { |
| font-size: 16px; |
| padding: 12px; |
| border-radius: 10px; |
| border: 1px solid #ffcc80; /* Light orange border */ |
| background: linear-gradient(135deg, #d1e8e2, #80cbc4); /* Light to dark gradient background */ |
| color: black; /* Change text color to black */ |
| } |
| /* When the input field is focused (clicked), change its background to red */ |
| .textbox input:focus, .textbox textarea:focus { |
| border-color: #ff7043; /* Darker orange border on focus */ |
| background-color: #ffcccc !important; /* Red background when focused */ |
| outline: none; /* Remove default outline */ |
| } |
| .response-box textarea { |
| background-color: #e0f7fa; /* Light blue background */ |
| color: #000000; /* Black text */ |
| font-size: 16px; |
| padding: 12px; |
| border-radius: 10px; |
| border: 1px solid #ffcc80; /* Light orange border */ |
| } |
| .submit-btn button { |
| background-color: #2ecc71; |
| color: white; |
| font-size: 16px; |
| border-radius: 10px; |
| padding: 10px 24px; |
| border: none; |
| } |
| /* Removed hover effect completely */ |
| .submit-btn button:hover { |
| background-color: #2ecc71; /* Same color as the button (no hover effect) */ |
| } |
| """) as demo: |
|
|
| gr.Markdown("## π©Ί HealthMate") |
| gr.Markdown("### Your AI Health Assistant β Ask any health-related question") |
|
|
| with gr.Row(): |
| with gr.Column(): |
| user_input = gr.Textbox( |
| label="Enter your health question:", |
| placeholder="e.g., What medicine should I take for cold?", |
| lines=3, |
| elem_classes="textbox" |
| ) |
| submit_btn = gr.Button("Get Advice", elem_classes="submit-btn") |
| with gr.Column(): |
| output = gr.Textbox( |
| label="HealthMate Advice:", |
| lines=3, |
| interactive=False, |
| elem_classes="response-box" |
| ) |
|
|
| submit_btn.click(fn=get_health_advice, inputs=user_input, outputs=output) |
|
|
| demo.launch() |
|
|