File size: 894 Bytes
b409e48
90ba62d
 
af14490
b409e48
 
 
 
 
 
 
 
 
 
 
 
90ba62d
b409e48
 
 
 
90ba62d
b409e48
 
90ba62d
 
b409e48
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
import openai
import gradio as gr
import os

def chat_with_openai(prompt, history=[]):
    messages = [{"role": "system", "content": "You are a helpful assistant."}]
    for user_msg, bot_msg in history:
        messages.append({"role": "user", "content": user_msg})
        messages.append({"role": "assistant", "content": bot_msg})
    messages.append({"role": "user", "content": prompt})
    
    response = openai.ChatCompletion.create(
        model="gpt-4",  # Change to "gpt-4" if needed
        messages=messages
    )
    return response["choices"][0]["message"]["content"]

def chatbot_interface(user_input, chat_history):
    response = chat_with_openai(user_input, chat_history)
    chat_history.append((user_input, response))
    return response, chat_history

# Create a Gradio interface
demo = gr.ChatInterface(fn=chatbot_interface)

if __name__ == "__main__":
    demo.launch()