Spaces:
Running
Running

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()
02c133e
verified
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() | |