Spaces:
Sleeping
Sleeping
import gradio as gr | |
from llama_index import GPTVectorStoreIndex, SimpleDirectoryReader, Prompt | |
import openai | |
system_prompt = [ | |
{ | |
"role" : "system", | |
"content" : "你是一个非常厉害的音乐制作人,毕业于伯克利音乐学院,专业是音乐制作,你在和弦编配上有独特的见解,擅长用局部离调的方式营造歌曲给人的新鲜感" | |
} | |
] | |
def respond(message, chat_history): | |
re_messages = system_prompt | |
for chat in chat_history: | |
re_messages.append({"role": "user", "content": chat[0]}) | |
re_messages.append({"role": "assistant", "content": chat[1]}) | |
re_messages.append({"role": "user", "content": message}) | |
re_chat_completion = openai.ChatCompletion.create( | |
model='gpt-3.5-turbo', | |
messages=re_messages, | |
temperature=0.7 | |
) | |
bot_message = re_chat_completion.choices[0].message.content | |
chat_history.append((message, bot_message)) | |
return "", chat_history | |
with gr.Blocks() as demo: | |
open_ai_key = gr.Textbox(label='OpenAI API Key', placeholder='输入你的OpenAI API Key') | |
openai.api_key = open_ai_key | |
chatbot = gr.Chatbot(label='历史会话') | |
msg = gr.Textbox(label='回车输入') | |
msg.submit(respond, [msg, chatbot], [msg, chatbot]) | |
demo.launch(share=True) | |