Spaces:
Runtime error
Runtime error
Upload 84 files
Browse filesThis view is limited to 50 files because it contains too many changes.
See raw diff
- .gitattributes +47 -0
- demo/__init__.py +8 -0
- demo/__pycache__/__init__.cpython-310.pyc +0 -0
- demo/__pycache__/agent.cpython-310.pyc +0 -0
- demo/__pycache__/theme.cpython-310.pyc +0 -0
- demo/agent.py +105 -0
- demo/bot.png +0 -0
- demo/food/14456664_117_IMG_8176.jpeg +3 -0
- demo/food/14456664_126_86838F28-912B-42A4-80C1-BD060B649081.jpeg +0 -0
- demo/food/14456664_127_1E703639-9169-4EB4-8A5D-3B1E226F639B.jpeg +3 -0
- demo/food/14456664_129_IMG_20220605_181308.jpg +0 -0
- demo/food/14456664_130_IMG_20220605_180820.jpg +0 -0
- demo/food/14456664_133_IMG_20220709_153436.jpg +0 -0
- demo/food/14456664_134_IMG_20220709_153652.jpg +0 -0
- demo/food/14456664_136_IMG_20220709_233905.jpg +0 -0
- demo/food/14456664_137_IMG_20220717_143941.jpg +0 -0
- demo/food/14456664_139_IMG_0917-EDIT.jpg +0 -0
- demo/food/14456664_141_IMG_1724.jpg +0 -0
- demo/food/14456664_147_IMG_20190225_184723.jpg +0 -0
- demo/food/14456664_149_IMG_20180812_182400.jpg +0 -0
- demo/food/14456664_14_IMG_20220721_150241.jpg +3 -0
- demo/food/14456664_150_IMG_20181218_190852.jpg +0 -0
- demo/food/14456664_153_IMG_20240411_102841.jpg +3 -0
- demo/food/14456664_155_IMG_20240403_094547.jpg +3 -0
- demo/food/14456664_158_IMG_20240416_141427.jpg +3 -0
- demo/food/14456664_159_IMG_20240416_140243.jpg +3 -0
- demo/food/14456664_187_mmexport1713446177339.jpg +3 -0
- demo/food/14456664_19_IMG_0395.jpeg +3 -0
- demo/food/14456664_201_mmexport1713452408322.jpg +0 -0
- demo/food/14456664_217_IMG_3854.jpeg +3 -0
- demo/food/14456664_22_IMG_20240404_135935.jpg +3 -0
- demo/food/14456664_236_IMG_4742.jpeg +3 -0
- demo/food/14456664_238_d370e16ff482d13a0718c6fb4cd7ffbb.jpeg +0 -0
- demo/food/14456664_239_mmexport1713518196678.jpg +0 -0
- demo/food/14456664_26_IMG_3472.jpeg +0 -0
- demo/food/14456664_34_IMG_0400.jpeg +3 -0
- demo/food/14456664_36_20240410160819.jpg +0 -0
- demo/food/14456664_40_IMG_20170613_190017.jpg +3 -0
- demo/food/14456664_41_IMG_20190216_124017.jpeg +0 -0
- demo/food/14456664_50_mmexport1712821641752.jpg +0 -0
- demo/food/14456664_61_mmexport1550554859117.jpg +3 -0
- demo/food/14456664_64_IMG_20240409_181047.jpg +3 -0
- demo/food/14456664_68_IMG_0971.jpeg +3 -0
- demo/food/14456664_70_IMG_0581.jpeg +3 -0
- demo/food/14456664_72_IMG_0618.jpeg +3 -0
- demo/food/14456664_80_IMG_6323.jpeg +3 -0
- demo/food/14456664_82_MVIMG_20240413_161454.jpeg +0 -0
- demo/food/14456664_87_IMG_5316.jpeg +3 -0
- demo/food/14456664_88_wx_camera_1712730236546.jpg +3 -0
- demo/food/14521898_108_IMG_6205.jpeg +3 -0
.gitattributes
CHANGED
@@ -33,3 +33,50 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
36 |
+
demo/food/14456664_117_IMG_8176.jpeg filter=lfs diff=lfs merge=lfs -text
|
37 |
+
demo/food/14456664_127_1E703639-9169-4EB4-8A5D-3B1E226F639B.jpeg filter=lfs diff=lfs merge=lfs -text
|
38 |
+
demo/food/14456664_14_IMG_20220721_150241.jpg filter=lfs diff=lfs merge=lfs -text
|
39 |
+
demo/food/14456664_153_IMG_20240411_102841.jpg filter=lfs diff=lfs merge=lfs -text
|
40 |
+
demo/food/14456664_155_IMG_20240403_094547.jpg filter=lfs diff=lfs merge=lfs -text
|
41 |
+
demo/food/14456664_158_IMG_20240416_141427.jpg filter=lfs diff=lfs merge=lfs -text
|
42 |
+
demo/food/14456664_159_IMG_20240416_140243.jpg filter=lfs diff=lfs merge=lfs -text
|
43 |
+
demo/food/14456664_187_mmexport1713446177339.jpg filter=lfs diff=lfs merge=lfs -text
|
44 |
+
demo/food/14456664_19_IMG_0395.jpeg filter=lfs diff=lfs merge=lfs -text
|
45 |
+
demo/food/14456664_217_IMG_3854.jpeg filter=lfs diff=lfs merge=lfs -text
|
46 |
+
demo/food/14456664_22_IMG_20240404_135935.jpg filter=lfs diff=lfs merge=lfs -text
|
47 |
+
demo/food/14456664_236_IMG_4742.jpeg filter=lfs diff=lfs merge=lfs -text
|
48 |
+
demo/food/14456664_34_IMG_0400.jpeg filter=lfs diff=lfs merge=lfs -text
|
49 |
+
demo/food/14456664_40_IMG_20170613_190017.jpg filter=lfs diff=lfs merge=lfs -text
|
50 |
+
demo/food/14456664_61_mmexport1550554859117.jpg filter=lfs diff=lfs merge=lfs -text
|
51 |
+
demo/food/14456664_64_IMG_20240409_181047.jpg filter=lfs diff=lfs merge=lfs -text
|
52 |
+
demo/food/14456664_68_IMG_0971.jpeg filter=lfs diff=lfs merge=lfs -text
|
53 |
+
demo/food/14456664_70_IMG_0581.jpeg filter=lfs diff=lfs merge=lfs -text
|
54 |
+
demo/food/14456664_72_IMG_0618.jpeg filter=lfs diff=lfs merge=lfs -text
|
55 |
+
demo/food/14456664_80_IMG_6323.jpeg filter=lfs diff=lfs merge=lfs -text
|
56 |
+
demo/food/14456664_87_IMG_5316.jpeg filter=lfs diff=lfs merge=lfs -text
|
57 |
+
demo/food/14456664_88_wx_camera_1712730236546.jpg filter=lfs diff=lfs merge=lfs -text
|
58 |
+
demo/food/14521898_108_IMG_6205.jpeg filter=lfs diff=lfs merge=lfs -text
|
59 |
+
demo/food/14521898_109_IMG_5997.jpeg filter=lfs diff=lfs merge=lfs -text
|
60 |
+
demo/food/14521898_112_IMG_3570.jpeg filter=lfs diff=lfs merge=lfs -text
|
61 |
+
demo/food/14521898_117_IMG_1362.jpeg filter=lfs diff=lfs merge=lfs -text
|
62 |
+
demo/food/14521898_122_53D0E884-E012-4FFA-8BD7-8F5666A53123.jpeg filter=lfs diff=lfs merge=lfs -text
|
63 |
+
demo/food/14521898_14_IMG_3852.jpeg filter=lfs diff=lfs merge=lfs -text
|
64 |
+
demo/food/14521898_144_IMG_8800.jpeg filter=lfs diff=lfs merge=lfs -text
|
65 |
+
demo/food/14521898_162_IMG_0356.jpeg filter=lfs diff=lfs merge=lfs -text
|
66 |
+
demo/food/14521898_168_D4D36C59-2D68-4354-B05C-B3065F6581AA.jpeg filter=lfs diff=lfs merge=lfs -text
|
67 |
+
demo/food/14521898_174_IMG_8019.jpeg filter=lfs diff=lfs merge=lfs -text
|
68 |
+
demo/food/14521898_183_IMG_20240502_122921.jpg filter=lfs diff=lfs merge=lfs -text
|
69 |
+
demo/food/14521898_209_IMG_3105.jpeg filter=lfs diff=lfs merge=lfs -text
|
70 |
+
demo/food/14521898_211_IMG_9139.jpeg filter=lfs diff=lfs merge=lfs -text
|
71 |
+
demo/food/14521898_237_IMG_5909.jpeg filter=lfs diff=lfs merge=lfs -text
|
72 |
+
demo/food/14521898_257_79874AA6-4F23-4AD6-96E2-7F64039A81C0.jpeg filter=lfs diff=lfs merge=lfs -text
|
73 |
+
demo/food/14521898_261_0E3192C7-1B0D-4C4D-9788-5E7A5E6E92BA.jpeg filter=lfs diff=lfs merge=lfs -text
|
74 |
+
demo/food/14521898_262_75B3AEDF-C705-400B-AE86-3FA7A92B624C.jpeg filter=lfs diff=lfs merge=lfs -text
|
75 |
+
demo/food/14521898_265_1C4A3265-A18E-46C2-A264-4384B85A49C0.jpeg filter=lfs diff=lfs merge=lfs -text
|
76 |
+
demo/food/14521898_44_930F3702-FC28-498F-A5A7-9E01AA5AEA15.jpeg filter=lfs diff=lfs merge=lfs -text
|
77 |
+
demo/food/14521898_55_IMG_8533.jpeg filter=lfs diff=lfs merge=lfs -text
|
78 |
+
demo/food/14521898_65_IMG_20240424_121225.jpg filter=lfs diff=lfs merge=lfs -text
|
79 |
+
demo/food/14521898_75_IMG_8637.jpeg filter=lfs diff=lfs merge=lfs -text
|
80 |
+
demo/food/14521898_79_IMG_2612.jpeg filter=lfs diff=lfs merge=lfs -text
|
81 |
+
demo/food/14521898_80_IMG_2613.jpeg filter=lfs diff=lfs merge=lfs -text
|
82 |
+
demo/food/14521898_82_IMG_9847.jpeg filter=lfs diff=lfs merge=lfs -text
|
demo/__init__.py
ADDED
@@ -0,0 +1,8 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from demo.agent import ConversationalAgent
|
2 |
+
from demo.theme import CustomTheme
|
3 |
+
|
4 |
+
|
5 |
+
__all__ = [
|
6 |
+
"ConversationalAgent",
|
7 |
+
"CustomTheme",
|
8 |
+
]
|
demo/__pycache__/__init__.cpython-310.pyc
ADDED
Binary file (267 Bytes). View file
|
|
demo/__pycache__/agent.cpython-310.pyc
ADDED
Binary file (3.4 kB). View file
|
|
demo/__pycache__/theme.cpython-310.pyc
ADDED
Binary file (2.12 kB). View file
|
|
demo/agent.py
ADDED
@@ -0,0 +1,105 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import os
|
2 |
+
import logging
|
3 |
+
from datetime import datetime
|
4 |
+
|
5 |
+
import gradio as gr
|
6 |
+
from PIL import Image
|
7 |
+
|
8 |
+
from lmdeploy import pipeline, TurbomindEngineConfig, GenerationConfig, ChatTemplateConfig
|
9 |
+
from lmdeploy.vl import load_image
|
10 |
+
|
11 |
+
class ConversationalAgent:
|
12 |
+
def __init__(self,
|
13 |
+
model_path,
|
14 |
+
outputs_dir) -> None:
|
15 |
+
self.pipe = pipeline(model_path,
|
16 |
+
chat_template_config=ChatTemplateConfig(model_name='internvl2-internlm2'),
|
17 |
+
backend_config=TurbomindEngineConfig(session_len=8192))
|
18 |
+
self.uploaded_images_storage = os.path.join(outputs_dir, "uploaded")
|
19 |
+
self.uploaded_images_storage = os.path.abspath(self.uploaded_images_storage)
|
20 |
+
os.makedirs(self.uploaded_images_storage, exist_ok=True)
|
21 |
+
self.sess = None
|
22 |
+
|
23 |
+
def start_chat(self, chat_state):
|
24 |
+
self.sess = None
|
25 |
+
self.context = ""
|
26 |
+
self.current_image_id = -1
|
27 |
+
self.image_list = []
|
28 |
+
self.pixel_values_list = []
|
29 |
+
self.seen_image_idx = []
|
30 |
+
logging.info("=" * 30 + "Start Chat" + "=" * 30)
|
31 |
+
|
32 |
+
return (
|
33 |
+
#gr.update(interactive=False), # [image] Image
|
34 |
+
gr.update(interactive=True, placeholder='input the text.'), # [input_text] Textbox
|
35 |
+
gr.update(interactive=False), # [start_btn] Button
|
36 |
+
gr.update(interactive=True), # [clear_btn] Button
|
37 |
+
gr.update(interactive=True), # [image] Image
|
38 |
+
gr.update(interactive=True), # [upload_btn] Button
|
39 |
+
chat_state # [chat_state] State
|
40 |
+
)
|
41 |
+
|
42 |
+
def restart_chat(self, chat_state):
|
43 |
+
self.sess = None
|
44 |
+
self.context = ""
|
45 |
+
self.current_image_id = -1
|
46 |
+
self.image_list = []
|
47 |
+
self.pixel_values_list = []
|
48 |
+
self.seen_image_idx = []
|
49 |
+
|
50 |
+
logging.info("=" * 30 + "End Chat" + "=" * 30)
|
51 |
+
|
52 |
+
return (
|
53 |
+
None, # [chatbot] Chatbot
|
54 |
+
#gr.update(value=None, interactive=True), # [image] Image
|
55 |
+
gr.update(interactive=False, placeholder="Please click the <Start Chat> button to start chat!"), # [input_text] Textbox
|
56 |
+
gr.update(interactive=True), # [start] Button
|
57 |
+
gr.update(interactive=False), # [clear] Button
|
58 |
+
gr.update(value=None, interactive=False), # [image] Image
|
59 |
+
gr.update(interactive=False), # [upload_btn] Button
|
60 |
+
chat_state # [chat_state] State
|
61 |
+
)
|
62 |
+
|
63 |
+
def upload_image(self, image: Image.Image, chat_history: gr.Chatbot, chat_state: gr.State):
|
64 |
+
logging.info(f"type(image): {type(image)}")
|
65 |
+
|
66 |
+
self.image_list.append(image)
|
67 |
+
save_image_path = os.path.join(self.uploaded_images_storage, "{}.jpg".format(len(os.listdir(self.uploaded_images_storage))))
|
68 |
+
image.save(save_image_path)
|
69 |
+
logging.info(f"image save path: {save_image_path}")
|
70 |
+
chat_history.append((gr.HTML(f'<img src="./file={save_image_path}" style="width: 200px; height: auto; display: inline-block;">'), "Received."))
|
71 |
+
|
72 |
+
return None, chat_history, chat_state
|
73 |
+
|
74 |
+
def respond(
|
75 |
+
self,
|
76 |
+
message,
|
77 |
+
image,
|
78 |
+
chat_history: gr.Chatbot,
|
79 |
+
top_p,
|
80 |
+
temperature,
|
81 |
+
chat_state,
|
82 |
+
):
|
83 |
+
current_time = datetime.now().strftime("%b%d-%H:%M:%S")
|
84 |
+
logging.info(f"Time: {current_time}")
|
85 |
+
logging.info(f"User: {message}")
|
86 |
+
gen_config = GenerationConfig(top_p=top_p, temperature=temperature)
|
87 |
+
chat_input = message
|
88 |
+
if image is not None:
|
89 |
+
save_image_path = os.path.join(self.uploaded_images_storage, "{}.jpg".format(len(os.listdir(self.uploaded_images_storage))))
|
90 |
+
image.save(save_image_path)
|
91 |
+
logging.info(f"image save path: {save_image_path}")
|
92 |
+
chat_input = (message, image)
|
93 |
+
if self.sess is None:
|
94 |
+
self.sess = self.pipe.chat(chat_input, gen_config=gen_config)
|
95 |
+
else:
|
96 |
+
self.sess = self.pipe.chat(chat_input, session=self.sess, gen_config=gen_config)
|
97 |
+
response = self.sess.response.text
|
98 |
+
if image is not None:
|
99 |
+
chat_history.append((gr.HTML(f'{message}\n\n<img src="./file={save_image_path}" style="width: 200px; height: auto; display: inline-block;">'), response))
|
100 |
+
else:
|
101 |
+
chat_history.append((message, response))
|
102 |
+
|
103 |
+
logging.info(f"generated text = \n{response}")
|
104 |
+
|
105 |
+
return "", None, chat_history, chat_state
|
demo/bot.png
ADDED
![]() |
demo/food/14456664_117_IMG_8176.jpeg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_126_86838F28-912B-42A4-80C1-BD060B649081.jpeg
ADDED
![]() |
demo/food/14456664_127_1E703639-9169-4EB4-8A5D-3B1E226F639B.jpeg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_129_IMG_20220605_181308.jpg
ADDED
![]() |
demo/food/14456664_130_IMG_20220605_180820.jpg
ADDED
![]() |
demo/food/14456664_133_IMG_20220709_153436.jpg
ADDED
![]() |
demo/food/14456664_134_IMG_20220709_153652.jpg
ADDED
![]() |
demo/food/14456664_136_IMG_20220709_233905.jpg
ADDED
![]() |
demo/food/14456664_137_IMG_20220717_143941.jpg
ADDED
![]() |
demo/food/14456664_139_IMG_0917-EDIT.jpg
ADDED
![]() |
demo/food/14456664_141_IMG_1724.jpg
ADDED
![]() |
demo/food/14456664_147_IMG_20190225_184723.jpg
ADDED
![]() |
demo/food/14456664_149_IMG_20180812_182400.jpg
ADDED
![]() |
demo/food/14456664_14_IMG_20220721_150241.jpg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_150_IMG_20181218_190852.jpg
ADDED
![]() |
demo/food/14456664_153_IMG_20240411_102841.jpg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_155_IMG_20240403_094547.jpg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_158_IMG_20240416_141427.jpg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_159_IMG_20240416_140243.jpg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_187_mmexport1713446177339.jpg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_19_IMG_0395.jpeg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_201_mmexport1713452408322.jpg
ADDED
![]() |
demo/food/14456664_217_IMG_3854.jpeg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_22_IMG_20240404_135935.jpg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_236_IMG_4742.jpeg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_238_d370e16ff482d13a0718c6fb4cd7ffbb.jpeg
ADDED
![]() |
demo/food/14456664_239_mmexport1713518196678.jpg
ADDED
![]() |
demo/food/14456664_26_IMG_3472.jpeg
ADDED
![]() |
demo/food/14456664_34_IMG_0400.jpeg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_36_20240410160819.jpg
ADDED
![]() |
demo/food/14456664_40_IMG_20170613_190017.jpg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_41_IMG_20190216_124017.jpeg
ADDED
![]() |
demo/food/14456664_50_mmexport1712821641752.jpg
ADDED
![]() |
demo/food/14456664_61_mmexport1550554859117.jpg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_64_IMG_20240409_181047.jpg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_68_IMG_0971.jpeg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_70_IMG_0581.jpeg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_72_IMG_0618.jpeg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_80_IMG_6323.jpeg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_82_MVIMG_20240413_161454.jpeg
ADDED
![]() |
demo/food/14456664_87_IMG_5316.jpeg
ADDED
![]() |
Git LFS Details
|
demo/food/14456664_88_wx_camera_1712730236546.jpg
ADDED
![]() |
Git LFS Details
|
demo/food/14521898_108_IMG_6205.jpeg
ADDED
![]() |
Git LFS Details
|