Spaces:
Sleeping
Sleeping
| import os | |
| import streamlit as st | |
| from dotenv import load_dotenv | |
| from langchain.chat_models import ChatOpenAI | |
| from langchain.schema import HumanMessage | |
| # Load environment variables | |
| load_dotenv() | |
| # Set OpenAI API key | |
| openai_api_key = os.getenv("OPENAI_API_KEY") | |
| # Initialize ChatOpenAI | |
| chat = ChatOpenAI(api_key=openai_api_key) | |
| # Streamlit app setup | |
| st.title("Football Chatbot") | |
| # Initialize session state for conversation history | |
| if 'history' not in st.session_state: | |
| st.session_state.history = [] | |
| def get_openai_response(prompt): | |
| try: | |
| response = chat([HumanMessage(content=prompt)]) | |
| message = response.content.strip() | |
| return message | |
| except Exception as e: | |
| return str(e) | |
| def main(): | |
| st.write("Ask anything about football and get responses from the chatbot!") | |
| user_input = st.text_input("You: ", "") | |
| if st.button("Send"): | |
| if user_input: | |
| response = get_openai_response(user_input) | |
| st.session_state.history.append(("You: ", user_input)) | |
| st.session_state.history.append(("Chatbot: ", response)) | |
| # Display conversation history | |
| for sender, message in st.session_state.history: | |
| st.write(f"{sender} {message}") | |
| if __name__ == "__main__": | |
| main() | |