File size: 929 Bytes
2d11cde
33bc31b
2d11cde
33bc31b
 
2d11cde
33bc31b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2d11cde
 
33bc31b
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
import gradio as gr
import openai

from dotenv import load_dotenv
import os

load_dotenv()

openai.api_key = os.getenv("OPENAI_API_KEY")

messages = [{"role": "system", "content": "You are a teacher"}]


def transcribe(audio):
    global messages
    file = open(audio, "rb")
    transcription = openai.Audio.transcribe("whisper-1", file)
    print(transcription)
    messages.append({"role": "user", "content": transcription["text"]})
    response = openai.ChatCompletion.create(model="gpt-3.5-turbo", messages=messages)

    AImessage = response["choices"][0]["message"]["content"]
    
    messages.append({"role": "assistant", "content": AImessage})
    chat = ""
    for message in messages:
        if message["role"] != "system":
            chat += message["role"] + ":" + message["content"] + "\n\n"
    return chat


ui = gr.Interface(
    fn=transcribe, inputs=gr.Audio(type="filepath"), outputs="text"
)

ui.launch()