Core23 commited on
Commit
31df500
·
verified ·
1 Parent(s): f21e6d3

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -98
app.py CHANGED
@@ -1,114 +1,32 @@
1
- import os
2
- import openai
3
  import gradio as gr
4
  from transformers import pipeline
5
 
6
- # Set the OpenAI API key from your environment variable
7
- openai.api_key = os.getenv("OPENAI_API_KEY")
8
-
9
  # Initialize the transcription pipeline using a Hugging Face model
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.
43
- Lakini tangu 2012, na kuzariwa kwa sheria ya Ohada mu jamuri ya kidemokrasia ya kongo, kipande kia sheria ya bulongo kile
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,
58
- regime foncier, regime ya suretes, ina semea pa swali ya ma bulongo ya ku rimiapo na kuvukiapo yaku migini.
59
- Mwanamuke mwenye kuolewa eko na haki ya ku piana ma npango ile ilikiya ya bwana yake kama bwana anakufa.
60
- Ata kama bantu abadjue mana, kuolewa kuna tshionganisha kupata kwama mpango njo effet ya kuya mwenye kuolewa kuna saidia kupata mpango nakuyi tumikia. Badjane beko na avantage kupita bale bayaolewa.
61
- Kwa ukweli, nju ya kukosa kufunda banamuke bakumigini abadjue ma procedure yakupata ma pango na aba djue mufano yaku revendiquer na ku tshunga ma haki yabo.
62
- Regime ya ndoa ni kunji ya ma sheria ile iko na weka ma haki na mapashwa ya ba bibi na bwana tangu mwanzo ya ndoa yabo.
63
- Ma regime tatu ya ndoa mu jamuri ya kidemokrasia ya Kongo ni :
64
- 1. Regime ya ku kabulamana bintu : mu ile regime, akuna kintu kile kinawekwa pamoja. Kila mwana ndoa eko mwenye kintu kiake kile aripata kabla ndoa,
65
- na wakati banakuya mu ndoa.
66
- Faida :
67
- • Iyi regime iko na kabula muzuri bintu bia wanandoa nju yakusaidia kuriti bintu mu djamaa kutoka kubazazi.
68
-
69
- • Iyi inashauriwa wakati bintu bia wanandoa ao ma jamaa iko ya mana.
70
-
71
- • Ba créanciers ya ba bibi ao bwana abawezi kubeba bintu bia mwingine shisipo ye moya kwitshikia kuripa ndeni ya mwingine ;
72
- njo maana ba entrepreneurs ao bama kaji ya risques ba tshakulaka ile regime.
73
- Bubaya :
74
- • Kutshakula regime kama iyi aina garantie ya ulinzi kumbele ya ba creanciers (bale beko na dayi ndeni) nju banezi ku nyanganya bintu bia ba conjoints kama ndeni
75
- iribewa nju yakutengeneza nyumba ao kuripa masomo ya batoto (ni pamoya nama impôts ao ma charges sociales yasipokulipwa).
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",
84
- "content": transcribed_text
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(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)")
109
  ],
110
- description="Uliza Swali kuhusu haki and sheria za udongo",
111
  live=True
112
  )
113
 
114
- demo.launch()
 
1
+ import time
 
2
  import gradio as gr
3
  from transformers import pipeline
4
 
 
 
 
5
  # Initialize the transcription pipeline using a Hugging Face model
6
  pipe = pipeline(model="Ussen/whisper-medium-swc-drc-kat-1")
7
 
8
+ def transcribe_with_timing(audio):
9
+ # Start timing
10
+ start_time = time.time()
11
+
12
+ # Perform transcription
13
  text = pipe(audio)["text"]
14
+
15
+ # Calculate elapsed time
16
+ elapsed_time = time.time() - start_time
17
+
18
+ return text, f"Transcription time: {elapsed_time:.2f} seconds"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
 
20
+ # Create Gradio interface
21
  demo = gr.Interface(
22
+ fn=transcribe_with_timing,
23
  inputs=gr.Audio(type="filepath", label="Bonyeza kitufe cha kurekodi na uliza swali lako"),
24
  outputs=[
25
  gr.Textbox(label="Jibu (kwa njia ya maandishi)"),
26
+ gr.Textbox(label="Transcription Time")
27
  ],
28
+ description="Rekodi sauti yako na upate maandishi (Swahili ASR)",
29
  live=True
30
  )
31
 
32
+ demo.launch()