import streamlit as st import openai import os # Set the OpenAI API key from Hugging Face Secrets openai.api_key = os.getenv('API_KEY') st.title("ChatGPT-powered Chatbot") # Initialize session state to store the conversation if 'messages' not in st.session_state: st.session_state.messages = [] # Display previous messages for message in st.session_state.messages: st.write(f"**{message['role'].capitalize()}:** {message['content']}") # Input for user message user_input = st.text_input("You:", "") if user_input: # Add user message to session state st.session_state.messages.append({"role": "user", "content": user_input}) # Prepare messages for API call messages = [{"role": msg["role"], "content": msg["content"]} for msg in st.session_state.messages] # Call OpenAI API response = openai.ChatCompletion.create( model="gpt-3.5-turbo", messages=messages ) # Get assistant's reply assistant_reply = response['choices'][0]['message']['content'] # Add assistant's reply to session state st.session_state.messages.append({"role": "assistant", "content": assistant_reply}) # Display assistant's reply st.write(f"**Assistant:** {assistant_reply}")