Spaces:
Running
Running
File size: 9,637 Bytes
a0c69c3 02c133e 3b32444 871378f 02c133e 3b32444 dc207d7 871378f 3b32444 871378f dc207d7 3b32444 871378f cdb2eb0 3b32444 a0c69c3 02c133e 71d165d 2a6b818 e6a50e7 02c133e e6a50e7 02c133e a0c69c3 e5e542e dc207d7 cfeafdc 2a6b818 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 |
import gradio as gr
# Dictionary y'indwara 50 hamwe na symptoms na treatments
indwara_dict = {
"Cancer": {
"symptoms": ["umuriro", "kubabara umutwe", "gucika intege"],
"treatment": "Kubagwa, chemotherapy, radiotherapy"
},
"Diabetes": {
"symptoms": ["inyota nyinshi", "gucika intege", "kugabanuka k'ibiro"],
"treatment": "Insulin, imiti yo kugenzura isukari mu maraso"
},
"Flu": {
"symptoms": ["umuriro", "umutwe", "gukorora"],
"treatment": "Kuruhuka, imiti yo kugabanya umuriro nka paracetamol"
},
"COVID-19": {
"symptoms": ["umuriro", "guhumeka nabi", "kuruha", "kubura impumuro"],
"treatment": "Kuruhuka, gufata amazi menshi, imiti y’ibanze, kubonana na muganga"
},
"Malaria": {
"symptoms": ["umuriro", "gucika intege", "kubira ibyuya"],
"treatment": "Artemisinin-based combination therapy (ACT)"
},
"Tuberculosis": {
"symptoms": ["inkorora ikomeye", "umuriro", "gucika intege"],
"treatment": "Isoniazid, rifampicin, pyrazinamide, ethambutol"
},
"Asthma": {
"symptoms": ["guhumeka nabi", "kubura umwuka", "gukorora"],
"treatment": "Inhalers (bronchodilators, corticosteroids)"
},
"Hypertension": {
"symptoms": ["umutwe", "gukorora umutwe", "kuribwa mu mutima"],
"treatment": "Imiti igabanya umuvuduko w’amaraso nka ACE inhibitors, beta blockers"
},
"Stroke": {
"symptoms": ["kuribwa umutwe ukabije", "kubura ubushobozi bwo kugenda", "kudakora neza kw’uruhande rumwe rw’umubiri"],
"treatment": "Muganga hakenewe kwihutirwa, imiti ishinzwe kugabanya amaraso, kuboneza umuvuduko"
},
# Hano hari izindi 40 zumvikana (ngwino ngerageze)
"Bronchitis": {
"symptoms": ["inkorora", "kubabara mu gituza", "guhumeka nabi"],
"treatment": "Kuruhuka, imiti y’inkorora, antibiotics niba ari bacterial"
},
"Pneumonia": {
"symptoms": ["inkorora ikomeye", "umuriro", "guhumeka nabi"],
"treatment": "Antibiotics, kuruhuka, gufata amazi menshi"
},
"Migraine": {
"symptoms": ["kubabara umutwe ukabije", "kumva urusaku cyane", "guhumeka nabi"],
"treatment": "Iminsi y’ikiruhuko, imiti yo kugabanya ububabare nka ibuprofen"
},
"Depression": {
"symptoms": ["guhangayika", "kubura ubushake bwo gukora", "kwiheba"],
"treatment": "Psychotherapy, imiti nka antidepressants"
},
"Anxiety": {
"symptoms": ["guhangayika cyane", "umutima guhagarara vuba", "kubura ibitotsi"],
"treatment": "Psychotherapy, imiti yo kugabanya guhangayika"
},
"Arthritis": {
"symptoms": ["ububabare mu ngingo", "kubura umuvuduko mu ngingo", "kugabanya imbaraga"],
"treatment": "Anti-inflammatory drugs, physiotherapy"
},
"Allergy": {
"symptoms": ["kuribwa umutwe", "kuribwa mu mazuru", "guhumeka nabi"],
"treatment": "Antihistamines, avoiding allergens"
},
"Appendicitis": {
"symptoms": ["kubabara mu nda y'ibumoso", "umuriro", "gucika intege"],
"treatment": "Kubagwa"
},
"Gastritis": {
"symptoms": ["kubabara mu nda", "kuribwa umutima", "kuribwa mu gatuza"],
"treatment": "Imiti yo kugabanya aside mu nda"
},
"Hepatitis": {
"symptoms": ["kunyeganyega", "kubabara mu gatuza", "guhinduka ibara ry'uruhu"],
"treatment": "Kuruhuka, imiti yihariye"
},
"Kidney Stones": {
"symptoms": ["ububabare mu nda", "kuruka", "kugira umuriro"],
"treatment": "Amazi menshi, kubagwa niba bikomeye"
},
"Chickenpox": {
"symptoms": ["ibisebe ku ruhu", "umuriro", "gucika intege"],
"treatment": "Kuruhuka, imiti yo kugabanya ububabare"
},
"Eczema": {
"symptoms": ["kubabara uruhu", "gusohoka imyanda", "gucika intege"],
"treatment": "Creams za corticosteroids, moisturizing"
},
"Food Poisoning": {
"symptoms": ["kuruka", "impiswi", "umuriro"],
"treatment": "Amazi menshi, imiti yo kugabanya impiswi"
},
"Sinusitis": {
"symptoms": ["kubabara umutwe", "kubabara mu mazuru", "gukorora"],
"treatment": "Antibiotics, kuruhuka"
},
"Conjunctivitis": {
"symptoms": ["ijisho rirabura", "kubabara ijisho", "gusohora amavuta"],
"treatment": "Antibiotic eye drops"
},
"Gout": {
"symptoms": ["ububabare mu ngingo", "kubura ubushobozi bwo kugenda", "kubyimba"],
"treatment": "Anti-inflammatory drugs"
},
"Obesity": {
"symptoms": ["kugabanuka kw’imbaraga", "ibiro byinshi", "kunanirwa guhumeka neza"],
"treatment": "Imirire iboneye, imyitozo ngororamubiri"
},
"Osteoporosis": {
"symptoms": ["ububabare mu ngingo", "gucika intege", "kugira amagufa yoroshye"],
"treatment": "Calcium supplements, vitamin D"
},
"Psoriasis": {
"symptoms": ["uruhu rucyeye", "gukorora", "imyanda ku ruhu"],
"treatment": "Creams za corticosteroids"
},
"Sleep Apnea": {
"symptoms": ["kubura umwuka mu gihe cyo kuryama", "kuryama nabi", "kuribwa umutwe"],
"treatment": "CPAP machine, kugabanya ibiro"
},
"Ulcers": {
"symptoms": ["kubabara mu nda", "kuribwa umutima", "kunanirwa kurya"],
"treatment": "Imiti yo kugabanya aside, kurya neza"
},
"Varicose Veins": {
"symptoms": ["kubyimba mu maguru", "kuribwa amaguru", "kumva uburemere"],
"treatment": "Compression stockings, exercise"
},
"Alzheimer's Disease": {
"symptoms": ["kubura ubushobozi bwo kwibuka", "guhinduka imyitwarire", "kugabanuka kw’ubushobozi bwo gutekereza"],
"treatment": "Imiti ifasha ubwonko, psychotherapy"
},
"Parkinson's Disease": {
"symptoms": ["gucika intege", "gukorora", "kunanirwa kugenda neza"],
"treatment": "Levodopa, physiotherapy"
},
"Epilepsy": {
"symptoms": ["guterura", "kubura ubushobozi bwo kugenzura umubiri", "kurwara umutwe ukabije"],
"treatment": "Antiepileptic drugs"
},
"HIV/AIDS": {
"symptoms": ["gucika intege", "kubura ibiro", "umuriro udakira"],
"treatment": "Antiretroviral therapy (ART)"
},
"Cholera": {
"symptoms": ["impiswi nyinshi", "kunyeganyega", "gucika intege"],
"treatment": "Amazi y’ibanze, imiti yo kongera amazi mu mubiri"
},
"Dengue": {
"symptoms": ["umuriro ukabije", "kubabara amagufa", "kunanirwa"],
"treatment": "Kuruhuka, imiti yo kugabanya ububabare"
},
"Meningitis": {
"symptoms": ["kubabara umutwe ukabije", "umuriro", "kubura ubushobozi bwo kwibuka"],
"treatment": "Antibiotics, kuruhuka"
},
"Polio": {
"symptoms": ["kunanirwa kugenda", "gucika intege", "kubabara amaguru"],
"treatment": "Kugororwa, imiti yunganira"
},
"Rabies": {
"symptoms": ["gukorora", "kubabara umutwe", "gucika intege"],
"treatment": "Vaccine, kurwanya ubwandu"
},
"Scabies": {
"symptoms": ["kubabara uruhu", "gukorora", "imyanda ku ruhu"],
"treatment": "Creams za permethrin"
},
"Tuberculosis (TB)": {
"symptoms": ["inkorora ikomeye", "umuriro", "gucika intege"],
"treatment": "Isoniazid, rifampicin, pyrazinamide, ethambutol"
},
"Typhoid": {
"symptoms": ["umuriro", "kubabara mu nda", "kunanirwa"],
"treatment": "Antibiotics"
},
"Urinary Tract Infection": {
"symptoms": ["kubabara igihe uciye mu nkari", "umuriro", "gucika intege"],
"treatment": "Antibiotics"
},
"Whooping Cough": {
"symptoms": ["inkorora ikabije", "kubabara umutwe", "umuriro"],
"treatment": "Antibiotics, kuruhuka"
},
"Zika Virus": {
"symptoms": ["umuriro", "kubabara amagufa", "gucika intege"],
"treatment": "Kuruhuka, gufata amazi menshi"
},
}
def susuzuma_indwara(ibimenyetso):
ibimenyetso = [i.strip().lower() for i in ibimenyetso.split(',')]
indwara_ishoboka = []
for indwara, data in indwara_dict.items():
symptoms = data["symptoms"]
treatment = data["treatment"]
count = sum(symptom in ibimenyetso for symptom in symptoms)
if count >= len(symptoms) / 2:
indwara_ishoboka.append(f"{indwara} (ibimenyetso bihuye: {count} / {len(symptoms)})\nImiti: {treatment}")
if indwara_ishoboka:
return "Indwara ishoboka hamwe n'imiti:\n\n" + "\n\n".join(indwara_ishoboka)
else:
return "Ntibishoboka kumenya indwara ishingiye ku bimenyetso watanze. Nyamuneka saba muganga."
with gr.Blocks(css="""
body {background-color: #e0f7e9;}
.gradio-container {border-radius: 15px; box-shadow: 0 8px 16px rgba(0, 128, 0, 0.3);}
h2, h3 {color: #2e7d32; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;}
.gr-button {background-color: #43a047; color: white; border-radius: 12px; font-weight: bold;}
.gr-button:hover {background-color: #2e7d32;}
""") as iface:
gr.Markdown("## 🏥 VIATEUR AI Kwamuganga\n### Saba ubufasha bwo gusuzuma indwara ukurikije ibimenyetso byawe")
gr.Image(
value="https://media.giphy.com/media/xT0BKqhdlKCxCNsVTq/giphy.gif",
label="Uragana kwa Muganga"
)
textbox = gr.Textbox(lines=3, placeholder="Andika ibimenyetso byawe (urugero: umuriro, umutwe, gukorora)", label="Ibimenyetso")
output = gr.Textbox(label="Indwara Ishoboka n'Imiti", lines=15)
submit_btn = gr.Button("Ohereza")
submit_btn.click(fn=susuzuma_indwara, inputs=textbox, outputs=output)
iface.launch()
|