jslin09 commited on
Commit
02897df
1 Parent(s): 59c9e49

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -1
app.py CHANGED
@@ -7,4 +7,27 @@ model = AutoModelForCausalLM.from_pretrained("jslin09/bloom-560m-finetuned-fraud
7
 
8
  def predict(input, history=[]):
9
  # tokenize the new input sentence
10
- new_user_input_ids = tokenizer.encode(input + tokenizer.eos_token, return_tensors='pt')
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
 
8
  def predict(input, history=[]):
9
  # tokenize the new input sentence
10
+ new_user_input_ids = tokenizer.encode(input + tokenizer.eos_token, return_tensors='pt')
11
+
12
+ # append the new user input tokens to the chat history
13
+ bot_input_ids = torch.cat([torch.LongTensor(history), new_user_input_ids], dim=-1)
14
+
15
+ # generate a response
16
+ history = model.generate(bot_input_ids, max_length=1000, pad_token_id=tokenizer.eos_token_id).tolist()
17
+
18
+ # convert the tokens to text, and then split the responses into lines
19
+ response = tokenizer.decode(history[0]).split("<|endoftext|>")
20
+ response = [(response[i], response[i+1]) for i in range(0, len(response)-1, 2)] # convert to tuples of list
21
+ return response, history
22
+
23
+ with gr.Blocks() as demo:
24
+ chatbot = gr.Chatbot()
25
+ state = gr.State([])
26
+
27
+ with gr.Row():
28
+ txt = gr.Textbox(show_label=False, placeholder="Enter text and press enter").style(container=False)
29
+
30
+ txt.submit(predict, [txt, state], [chatbot, state])
31
+
32
+ if __name__ == "__main__":
33
+ demo.launch()