ali222 / app.py
Alinadi98's picture
Upload app.py
6d6f847 verified
# -*- coding: utf-8 -*-
"""Untitled124.ipynb
Automatically generated by Colab.
Original file is located at
https://colab.research.google.com/drive/1eRfHwY6L9mCxrk1jljgVTuofsuoZP3AN
"""
# Commented out IPython magic to ensure Python compatibility.
# %%writefile app.py
# import streamlit as st
# from transformers import AutoTokenizer, AutoModelForCausalLM, pipeline
#
# # Set up the title of the app
# st.title("🤖 Chatbot with Mistral-7B-Instruct-v0.3")
#
# # Load the Mistral-7B-Instruct-v0.3 model
# @st.cache_resource # Cache the model to avoid reloading on every interaction
# def load_model():
# model_name = "mistralai/Mistral-7B-Instruct-v0.3"
# tokenizer = AutoTokenizer.from_pretrained(model_name)
# model = AutoModelForCausalLM.from_pretrained(model_name, device_map="auto", torch_dtype="auto")
# return pipeline("text-generation", model=model, tokenizer=tokenizer)
#
# generator = load_model()
#
# # Initialize session state to store chat history
# if "messages" not in st.session_state:
# st.session_state.messages = []
#
# # Display chat history
# for message in st.session_state.messages:
# with st.chat_message(message["role"]):
# st.markdown(message["content"])
#
# # Input from user
# if prompt := st.chat_input("What is up?"):
# # Add user message to chat history
# st.session_state.messages.append({"role": "user", "content": prompt})
# with st.chat_message("user"):
# st.markdown(prompt)
#
# # Generate a response using the Mistral model
# with st.chat_message("assistant"):
# # Format the prompt for instruction-following
# formatted_prompt = f"<s>[INST] {prompt} [/INST]"
# response = generator(formatted_prompt, max_length=100, num_return_sequences=1)[0]["generated_text"]
# # Extract only the assistant's response
# assistant_response = response.split("[/INST]")[-1].strip()
# st.markdown(assistant_response)
#
# # Add assistant response to chat history
# st.session_state.messages.append({"role": "assistant", "content": assistant_response})