Spaces:
Sleeping
Sleeping
import gradio as gr 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" }, # ...shyiramo izindi ukoresheje ubu buryo, aha ndi kuzigabanya kubera umwanya } 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(title="VIATEUR AI Kwamuganga") as iface: textbox = gr.Textbox( lines=3, placeholder="Andika ibimenyetso byawe (urugero: umuriro, umutwe, gukorora)", label="Ibimenyetso" ) output = gr.Textbox(label="Indwara Ishoboka n'Imiti", lines=10) submit_btn = gr.Button("Submit") submit_btn.click(fn=susuzuma_indwara, inputs=textbox, outputs=output) iface.launch()
Browse files
app.py
CHANGED
|
@@ -1,102 +1,69 @@
|
|
| 1 |
-
|
| 2 |
import gradio as gr
|
| 3 |
|
| 4 |
indwara_dict = {
|
| 5 |
-
"Cancer":
|
| 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 |
-
"Polio": ["kubura ubushobozi bwo kugenda", "gucika intege", "guhagarara kw’imikaya"],
|
| 43 |
-
"Yellow Fever": ["umuriro", "kuribwa mu nda", "gukorora"],
|
| 44 |
-
"Bronchitis": ["inkorora", "guhumeka nabi", "umuriro"],
|
| 45 |
-
"Emphysema": ["guhumeka nabi", "gukorora", "gucika intege"],
|
| 46 |
-
"Colitis": ["kuribwa mu nda", "kubyimba mu nda", "inkorora"],
|
| 47 |
-
"Crohn’s Disease": ["kuribwa mu nda", "kubyimba mu nda", "kuribwa kw’umubiri"],
|
| 48 |
-
"Ulcerative Colitis": ["kubyimba mu nda", "inkorora", "kuribwa mu nda"],
|
| 49 |
-
"Irritable Bowel Syndrome": ["kuribwa mu nda", "guhinduka kw’imikorere y’inkorora", "kubyimba mu nda"],
|
| 50 |
-
"Gastroenteritis": ["kuruka", "kubyimba mu nda", "inkorora"],
|
| 51 |
-
"Diverticulitis": ["kuribwa mu nda", "kubyimba mu nda", "gukorora"],
|
| 52 |
-
"Hernia": ["kubabara mu nda", "kubyimba mu nda", "kuribwa igihe uhagaze"],
|
| 53 |
-
"Cirrhosis": ["kuribwa mu nda", "kubura ubushake bwo kurya", "kuribwa mu gifu"],
|
| 54 |
-
"Hepatitis B": ["umuriro", "kuribwa mu nda", "ibibazo by’uruhu"],
|
| 55 |
-
"Hepatitis C": ["umuriro", "kuribwa mu nda", "gucika intege"],
|
| 56 |
-
"Leukemia": ["gucika intege", "kubura ibiro", "umuriro"],
|
| 57 |
-
"Lymphoma": ["gucika intege", "kubura ibiro", "kubabara umutwe"],
|
| 58 |
-
"Melanoma": ["ibisebe ku ruhu", "kubabara", "impinduka z’uruhu"],
|
| 59 |
-
"Prostate Cancer": ["kubabara mu nda", "inkorora", "guhagarara k'inkari"],
|
| 60 |
-
"Breast Cancer": ["kubabara mu mabere", "ibisebe ku mabere", "guhinduka ku mabere"],
|
| 61 |
-
"Lung Cancer": ["gukorora", "guhumeka nabi", "kubabara mu gituza"],
|
| 62 |
-
"Cervical Cancer": ["kubabara mu nda", "inkari zifite amaraso", "umuriro"],
|
| 63 |
-
"Ovarian Cancer": ["kubabara mu nda", "kubura ubushake bwo kurya", "gucika intege"],
|
| 64 |
-
"Pancreatic Cancer": ["kubabara mu nda", "gucika intege", "kubura ibiro"],
|
| 65 |
-
"Kidney Cancer": ["kubabara mu nda", "inkari zifite amaraso", "gucika intege"],
|
| 66 |
-
"Bladder Cancer": ["inkari zifite amaraso", "kubabara igihe uri kwihagarika", "gucika intege"],
|
| 67 |
-
"Colon Cancer": ["kubabara mu nda", "inkorora", "kubura ibiro"],
|
| 68 |
-
"Rectal Cancer": ["kubabara mu nda", "inkorora", "amaraso mu nkorora"],
|
| 69 |
-
"Liver Cancer": ["kubabara mu nda", "kubura ibiro", "gucika intege"],
|
| 70 |
-
"Esophageal Cancer": ["kubabara igihe urya", "kubura ubushake bwo kurya", "gucika intege"],
|
| 71 |
-
"Stomach Cancer": ["kubabara mu nda", "kubura ubushake bwo kurya", "inkorora"],
|
| 72 |
-
"Endometrial Cancer": ["kubabara mu nda", "inkorora", "amaraso mu nkorora"],
|
| 73 |
-
"Testicular Cancer": ["kubabara ku gitsina", "kubura ubushake bwo gukora imibonano", "gucika intege"],
|
| 74 |
-
"Thyroid Cancer": ["kubabara mu ijosi", "kubura ubushake bwo kurya", "gucika intege"],
|
| 75 |
-
"Skin Cancer": ["ibisebe ku ruhu", "impinduka ku ruhu", "kubabara"],
|
| 76 |
}
|
| 77 |
|
| 78 |
def susuzuma_indwara(ibimenyetso):
|
| 79 |
ibimenyetso = [i.strip().lower() for i in ibimenyetso.split(',')]
|
| 80 |
indwara_ishoboka = []
|
| 81 |
|
| 82 |
-
for indwara,
|
|
|
|
|
|
|
| 83 |
count = sum(symptom in ibimenyetso for symptom in symptoms)
|
| 84 |
if count >= len(symptoms) / 2:
|
| 85 |
-
indwara_ishoboka.append(f"{indwara} (ibimenyetso bihuye: {count} / {len(symptoms)})")
|
| 86 |
|
| 87 |
if indwara_ishoboka:
|
| 88 |
-
return "Indwara ishoboka:\n" + "\n".join(indwara_ishoboka)
|
| 89 |
else:
|
| 90 |
return "Ntibishoboka kumenya indwara ishingiye ku bimenyetso watanze. Nyamuneka saba muganga."
|
| 91 |
|
| 92 |
with gr.Blocks(title="VIATEUR AI Kwamuganga") as iface:
|
| 93 |
textbox = gr.Textbox(
|
| 94 |
lines=3,
|
| 95 |
-
placeholder="Andika ibimenyetso byawe
|
| 96 |
label="Ibimenyetso"
|
| 97 |
)
|
| 98 |
-
output = gr.Textbox(label="Indwara Ishoboka")
|
| 99 |
-
submit_btn = gr.Button("Submit
|
| 100 |
|
| 101 |
submit_btn.click(fn=susuzuma_indwara, inputs=textbox, outputs=output)
|
| 102 |
|
|
|
|
|
|
|
| 1 |
import gradio as gr
|
| 2 |
|
| 3 |
indwara_dict = {
|
| 4 |
+
"Cancer": {
|
| 5 |
+
"symptoms": ["umuriro", "kubabara umutwe", "gucika intege"],
|
| 6 |
+
"treatment": "Kubagwa, chemotherapy, radiotherapy"
|
| 7 |
+
},
|
| 8 |
+
"Diabetes": {
|
| 9 |
+
"symptoms": ["inyota nyinshi", "gucika intege", "kugabanuka k'ibiro"],
|
| 10 |
+
"treatment": "Insulin, imiti yo kugenzura isukari mu maraso"
|
| 11 |
+
},
|
| 12 |
+
"Flu": {
|
| 13 |
+
"symptoms": ["umuriro", "umutwe", "gukorora"],
|
| 14 |
+
"treatment": "Kuruhuka, imiti yo kugabanya umuriro nka paracetamol"
|
| 15 |
+
},
|
| 16 |
+
"COVID-19": {
|
| 17 |
+
"symptoms": ["umuriro", "guhumeka nabi", "kuruha", "kubura impumuro"],
|
| 18 |
+
"treatment": "Kuruhuka, gufata amazi menshi, imiti y’ibanze, kubonana na muganga"
|
| 19 |
+
},
|
| 20 |
+
"Malaria": {
|
| 21 |
+
"symptoms": ["umuriro", "gucika intege", "kubira ibyuya"],
|
| 22 |
+
"treatment": "Artemisinin-based combination therapy (ACT)"
|
| 23 |
+
},
|
| 24 |
+
"Tuberculosis": {
|
| 25 |
+
"symptoms": ["inkorora ikomeye", "umuriro", "gucika intege"],
|
| 26 |
+
"treatment": "Isoniazid, rifampicin, pyrazinamide, ethambutol"
|
| 27 |
+
},
|
| 28 |
+
"Asthma": {
|
| 29 |
+
"symptoms": ["guhumeka nabi", "kubura umwuka", "gukorora"],
|
| 30 |
+
"treatment": "Inhalers (bronchodilators, corticosteroids)"
|
| 31 |
+
},
|
| 32 |
+
"Hypertension": {
|
| 33 |
+
"symptoms": ["umutwe", "gukorora umutwe", "kuribwa mu mutima"],
|
| 34 |
+
"treatment": "Imiti igabanya umuvuduko w’amaraso nka ACE inhibitors, beta blockers"
|
| 35 |
+
},
|
| 36 |
+
"Stroke": {
|
| 37 |
+
"symptoms": ["kuribwa umutwe ukabije", "kubura ubushobozi bwo kugenda", "kudakora neza kw’uruhande rumwe rw’umubiri"],
|
| 38 |
+
"treatment": "Muganga hakenewe kwihutirwa, imiti ishinzwe kugabanya amaraso, kuboneza umuvuduko"
|
| 39 |
+
},
|
| 40 |
+
# ...shyiramo izindi ukoresheje ubu buryo, aha ndi kuzigabanya kubera umwanya
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 41 |
}
|
| 42 |
|
| 43 |
def susuzuma_indwara(ibimenyetso):
|
| 44 |
ibimenyetso = [i.strip().lower() for i in ibimenyetso.split(',')]
|
| 45 |
indwara_ishoboka = []
|
| 46 |
|
| 47 |
+
for indwara, data in indwara_dict.items():
|
| 48 |
+
symptoms = data["symptoms"]
|
| 49 |
+
treatment = data["treatment"]
|
| 50 |
count = sum(symptom in ibimenyetso for symptom in symptoms)
|
| 51 |
if count >= len(symptoms) / 2:
|
| 52 |
+
indwara_ishoboka.append(f"{indwara} (ibimenyetso bihuye: {count} / {len(symptoms)})\nImiti: {treatment}")
|
| 53 |
|
| 54 |
if indwara_ishoboka:
|
| 55 |
+
return "Indwara ishoboka hamwe n'imiti:\n\n" + "\n\n".join(indwara_ishoboka)
|
| 56 |
else:
|
| 57 |
return "Ntibishoboka kumenya indwara ishingiye ku bimenyetso watanze. Nyamuneka saba muganga."
|
| 58 |
|
| 59 |
with gr.Blocks(title="VIATEUR AI Kwamuganga") as iface:
|
| 60 |
textbox = gr.Textbox(
|
| 61 |
lines=3,
|
| 62 |
+
placeholder="Andika ibimenyetso byawe (urugero: umuriro, umutwe, gukorora)",
|
| 63 |
label="Ibimenyetso"
|
| 64 |
)
|
| 65 |
+
output = gr.Textbox(label="Indwara Ishoboka n'Imiti", lines=10)
|
| 66 |
+
submit_btn = gr.Button("Submit")
|
| 67 |
|
| 68 |
submit_btn.click(fn=susuzuma_indwara, inputs=textbox, outputs=output)
|
| 69 |
|