Spaces:
Sleeping
Sleeping
import streamlit as st | |
from openai import OpenAI # Changed import | |
# Set up OpenAI API key | |
client = OpenAI(api_key=st.secrets["OPENAI_API_KEY"]) # Changed to client | |
# Initialize session state for messages | |
if "messages" not in st.session_state: | |
st.session_state.messages = [] | |
# Display existing messages | |
for message in st.session_state.messages: | |
with st.chat_message(message["role"]): | |
st.markdown(message["content"]) | |
# Chat input | |
prompt = st.chat_input("Say something") | |
if prompt: | |
# Add user message to session state | |
st.session_state.messages.append({"role": "user", "content": prompt}) | |
with st.chat_message("user"): | |
st.markdown(prompt) | |
# Get OpenAI response | |
completion = client.chat.completions.create( # Changed to client | |
model="gpt-3.5-turbo", | |
messages=[ | |
{"role": m["role"], "content": m["content"]} | |
for m in st.session_state.messages | |
] | |
) | |
response = completion.choices[0].message.content | |
# Add assistant message to session state | |
st.session_state.messages.append({"role": "assistant", "content": response}) | |
with st.chat_message("assistant"): | |
st.markdown(response) |