Spaces:
Paused
Paused
visioncairgroup commited on
Commit ·
25c993b
1
Parent(s): fd5096e
Update app.py
Browse files
app.py
CHANGED
|
@@ -28,7 +28,6 @@ from minigpt4.runners import *
|
|
| 28 |
from minigpt4.tasks import *
|
| 29 |
|
| 30 |
import warnings
|
| 31 |
-
|
| 32 |
warnings.filterwarnings("ignore")
|
| 33 |
|
| 34 |
def parse_args():
|
|
@@ -383,14 +382,11 @@ def visualize_all_bbox_together(image, generation):
|
|
| 383 |
return pil_image, generation_colored
|
| 384 |
|
| 385 |
|
| 386 |
-
def gradio_reset(chat_state, img_list
|
| 387 |
if chat_state is not None:
|
| 388 |
chat_state.messages = []
|
| 389 |
if img_list is not None:
|
| 390 |
img_list = []
|
| 391 |
-
if isinstance(path_list, list):
|
| 392 |
-
for path in path_list:
|
| 393 |
-
os.remove(path)
|
| 394 |
return None, gr.update(value=None, interactive=True), gr.update(placeholder='Upload your image and chat',
|
| 395 |
interactive=True), chat_state, img_list
|
| 396 |
|
|
@@ -414,11 +410,12 @@ def example_trigger(text_input, image, upload_flag, replace_flag, img_list):
|
|
| 414 |
return upload_flag, replace_flag
|
| 415 |
|
| 416 |
|
| 417 |
-
def gradio_ask(user_message, chatbot, chat_state, gr_img, img_list, upload_flag, replace_flag
|
| 418 |
if len(user_message) == 0:
|
| 419 |
text_box_show = 'Input should not be empty!'
|
| 420 |
else:
|
| 421 |
text_box_show = ''
|
|
|
|
| 422 |
if isinstance(gr_img, dict):
|
| 423 |
gr_img, mask = gr_img['image'], gr_img['mask']
|
| 424 |
else:
|
|
@@ -451,10 +448,9 @@ def gradio_ask(user_message, chatbot, chat_state, gr_img, img_list, upload_flag,
|
|
| 451 |
visual_img, _ = visualize_all_bbox_together(gr_img, user_message)
|
| 452 |
if visual_img is not None:
|
| 453 |
file_path = save_tmp_img(visual_img)
|
| 454 |
-
path_list.append(file_path)
|
| 455 |
chatbot = chatbot + [[(file_path,), None]]
|
| 456 |
|
| 457 |
-
return text_box_show, chatbot, chat_state, img_list, upload_flag, replace_flag
|
| 458 |
|
| 459 |
|
| 460 |
def gradio_answer(chatbot, chat_state, img_list, temperature):
|
|
@@ -487,16 +483,16 @@ def gradio_stream_answer(chatbot, chat_state, img_list, temperature):
|
|
| 487 |
return chatbot, chat_state
|
| 488 |
|
| 489 |
|
| 490 |
-
def gradio_visualize(chatbot, gr_img
|
| 491 |
if isinstance(gr_img, dict):
|
| 492 |
gr_img, mask = gr_img['image'], gr_img['mask']
|
|
|
|
| 493 |
unescaped = reverse_escape(chatbot[-1][1])
|
| 494 |
visual_img, generation_color = visualize_all_bbox_together(gr_img, unescaped)
|
| 495 |
if visual_img is not None:
|
| 496 |
if len(generation_color):
|
| 497 |
chatbot[-1][1] = generation_color
|
| 498 |
file_path = save_tmp_img(visual_img)
|
| 499 |
-
path_list.append(file_path)
|
| 500 |
chatbot = chatbot + [[None, (file_path,)]]
|
| 501 |
|
| 502 |
return chatbot
|
|
@@ -585,7 +581,6 @@ with gr.Blocks() as demo:
|
|
| 585 |
|
| 586 |
upload_flag = gr.State(value=0)
|
| 587 |
replace_flag = gr.State(value=0)
|
| 588 |
-
path_list = gr.State(value=[])
|
| 589 |
image.upload(image_upload_trigger, [upload_flag, replace_flag, img_list], [upload_flag, replace_flag])
|
| 590 |
|
| 591 |
with gr.Row():
|
|
@@ -622,33 +617,33 @@ with gr.Blocks() as demo:
|
|
| 622 |
|
| 623 |
text_input.submit(
|
| 624 |
gradio_ask,
|
| 625 |
-
[text_input, chatbot, chat_state, image, img_list, upload_flag, replace_flag
|
| 626 |
-
[text_input, chatbot, chat_state, img_list, upload_flag, replace_flag
|
| 627 |
).success(
|
| 628 |
gradio_stream_answer,
|
| 629 |
[chatbot, chat_state, img_list, temperature],
|
| 630 |
[chatbot, chat_state]
|
| 631 |
).success(
|
| 632 |
gradio_visualize,
|
| 633 |
-
[chatbot, image
|
| 634 |
-
[chatbot
|
| 635 |
queue=False,
|
| 636 |
)
|
| 637 |
|
| 638 |
send.click(
|
| 639 |
gradio_ask,
|
| 640 |
-
[text_input, chatbot, chat_state, image, img_list, upload_flag, replace_flag
|
| 641 |
-
[text_input, chatbot, chat_state, img_list, upload_flag, replace_flag
|
| 642 |
).success(
|
| 643 |
gradio_stream_answer,
|
| 644 |
[chatbot, chat_state, img_list, temperature],
|
| 645 |
[chatbot, chat_state]
|
| 646 |
).success(
|
| 647 |
gradio_visualize,
|
| 648 |
-
[chatbot, image
|
| 649 |
-
[chatbot
|
| 650 |
)
|
| 651 |
|
| 652 |
-
clear.click(gradio_reset, [chat_state, img_list
|
| 653 |
|
| 654 |
demo.launch(enable_queue=True)
|
|
|
|
| 28 |
from minigpt4.tasks import *
|
| 29 |
|
| 30 |
import warnings
|
|
|
|
| 31 |
warnings.filterwarnings("ignore")
|
| 32 |
|
| 33 |
def parse_args():
|
|
|
|
| 382 |
return pil_image, generation_colored
|
| 383 |
|
| 384 |
|
| 385 |
+
def gradio_reset(chat_state, img_list):
|
| 386 |
if chat_state is not None:
|
| 387 |
chat_state.messages = []
|
| 388 |
if img_list is not None:
|
| 389 |
img_list = []
|
|
|
|
|
|
|
|
|
|
| 390 |
return None, gr.update(value=None, interactive=True), gr.update(placeholder='Upload your image and chat',
|
| 391 |
interactive=True), chat_state, img_list
|
| 392 |
|
|
|
|
| 410 |
return upload_flag, replace_flag
|
| 411 |
|
| 412 |
|
| 413 |
+
def gradio_ask(user_message, chatbot, chat_state, gr_img, img_list, upload_flag, replace_flag):
|
| 414 |
if len(user_message) == 0:
|
| 415 |
text_box_show = 'Input should not be empty!'
|
| 416 |
else:
|
| 417 |
text_box_show = ''
|
| 418 |
+
|
| 419 |
if isinstance(gr_img, dict):
|
| 420 |
gr_img, mask = gr_img['image'], gr_img['mask']
|
| 421 |
else:
|
|
|
|
| 448 |
visual_img, _ = visualize_all_bbox_together(gr_img, user_message)
|
| 449 |
if visual_img is not None:
|
| 450 |
file_path = save_tmp_img(visual_img)
|
|
|
|
| 451 |
chatbot = chatbot + [[(file_path,), None]]
|
| 452 |
|
| 453 |
+
return text_box_show, chatbot, chat_state, img_list, upload_flag, replace_flag
|
| 454 |
|
| 455 |
|
| 456 |
def gradio_answer(chatbot, chat_state, img_list, temperature):
|
|
|
|
| 483 |
return chatbot, chat_state
|
| 484 |
|
| 485 |
|
| 486 |
+
def gradio_visualize(chatbot, gr_img):
|
| 487 |
if isinstance(gr_img, dict):
|
| 488 |
gr_img, mask = gr_img['image'], gr_img['mask']
|
| 489 |
+
|
| 490 |
unescaped = reverse_escape(chatbot[-1][1])
|
| 491 |
visual_img, generation_color = visualize_all_bbox_together(gr_img, unescaped)
|
| 492 |
if visual_img is not None:
|
| 493 |
if len(generation_color):
|
| 494 |
chatbot[-1][1] = generation_color
|
| 495 |
file_path = save_tmp_img(visual_img)
|
|
|
|
| 496 |
chatbot = chatbot + [[None, (file_path,)]]
|
| 497 |
|
| 498 |
return chatbot
|
|
|
|
| 581 |
|
| 582 |
upload_flag = gr.State(value=0)
|
| 583 |
replace_flag = gr.State(value=0)
|
|
|
|
| 584 |
image.upload(image_upload_trigger, [upload_flag, replace_flag, img_list], [upload_flag, replace_flag])
|
| 585 |
|
| 586 |
with gr.Row():
|
|
|
|
| 617 |
|
| 618 |
text_input.submit(
|
| 619 |
gradio_ask,
|
| 620 |
+
[text_input, chatbot, chat_state, image, img_list, upload_flag, replace_flag],
|
| 621 |
+
[text_input, chatbot, chat_state, img_list, upload_flag, replace_flag], queue=False
|
| 622 |
).success(
|
| 623 |
gradio_stream_answer,
|
| 624 |
[chatbot, chat_state, img_list, temperature],
|
| 625 |
[chatbot, chat_state]
|
| 626 |
).success(
|
| 627 |
gradio_visualize,
|
| 628 |
+
[chatbot, image],
|
| 629 |
+
[chatbot],
|
| 630 |
queue=False,
|
| 631 |
)
|
| 632 |
|
| 633 |
send.click(
|
| 634 |
gradio_ask,
|
| 635 |
+
[text_input, chatbot, chat_state, image, img_list, upload_flag, replace_flag],
|
| 636 |
+
[text_input, chatbot, chat_state, img_list, upload_flag, replace_flag]
|
| 637 |
).success(
|
| 638 |
gradio_stream_answer,
|
| 639 |
[chatbot, chat_state, img_list, temperature],
|
| 640 |
[chatbot, chat_state]
|
| 641 |
).success(
|
| 642 |
gradio_visualize,
|
| 643 |
+
[chatbot, image],
|
| 644 |
+
[chatbot],
|
| 645 |
)
|
| 646 |
|
| 647 |
+
clear.click(gradio_reset, [chat_state, img_list], [chatbot, image, text_input, chat_state, img_list], queue=False)
|
| 648 |
|
| 649 |
demo.launch(enable_queue=True)
|