Chat_bot / app.py
kartik2627's picture
Create app.py
a08b590 verified
import streamlit as st
# Title of the app
st.title("Enhanced Q&A Chatbot With OpenAI")
# Sidebar for settings
st.sidebar.title("Settings")
api_key = st.sidebar.text_input("Enter your OpenAI API Key:", type="password")
# Select the OpenAI model
engine = st.sidebar.selectbox("Select OpenAI model", ["gpt-4", "gpt-4-turbo", "gpt-4o"])
# Adjust response parameters
temperature = st.sidebar.slider("Temperature", min_value=0.0, max_value=1.0, value=0.7)
max_tokens = st.sidebar.slider("Max Tokens", min_value=50, max_value=300, value=150)
# Main interface for user input
st.write("Go ahead and ask any question:")
user_input = st.text_input("You:")
# Function to generate responses
def generate_response(user_input, api_key, engine, temperature, max_tokens):
import openai
openai.api_key = api_key
response = openai.Completion.create(
engine=engine,
prompt=user_input,
temperature=temperature,
max_tokens=max_tokens,
)
return response.choices[0].text.strip()
# Display response
if user_input and api_key:
try:
response = generate_response(user_input, api_key, engine, temperature, max_tokens)
st.write(response)
except Exception as e:
st.error(f"Error: {e}")
elif user_input:
st.warning("Please enter the OpenAI API Key in the sidebar.")
else:
st.write("Please provide user input.")