Fixed state and image upload
Browse files
app.py
CHANGED
@@ -19,13 +19,14 @@ MODEL_DIR = './fromage_model/fromage_vis4'
|
|
19 |
|
20 |
class ChatBotCheese:
|
21 |
def __init__(self):
|
22 |
-
from huggingface_hub import hf_hub_download
|
23 |
-
model_ckpt_path = hf_hub_download("alvanlii/fromage", "pretrained_ckpt.pth.tar")
|
24 |
-
self.model = models.load_fromage(MODEL_DIR, model_ckpt_path)
|
|
|
25 |
self.curr_image = None
|
26 |
|
27 |
def add_image(self, state, image_in):
|
28 |
-
state = state + [(f"
|
29 |
self.curr_image = Image.open(image_in.name).convert('RGB')
|
30 |
return state, state
|
31 |
|
@@ -36,9 +37,9 @@ class ChatBotCheese:
|
|
36 |
|
37 |
def chat(self, input_text, state, ret_scale_factor, num_ims, num_words, temp, chat_state):
|
38 |
chat_state.append(f'Q: {input_text} \nA:')
|
39 |
-
chat_history = "
|
40 |
model_input = []
|
41 |
-
print(chat_history)
|
42 |
if self.curr_image is not None:
|
43 |
model_input = [self.curr_image, chat_history]
|
44 |
else:
|
@@ -55,7 +56,7 @@ class ChatBotCheese:
|
|
55 |
for im_name in im_names:
|
56 |
response += f'<img src="/file={im_name}">'
|
57 |
state.append((input_text, response.replace("[RET]", "")))
|
58 |
-
|
59 |
return state, state, chat_state
|
60 |
|
61 |
def reset(self):
|
@@ -111,10 +112,7 @@ class ChatBotCheese:
|
|
111 |
txt.submit(lambda :"", None, txt)
|
112 |
btn.upload(self.add_image, [gr_state, btn], [gr_state, chatbot])
|
113 |
reset_btn.click(self.reset, [], [gr_state, chatbot, gr_chat_state])
|
114 |
-
|
115 |
-
# chatbot.change(fn = upload_button_config, outputs=btn_upload)
|
116 |
-
# text_in.submit(None, [], [], _js = "() => document.getElementById('#chatbot-component').scrollTop = document.getElementById('#chatbot-component').scrollHeight")
|
117 |
-
|
118 |
demo.launch(share=False, server_name="0.0.0.0")
|
119 |
|
120 |
def main():
|
|
|
19 |
|
20 |
class ChatBotCheese:
|
21 |
def __init__(self):
|
22 |
+
# from huggingface_hub import hf_hub_download
|
23 |
+
# model_ckpt_path = hf_hub_download("alvanlii/fromage", "pretrained_ckpt.pth.tar")
|
24 |
+
# self.model = models.load_fromage(MODEL_DIR, model_ckpt_path)
|
25 |
+
self.model = models.load_fromage(MODEL_DIR)
|
26 |
self.curr_image = None
|
27 |
|
28 |
def add_image(self, state, image_in):
|
29 |
+
state = state + [(f'<img src="/file={image_in.name}">', "Ok, now type your message")]
|
30 |
self.curr_image = Image.open(image_in.name).convert('RGB')
|
31 |
return state, state
|
32 |
|
|
|
37 |
|
38 |
def chat(self, input_text, state, ret_scale_factor, num_ims, num_words, temp, chat_state):
|
39 |
chat_state.append(f'Q: {input_text} \nA:')
|
40 |
+
chat_history = "".join(chat_state)
|
41 |
model_input = []
|
42 |
+
# print(chat_history)
|
43 |
if self.curr_image is not None:
|
44 |
model_input = [self.curr_image, chat_history]
|
45 |
else:
|
|
|
56 |
for im_name in im_names:
|
57 |
response += f'<img src="/file={im_name}">'
|
58 |
state.append((input_text, response.replace("[RET]", "")))
|
59 |
+
self.curr_image = None
|
60 |
return state, state, chat_state
|
61 |
|
62 |
def reset(self):
|
|
|
112 |
txt.submit(lambda :"", None, txt)
|
113 |
btn.upload(self.add_image, [gr_state, btn], [gr_state, chatbot])
|
114 |
reset_btn.click(self.reset, [], [gr_state, chatbot, gr_chat_state])
|
115 |
+
|
|
|
|
|
|
|
116 |
demo.launch(share=False, server_name="0.0.0.0")
|
117 |
|
118 |
def main():
|