Core23 commited on
Commit
7932190
·
verified ·
1 Parent(s): 0d1bbbe

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +20 -57
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": ("All your answers should be in Congolese Swahili only, understand Swahili and France so here we start. "
25
- "Before you answer read the context in this chart find the best answer create a good summary and provide the answer maintaining Congolese Swahili... "
26
- "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!")
27
- },
28
- {
29
- "role": "user",
30
- "content": "Mambo vipi?"
31
  },
 
32
  {
33
  "role": "assistant",
34
- "content": ("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")
35
- },
36
- {
37
- "role": "user",
38
- "content": "haki za ardhi za wanawake Congo?"
39
  },
 
40
  {
41
  "role": "assistant",
42
- "content": ("""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
 
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": ("""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,
 
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
- 2. Regime ya kutshangia bile wanandoa bana pata mu bukweri (communauté des biens réduits aux acquêts) :
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(source="microphone", type="filepath", label="Bonyeza kitufe cha kurekodi na uliza swali lako"),
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)")