VENKATESH2005's picture
Update app.py
5c4d7a5 verified
import streamlit as st
from transformers import pipeline
# Set up page title and icon
st.set_page_config(page_title="🎭 Roleplay Chatbot", page_icon="πŸ€–")
# Load pre-trained chatbot model from Hugging Face
chatbot = pipeline("text-generation", model="nthakur/Mistral-7B-Instruct-v0.3-nomiracl-sft")
st.title("🎭 Roleplay AI Chatbot")
st.write("Chat with an AI character!")
# Initialize chat history
if "messages" not in st.session_state:
st.session_state["messages"] = []
# Display chat history
for message in st.session_state["messages"]:
avatar = "πŸ§™β€β™‚οΈ" if message["role"] == "assistant" else "πŸ§‘β€πŸ’»"
with st.chat_message(message["role"], avatar=avatar):
st.markdown(message["content"])
# User input field
user_input = st.chat_input("Type your message...")
if user_input:
# Add user input to chat history
st.session_state["messages"].append({"role": "user", "content": user_input})
# Show typing animation
with st.chat_message("assistant", avatar="πŸ§™β€β™‚οΈ"):
with st.spinner("Typing..."):
response = chatbot(user_input, max_length=100, do_sample=True, temperature=0.7)
bot_reply = response[0]["generated_text"]
st.markdown(bot_reply)
# Save bot response to chat history
st.session_state["messages"].append({"role": "assistant", "content": bot_reply})