JamalAG's picture
Update app.py
68bf043 verified
import streamlit as st
from transformers import pipeline
import torch
MODEL_PATH = "HuggingFaceH4/zephyr-7b-beta"
def main():
st.title("Chatbot with Hugging Face Model")
# Check if the model is already saved locally
try:
pipe = pipeline("text-generation", model=MODEL_PATH, torch_dtype=torch.bfloat16, device_map="auto")
except:
# If not saved, load the model and save it
st.warning("Model not found locally. Downloading and saving the model. Please wait...")
pipe = pipeline("text-generation", model="HuggingFaceH4/zephyr-7b-beta", torch_dtype=torch.bfloat16, device_map="auto")
pipe.save_pretrained(MODEL_PATH)
# Define chat messages
messages = [
{"role": "system", "content": "You are a friendly chatbot who always responds in the style of a pirate"},
{"role": "user", "content": st.text_input("User Input", "How many helicopters can a human eat in one sitting?")},
]
# Generate response
prompt = pipe.tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
outputs = pipe(prompt, max_new_tokens=256, do_sample=True, temperature=0.7, top_k=50, top_p=0.95)
# Display generated text
st.text(outputs[0]["generated_text"])
if __name__ == "__main__":
main()