Spaces:
Sleeping
Sleeping
# import openai | |
# import gradio as gr | |
# import config | |
# openai.api_key = config.OPENAI_API_KEY | |
# messages = [ | |
# {"role": "system", "content":"You are an attachment and personality surveyor"}, | |
# {"role": "user", "content":"""ask me each question from this questionnaire and rewrite it as an open-ended question and wait for each response. Empathize with me and regularly ask for clarification why I answered with a certain response. Here is the questionnaire: | |
# What is your romantic partner's name? | |
# How did you two meet? | |
# When did you know you wanted to be with this person? | |
# Can you describe your relationship for me? | |
# How serious is your relationship? | |
# Have you thought about having kids with your romantic partner? | |
# What kind of parent do you want to be? | |
# If they didn't elaborate on the reason why, ask them "Why"? | |
# How did your relationship with your mother and father impact your plans to have children? | |
# What was your relationship with your mother like as a kid? | |
# How has your relationship with your mother changed since you were a kid? | |
# What was your relationship with your father like as a kid? | |
# How has your relationship with your mother like as a kid? | |
# After asking these questions, you can bid them farewell and thank them for their time. Show a lot of gratitude here. | |
# """} | |
# ] | |
# def convert_audio_to_text(audio): | |
# audio_file = open(audio, "rb") | |
# transcript = openai.Audio.transcribe("whisper-1", audio_file) | |
# return transcript | |
# def chatbot(input): | |
# # if input_type == "audio": | |
# # input = convert_audio_to_text(input) | |
# if input: | |
# messages.append({"role": "user", "content": input}) | |
# chat = openai.ChatCompletion.create( | |
# model="gpt-3.5-turbo", messages=messages | |
# ) | |
# reply = chat.choices[0].message.content | |
# messages.append({"role": "assistant", "content": reply}) | |
# return reply | |
# # Define the Gradio interfaces | |
# # text_interface = gr.Interface(fn=chatbot, inputs=gr.inputs.Textbox("Enter your message here"), outputs="text", title="Text Input") | |
# # audio_interface = gr.Interface(fn=chatbot, inputs=gr.inputs.Audio(source="microphone", type="numpy"), outputs="text", title="Audio Input") | |
# # inputs_text = gr.inputs.Textbox(lines=7, label="Chat with AI") | |
# # inputs_audio = gr.inputs.Audio(source="microphone", type="numpy") | |
# # outputs = gr.outputs.Textbox(label="Reply") | |
# # text_interface = gr.Interface(fn=chatbot, inputs=inputs_text, outputs=outputs, title="AttachmentBot", | |
# # description="Let me survey you about your attachment with certain people in your life", | |
# # theme="compact").launch(share=True) | |
# # audio_interface = gr.Interface(fn=chatbot, inputs=inputs_audio, outputs=outputs, title="AttachmentBot", | |
# # description="Let me survey you about your attachment with certain people in your life", | |
# # theme="compact").launch(share=True) | |
# # Create a tabbed interface | |
# # tabbed_interface = gr.TabbedInterface([text_interface, audio_interface]) | |
# # Launch the interface | |
# # tabbed_interface.launch(share=True) | |
# inputs = gr.inputs.Textbox(lines=7, label="Chat with AttachmentBot") | |
# outputs = gr.outputs.Textbox(label="Reply") | |
# gr.Interface(fn=chatbot, inputs=inputs, outputs=outputs, title="AttachmentBot", | |
# description="Let's learn more about the important relationships in your life. Type 'start' in the box below to begin.", | |
# theme="compact").launch() | |
import openai | |
import gradio as gr | |
import config | |
openai.api_key = config.OPENAI_API_KEY | |
initial_messages = [ | |
{"role": "system", "content":"You are an attachment and personality surveyor"}, | |
{"role": "user", "content":"""ask me each question from this questionnaire and rewrite it as an open ended question and wait for each response. Empathize with me and regularly ask for clarification why I answered with a certain response. Here is the questionnaire: | |
Can you describe your relationship with your mother or a mother-like figure in your life? | |
Do you usually discuss your problems and concerns with your mother or a mother-like figure? | |
"""}, | |
] | |
def chatbot(input): | |
if not hasattr(chatbot, "messages"): | |
chatbot.messages = initial_messages.copy() | |
if input: | |
chatbot.messages.append({"role": "user", "content": input}) | |
chat = openai.ChatCompletion.create( | |
model="gpt-3.5-turbo", messages=chatbot.messages | |
) | |
reply = chat.choices[0].message.content | |
chatbot.messages.append({"role": "assistant", "content": reply}) | |
conversation = "" | |
for message in chatbot.messages[2:]: | |
role = "You" if message["role"] == "user" else "AttachmentBot" | |
conversation += f"{role}: {message['content']}\n" | |
return conversation | |
inputs = gr.inputs.Textbox(lines=7, label="Chat with AttachmentBot") | |
outputs = gr.outputs.Textbox(label="Conversation") | |
gr.Interface(fn=chatbot, inputs=inputs, outputs=outputs, title="AttachmentBot", | |
description="Let me survey you about your attachment with certain people in your life, to begin enter start", | |
theme="compact").launch() | |