Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -10,36 +10,33 @@ openai.api_key = os.getenv("OPENAI_API_KEY")
|
|
10 |
pipe = pipeline(model="Ussen/whisper-medium-swc-drc-kat-1")
|
11 |
|
12 |
def transcribe(audio):
|
13 |
-
# Use the pipeline to transcribe audio to text
|
14 |
text = pipe(audio)["text"]
|
15 |
return text
|
16 |
|
17 |
def generate_response(transcribed_text):
|
18 |
-
# Call the OpenAI ChatCompletion API directly
|
19 |
response = openai.ChatCompletion.create(
|
20 |
model="gpt-4",
|
21 |
messages=[
|
22 |
{
|
23 |
"role": "system",
|
24 |
-
"content": (
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
"role": "user",
|
30 |
-
"content": "Mambo vipi?"
|
31 |
},
|
|
|
32 |
{
|
33 |
"role": "assistant",
|
34 |
-
"content": (
|
35 |
-
|
36 |
-
|
37 |
-
"role": "user",
|
38 |
-
"content": "haki za ardhi za wanawake Congo?"
|
39 |
},
|
|
|
40 |
{
|
41 |
"role": "assistant",
|
42 |
-
"content": (
|
|
|
43 |
ku ongezwa na sheria namba 80-008 ya le 18/07/1980, ile ina semezea pa régime foncier et immobilier na régime des suretés.
|
44 |
Iyi sheria ayangarie paka regime juridique ya kutumikia bulongo, lakini inanaria pia « regime general des biens »,
|
45 |
kwanzia ku article 1 nakufikia ku article 52 na « regime des suretes » kwanzia ku article 245 nakufikia ku article 396.
|
@@ -47,15 +44,14 @@ def generate_response(transcribed_text):
|
|
47 |
kinangaria regime des sûretés kinakombozwa na acte unisaforme ya Ohada ile inasemea regime des sûretés.
|
48 |
193 articles bule ya mu loi foncière inasemea regime foncier et immobilier (kwanzia ku article 53 nafikia ku article 244) ;
|
49 |
njo ile ma articles ile inawekwa mu disposition ya bale banatumikiaka bulongo (population), bakubwa ba inchi bale banagariaka
|
50 |
-
mambo ya bulongo (autorités foncières et cadastrales) na ba batshunga sheria (ba avocats na ba magistrats).
|
51 |
-
|
52 |
-
{
|
53 |
-
"role": "user",
|
54 |
-
"content": "Sheria za Ardhi nchini Congo"
|
55 |
},
|
|
|
56 |
{
|
57 |
"role": "assistant",
|
58 |
-
"content": (
|
|
|
59 |
certificat ya enregistrement, kukosa kwa makuta, incapacité juridique ya mwanamuke mwenye kuolewa, obligation ya autorisation ya bwana yake.
|
60 |
Sheria nᴼ11/022 ya 24/12/2011 ile ina semea ma principes ya musingi ile inangaria agriculture, ina semea accès équitable ya bulongo ile banamuke bakumigini banekalaka ba victimes sana.
|
61 |
Ku migini (milieux ruraux), kupata kwa ma mpango kuna fwatana ma kizazi na chefu wa clan. Lakini, kutumikiya kwa loi nᴼ73 ya le 20/07/1973 vile ili badishwa ina semea regime general,
|
@@ -80,37 +76,8 @@ def generate_response(transcribed_text):
|
|
80 |
|
81 |
• Ma akounti (comptes) ile barifungula nakuweka pamoya makutamu mu ndoa inezi kuleta shida wakati wakwatshana na ita lomba kuonesha kule kuritoya ile makuta.
|
82 |
|
83 |
-
• Wakati wa kifo, ule anabakiya anapashwatu ku tegemea paka pabintu biake nju ya ku garantir maisha yake ya kumbele nju kama akuna testament, ata patatu paka ¼ ya biote bile barikuya bia ule anakufwa.
|
84 |
-
|
85 |
-
Mu iyi regime, banandoa beko naweka pamoya bintu bile bari pata mu ndoa (na ma ndeni ile bibi ao bwana aribeba). Ni kanuni ya kusaidiana mu ndoa).
|
86 |
-
Faida:
|
87 |
-
• Wakati wa kifo, ule ana bakiya ata beba kipande ya bintu pashipo kuripia.
|
88 |
-
|
89 |
-
• Wakati yakwatshana, biko teke teke ku kabula bintu nju bintu biote bile biriuziwa mu ndoa ni bia kila muntu (kipande kipande).
|
90 |
-
Bubaya:
|
91 |
-
• Kama Bibi ao bwana eko na ndeni, mupinda ndeni anezi ku beba bintu bia mwenye ndeni ao bia mwingine.
|
92 |
-
|
93 |
-
• Kama mumoja ana uzisha kintu kiake na anauza bintu bingine, bile bintu ni paka biake ye moya. Lakini, inafai ule mwenye kuzisha oneshe kwa ukweli kule kunatokea makuta;
|
94 |
-
lakini bamingi abafwanyake vile. Vile, familia ya mwanandoa moya inezi kuogopa kumupa kintu nju kile kintu kishingie mu ile regime ya communautee.
|
95 |
-
|
96 |
-
• Mu wakati ya kwatshana, ma account iko teke teke kufwanya lakini iyi oneshaketu kwa ukweli makuta ya kila muntu.
|
97 |
-
|
98 |
-
• Kutshangia kwa bintu pamoya kunezi ku leta mambo nju ma decisions ya maana (kuzisha bintu, etc…) kunapashwa kufanishikwa paka na masikilizano ya ba banandoa bote bawiri.
|
99 |
-
3. Regime ya communaute universelle: mu iyi regime bintu bile ba bibi na bwana baripata kabla ya ndoa na katika ndoa binawekwa pamoya pasipo kwangalia siku ile bariipata na mufano bariipata.
|
100 |
-
Faida:
|
101 |
-
• Ile regime iko na saidia kupitia conjoint (bibi ao bwana) bintu pasipo kuripa makuta ya succession.
|
102 |
-
|
103 |
-
• Mu wakati ya kifo, batoto abataripa droit ya succession, paka ku lufu ya muzazi wa piri.
|
104 |
-
Bubaya:
|
105 |
-
• Batoto batapata abattement successoraux paka mala moya,
|
106 |
-
|
107 |
-
• Ma ndeni anikwa ya bote bawiri ata kama ni moya ari kopa kabla ya ao mu ndoa,
|
108 |
-
|
109 |
-
• Ma bintu ile banandoa bari pata mu ndoa inakwa yabo bote bawiri ila kama kuko musikilizano ingine mu contrat yabo ya ndoa.
|
110 |
-
|
111 |
-
• Wakati ya kwatshana, bintu bita kaburiwa kipande kipande pashipo kwangaria kule biritokea ao namuna bariipata,
|
112 |
-
|
113 |
-
• Risque ya bukonvi kama kuna kuya batoto ba kitanda kiakwanza.""")
|
114 |
},
|
115 |
{
|
116 |
"role": "user",
|
@@ -118,28 +85,24 @@ def generate_response(transcribed_text):
|
|
118 |
},
|
119 |
],
|
120 |
)
|
121 |
-
# Return the content of the first message from the assistant
|
122 |
return response.choices[0].message.content
|
123 |
|
124 |
def inference(text):
|
125 |
# Placeholder for a text-to-speech API call.
|
126 |
-
# Since OpenAI does not offer an official TTS endpoint, we'll simulate TTS output.
|
127 |
output_file = "tts_output.mp3"
|
128 |
with open(output_file, "wb") as f:
|
129 |
f.write(b"Dummy audio data for TTS output")
|
130 |
return output_file
|
131 |
|
132 |
def process_audio_and_respond(audio):
|
133 |
-
# Process audio: transcribe, generate a response, and produce TTS output.
|
134 |
text = transcribe(audio)
|
135 |
response_text = generate_response(text)
|
136 |
output_file = inference(response_text)
|
137 |
return response_text, output_file
|
138 |
|
139 |
-
# Updated Gradio interface syntax
|
140 |
demo = gr.Interface(
|
141 |
fn=process_audio_and_respond,
|
142 |
-
inputs=gr.Audio(
|
143 |
outputs=[
|
144 |
gr.Textbox(label="Jibu (kwa njia ya maandishi)"),
|
145 |
gr.Audio(type="filepath", label="Jibu kwa njia ya sauti (Bofya kusikiliza Jibu)")
|
|
|
10 |
pipe = pipeline(model="Ussen/whisper-medium-swc-drc-kat-1")
|
11 |
|
12 |
def transcribe(audio):
|
|
|
13 |
text = pipe(audio)["text"]
|
14 |
return text
|
15 |
|
16 |
def generate_response(transcribed_text):
|
|
|
17 |
response = openai.ChatCompletion.create(
|
18 |
model="gpt-4",
|
19 |
messages=[
|
20 |
{
|
21 |
"role": "system",
|
22 |
+
"content": (
|
23 |
+
"All your answers should be in Congolese Swahili only, understand Swahili and France so here we start. "
|
24 |
+
"Before you answer read the context in this chart find the best answer create a good summary and provide the answer maintaining Congolese Swahili... "
|
25 |
+
"Mimi ni Haki des femmes AI bot iliyoundwa na Core23Lab. Mimi ni msaidizi wa sauti ya haki ya kumiliki ardhi kwa wanawake nchini DRC. Nikusaidie vipi!"
|
26 |
+
)
|
|
|
|
|
27 |
},
|
28 |
+
{"role": "user", "content": "Mambo vipi?"},
|
29 |
{
|
30 |
"role": "assistant",
|
31 |
+
"content": (
|
32 |
+
"Mimi ni Haki des femmes AI bot iliyoundwa na Core23Lab. Mimi ni msaidizi wa sauti ya haki ya kumiliki ardhi kwa wanawake nchini DRC. Nikusaidie vipi"
|
33 |
+
)
|
|
|
|
|
34 |
},
|
35 |
+
{"role": "user", "content": "haki za ardhi za wanawake Congo?"},
|
36 |
{
|
37 |
"role": "assistant",
|
38 |
+
"content": (
|
39 |
+
"""Sheria au loi ile inangaria bulongo mu jamuri ya kidemokrasia ya kongo ni sheria namba 73-021 ya le 20/07/1973, ile iribadirishwa na
|
40 |
ku ongezwa na sheria namba 80-008 ya le 18/07/1980, ile ina semezea pa régime foncier et immobilier na régime des suretés.
|
41 |
Iyi sheria ayangarie paka regime juridique ya kutumikia bulongo, lakini inanaria pia « regime general des biens »,
|
42 |
kwanzia ku article 1 nakufikia ku article 52 na « regime des suretes » kwanzia ku article 245 nakufikia ku article 396.
|
|
|
44 |
kinangaria regime des sûretés kinakombozwa na acte unisaforme ya Ohada ile inasemea regime des sûretés.
|
45 |
193 articles bule ya mu loi foncière inasemea regime foncier et immobilier (kwanzia ku article 53 nafikia ku article 244) ;
|
46 |
njo ile ma articles ile inawekwa mu disposition ya bale banatumikiaka bulongo (population), bakubwa ba inchi bale banagariaka
|
47 |
+
mambo ya bulongo (autorités foncières et cadastrales) na ba batshunga sheria (ba avocats na ba magistrats)."""
|
48 |
+
)
|
|
|
|
|
|
|
49 |
},
|
50 |
+
{"role": "user", "content": "Sheria za Ardhi nchini Congo"},
|
51 |
{
|
52 |
"role": "assistant",
|
53 |
+
"content": (
|
54 |
+
"""Sheria aiandike kukatazwa ata kumoya kufwatana na sexe ao bingine nju ya haki yaku tumikia domaine foncier. Lakini, banamuke kiloko njo beko napata ma mpango nju ya kukosa kujua ma procedures,
|
55 |
certificat ya enregistrement, kukosa kwa makuta, incapacité juridique ya mwanamuke mwenye kuolewa, obligation ya autorisation ya bwana yake.
|
56 |
Sheria nᴼ11/022 ya 24/12/2011 ile ina semea ma principes ya musingi ile inangaria agriculture, ina semea accès équitable ya bulongo ile banamuke bakumigini banekalaka ba victimes sana.
|
57 |
Ku migini (milieux ruraux), kupata kwa ma mpango kuna fwatana ma kizazi na chefu wa clan. Lakini, kutumikiya kwa loi nᴼ73 ya le 20/07/1973 vile ili badishwa ina semea regime general,
|
|
|
76 |
|
77 |
• Ma akounti (comptes) ile barifungula nakuweka pamoya makutamu mu ndoa inezi kuleta shida wakati wakwatshana na ita lomba kuonesha kule kuritoya ile makuta.
|
78 |
|
79 |
+
• Wakati wa kifo, ule anabakiya anapashwatu ku tegemea paka pabintu biake nju ya ku garantir maisha yake ya kumbele nju kama akuna testament, ata patatu paka ¼ ya biote bile barikuya bia ule anakufwa."""
|
80 |
+
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
81 |
},
|
82 |
{
|
83 |
"role": "user",
|
|
|
85 |
},
|
86 |
],
|
87 |
)
|
|
|
88 |
return response.choices[0].message.content
|
89 |
|
90 |
def inference(text):
|
91 |
# Placeholder for a text-to-speech API call.
|
|
|
92 |
output_file = "tts_output.mp3"
|
93 |
with open(output_file, "wb") as f:
|
94 |
f.write(b"Dummy audio data for TTS output")
|
95 |
return output_file
|
96 |
|
97 |
def process_audio_and_respond(audio):
|
|
|
98 |
text = transcribe(audio)
|
99 |
response_text = generate_response(text)
|
100 |
output_file = inference(response_text)
|
101 |
return response_text, output_file
|
102 |
|
|
|
103 |
demo = gr.Interface(
|
104 |
fn=process_audio_and_respond,
|
105 |
+
inputs=gr.Audio(record=True, type="filepath", label="Bonyeza kitufe cha kurekodi na uliza swali lako"),
|
106 |
outputs=[
|
107 |
gr.Textbox(label="Jibu (kwa njia ya maandishi)"),
|
108 |
gr.Audio(type="filepath", label="Jibu kwa njia ya sauti (Bofya kusikiliza Jibu)")
|