Spaces:
Sleeping
Sleeping
| import openai | |
| import gradio as gr | |
| import os | |
| openai.api_key = os.getenv("OPENAI_API_KEY") # Set this in your HF Space secret settings | |
| def chat_with_gpt4(user_question): | |
| # Few-shot prompt context | |
| prompt = f""" | |
| You are a helpful customer support assistant. | |
| Q: What is the return policy? | |
| A: You can return items within 30 days if they are in original condition. | |
| Q: How do I track my order? | |
| A: You will receive a tracking number via email once your order is shipped. | |
| Q: What payment methods do you accept? | |
| A: We accept credit cards, PayPal, and bank transfers. | |
| Q: {user_question} | |
| A: | |
| """ | |
| try: | |
| response = openai.ChatCompletion.create( | |
| model="gpt-4", | |
| messages=[ | |
| {"role": "system", "content": "You are a helpful customer support assistant."}, | |
| {"role": "user", "content": prompt} | |
| ], | |
| temperature=0.3, | |
| max_tokens=150, | |
| ) | |
| return response['choices'][0]['message']['content'].strip() | |
| except Exception as e: | |
| return f"Error: {str(e)}" | |
| iface = gr.Interface( | |
| fn=chat_with_gpt4, | |
| inputs=gr.Textbox(lines=2, placeholder="Ask a customer service question..."), | |
| outputs=gr.Textbox(label="GPT-4 Response"), | |
| title="Few-Shot Customer Support Chatbot (GPT-4)", | |
| description="This chatbot uses GPT-4 with few-shot prompting to answer customer support questions." | |
| ) | |
| if __name__ == "__main__": | |
| iface.launch() | |