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 |
|