pyresearch commited on
Commit
0c95c30
·
verified ·
1 Parent(s): af77804

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -30
app.py CHANGED
@@ -1,42 +1,30 @@
1
  import streamlit as st
2
- import transformers
3
  from transformers import AutoTokenizer, AutoModelForCausalLM
4
  import torch
5
 
6
- # Load the Phi 2 model and tokenizer
7
- tokenizer = AutoTokenizer.from_pretrained(
8
- "microsoft/phi-2",
9
- trust_remote_code=True
10
- )
11
 
12
- model = AutoModelForCausalLM.from_pretrained(
13
- # "kroonen/phi-2-GGUF",
14
- "microsoft/phi-2",
15
- device_map="auto",
16
- trust_remote_code=True,
17
- torch_dtype=torch.float32
18
- )
19
 
20
- # Streamlit UI
21
- st.title("Microsoft Phi 2 Streamlit App")
22
 
23
- # User input prompt
24
- prompt = st.text_area("Enter your prompt:", """Write a short summary about how to create a healthy lifestyle.""")
25
-
26
- # Generate output based on user input
27
- if st.button("Generate Output"):
28
  with torch.no_grad():
29
- token_ids = tokenizer.encode(prompt, add_special_tokens=False, return_tensors="pt",
30
- return_attention_mask=False
31
- )
32
  output_ids = model.generate(
33
  token_ids.to(model.device),
34
- # max_new_tokens=512,
35
  do_sample=True,
36
- temperature=0.3,
37
- max_length=200
38
  )
39
-
40
- output = tokenizer.decode(output_ids[0][token_ids.size(1):])
41
- st.text("Generated Output:")
42
- st.write(output)
 
 
1
  import streamlit as st
 
2
  from transformers import AutoTokenizer, AutoModelForCausalLM
3
  import torch
4
 
5
+ # Load model and tokenizer
6
+ tokenizer = AutoTokenizer.from_pretrained("microsoft/phi-2", trust_remote_code=True)
7
+ model = AutoModelForCausalLM.from_pretrained("microsoft/phi-2", torch_dtype="auto", device_map="auto", trust_remote_code=True)
 
 
8
 
9
+ # Streamlit app
10
+ st.title("Text Generation with Transformers")
 
 
 
 
 
11
 
12
+ # Input prompt
13
+ prompt = st.text_input("Enter your prompt:")
14
 
15
+ # Generate button
16
+ if st.button("Generate"):
 
 
 
17
  with torch.no_grad():
18
+ # Tokenize and generate output
19
+ token_ids = tokenizer.encode(prompt, add_special_tokens=False, return_tensors="pt")
 
20
  output_ids = model.generate(
21
  token_ids.to(model.device),
22
+ max_new_tokens=512,
23
  do_sample=True,
24
+ temperature=0.1
 
25
  )
26
+
27
+ # Decode and display the generated text
28
+ generated_text = tokenizer.decode(output_ids[0][token_ids.size(1):])
29
+ st.text("Generated Text:")
30
+ st.text(generated_text)