File size: 1,672 Bytes
bd3e2e4
3b38860
 
 
bd3e2e4
 
 
 
 
3b38860
bd3e2e4
 
82f0eab
 
 
 
 
 
 
 
 
 
 
bd3e2e4
 
 
82f0eab
 
bd3e2e4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
cc06fc8
3b38860
 
bd3e2e4
 
3b38860
bd3e2e4
 
 
3b38860
bd3e2e4
1
2
3
4
5
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import gradio as gr
from faster_whisper import WhisperModel

model = WhisperModel("tiny")

def generate_response(correction_intensity,
                      language_level,
                      buddy_personality,
                      language_choice,
                      user_query_audio
                      ):
    # Convert input audio to text

    language_codes = {'English':'en',
                     'Urdu':'ur',
                     'Japanese':'ja'}

    user_query_transcribed_segments, info = model.transcribe(
        audio=user_query_audio,
        language=language_codes[language_choice]
        )
    user_query_transcribed = list(user_query_transcribed_segments)[0].text.strip()

    # Ask llm for response to text
    # Convert llm response to audio
    # Return converted llm response
    
    return user_query_transcribed

demo = gr.Interface(
    fn=generate_response,
    inputs=[
        gr.Slider(
            minimum=1,
            maximum=5,
            step=1,
            label='Grammar Correction Intensity'
        ),
        gr.Dropdown(
            choices=['Beginner', 'Intermediate', 'Advanced'],
            label='Language Level'),
        gr.Dropdown(
            choices=['Formal Teacher', 'Flirty Friend', 'Sarcastic Bro'],
            label='Language Buddy Personality'),
        gr.Dropdown(
            choices=['English', 'Urdu', 'Japanese'],
            label='Language Choice'),
        gr.Audio(
            sources='microphone',
            show_download_button=True,
            type='filepath'
        )],
    outputs=[
        gr.Textbox(label='AI Buddy Response')
    ],
    title="AI Language Buddy"
)

demo.launch()