cyrus28214 commited on
Commit
fc93bc3
·
verified ·
1 Parent(s): 8ead0a1

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +24 -11
app.py CHANGED
@@ -2,13 +2,17 @@ import gradio as gr
2
  from transformers import AutoProcessor, Qwen2_5_VLForConditionalGeneration, TextIteratorStreamer
3
  from qwen_vl_utils import process_vision_info
4
  from threading import Thread
5
- import torch
6
  import spaces
7
 
8
- MODEL_ID = "Qwen/Qwen2.5-VL-7B-Instruct"
9
- processor = AutoProcessor.from_pretrained(MODEL_ID, trust_remote_code=True)
 
 
 
 
 
10
  model = Qwen2_5_VLForConditionalGeneration.from_pretrained(
11
- MODEL_ID, torch_dtype="auto", device_map="auto"
12
  )
13
 
14
  @spaces.GPU
@@ -28,6 +32,8 @@ def respond(
28
  "content": system_message
29
  }]
30
 
 
 
31
  for message in chat_history:
32
  if isinstance(message["content"], str):
33
  messages.append({
@@ -45,15 +51,22 @@ def respond(
45
  ]
46
  })
47
 
48
- messages.append(
49
- {
50
  "role": "user",
51
  "content": [
52
  { "type": "text", "text": text },
53
- *[{"type": "image", "image": image} for image in files]
54
  ]
55
- }
56
- )
 
 
 
 
 
 
 
 
57
  image_inputs, video_inputs = process_vision_info(messages)
58
  prompt = processor.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
59
  inputs = processor(
@@ -65,7 +78,7 @@ def respond(
65
  ).to(model.device)
66
 
67
  streamer = TextIteratorStreamer(processor, skip_prompt=True, skip_special_tokens=True)
68
- generation_kwargs = dict(inputs, streamer=streamer, max_new_tokens=max_tokens, temperature=temperature, top_p=top_p)
69
 
70
  thread = Thread(target=model.generate, kwargs=generation_kwargs)
71
  thread.start()
@@ -93,4 +106,4 @@ demo = gr.ChatInterface(
93
  ],
94
  )
95
 
96
- demo.launch(debug=True)
 
2
  from transformers import AutoProcessor, Qwen2_5_VLForConditionalGeneration, TextIteratorStreamer
3
  from qwen_vl_utils import process_vision_info
4
  from threading import Thread
 
5
  import spaces
6
 
7
+ file_path = "csfufu/Revisual-R1-final"
8
+
9
+ processor = AutoProcessor.from_pretrained(
10
+ file_path,
11
+ min_pixels=256*28*28,
12
+ max_pixels=1280*28*28
13
+ )
14
  model = Qwen2_5_VLForConditionalGeneration.from_pretrained(
15
+ file_path, torch_dtype="auto", device_map="auto"
16
  )
17
 
18
  @spaces.GPU
 
32
  "content": system_message
33
  }]
34
 
35
+ print(chat_history)
36
+
37
  for message in chat_history:
38
  if isinstance(message["content"], str):
39
  messages.append({
 
51
  ]
52
  })
53
 
54
+ if text:
55
+ messages.append({
56
  "role": "user",
57
  "content": [
58
  { "type": "text", "text": text },
 
59
  ]
60
+ })
61
+
62
+ for file in files:
63
+ messages.append({
64
+ "role": "user",
65
+ "content": [
66
+ { "type": "image", "image": file }
67
+ ]
68
+ })
69
+
70
  image_inputs, video_inputs = process_vision_info(messages)
71
  prompt = processor.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
72
  inputs = processor(
 
78
  ).to(model.device)
79
 
80
  streamer = TextIteratorStreamer(processor, skip_prompt=True, skip_special_tokens=True)
81
+ generation_kwargs = dict(**inputs, streamer=streamer, max_new_tokens=max_tokens, temperature=temperature, top_p=top_p)
82
 
83
  thread = Thread(target=model.generate, kwargs=generation_kwargs)
84
  thread.start()
 
106
  ],
107
  )
108
 
109
+ demo.launch(debug=True)