Spaces:
Running
on
Zero
Running
on
Zero
Update app.py
Browse files
app.py
CHANGED
@@ -120,11 +120,11 @@ def update_placeholder(role):
|
|
120 |
|
121 |
|
122 |
def reset_components():
|
123 |
-
return ['pla', 'gnd', 'ver', 'ans'], 0, 256
|
124 |
|
125 |
|
126 |
@spaces.GPU
|
127 |
-
def main(video, prompt, role, temperature, max_new_tokens):
|
128 |
global model, processor, device
|
129 |
|
130 |
history = []
|
@@ -356,8 +356,7 @@ def main(video, prompt, role, temperature, max_new_tokens):
|
|
356 |
response += '\n| ID | Start Time | End Time | Confidence |'
|
357 |
response += '\n| :-: | :-: | :-: | :-: |'
|
358 |
|
359 |
-
|
360 |
-
for i, (p, c) in enumerate(zip(pred[:5], conf[:5])):
|
361 |
response += f'\n| {i} | {seconds_to_hms(p[0])} | {seconds_to_hms(p[1])} | {c:.2f} |'
|
362 |
|
363 |
response += f'\n\nTherefore, the target moment might happens from <span style="color:red">{seconds_to_hms(pred[0][0])}</span> to <span style="color:red">{seconds_to_hms(pred[0][1])}</span>.'
|
@@ -381,9 +380,8 @@ def main(video, prompt, role, temperature, max_new_tokens):
|
|
381 |
|
382 |
start_time = time.perf_counter()
|
383 |
|
384 |
-
# using top-5 predictions
|
385 |
prob = []
|
386 |
-
for i, cand in enumerate(pred[:
|
387 |
s0, e0 = parse_span(cand, duration, 2)
|
388 |
offset = (e0 - s0) / 2
|
389 |
s1, e1 = parse_span([s0 - offset, e0 + offset], duration)
|
@@ -593,6 +591,13 @@ def build_demo():
|
|
593 |
role.change(update_placeholder, role, prompt)
|
594 |
|
595 |
with gr.Accordion(label='Hyperparameters', open=False):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
596 |
temperature = gr.Slider(
|
597 |
0,
|
598 |
1,
|
@@ -616,12 +621,12 @@ def build_demo():
|
|
616 |
random_btn.click(random_sample, None, [video, prompt, role])
|
617 |
|
618 |
reset_btn = gr.ClearButton([video, prompt, chat], value='ποΈ Reset')
|
619 |
-
reset_btn.click(reset_components, None, [role, temperature, max_new_tokens])
|
620 |
|
621 |
submit_btn = gr.Button(value='π Submit', variant='primary')
|
622 |
-
|
623 |
-
|
624 |
-
|
625 |
|
626 |
gr.Examples(examples=EXAMPLES, inputs=[video, prompt, role], examples_per_page=3)
|
627 |
|
|
|
120 |
|
121 |
|
122 |
def reset_components():
|
123 |
+
return ['pla', 'gnd', 'ver', 'ans'], 5, 0, 256
|
124 |
|
125 |
|
126 |
@spaces.GPU
|
127 |
+
def main(video, prompt, role, max_candidates, temperature, max_new_tokens):
|
128 |
global model, processor, device
|
129 |
|
130 |
history = []
|
|
|
356 |
response += '\n| ID | Start Time | End Time | Confidence |'
|
357 |
response += '\n| :-: | :-: | :-: | :-: |'
|
358 |
|
359 |
+
for i, (p, c) in enumerate(zip(pred[:max_candidates], conf[:max_candidates])):
|
|
|
360 |
response += f'\n| {i} | {seconds_to_hms(p[0])} | {seconds_to_hms(p[1])} | {c:.2f} |'
|
361 |
|
362 |
response += f'\n\nTherefore, the target moment might happens from <span style="color:red">{seconds_to_hms(pred[0][0])}</span> to <span style="color:red">{seconds_to_hms(pred[0][1])}</span>.'
|
|
|
380 |
|
381 |
start_time = time.perf_counter()
|
382 |
|
|
|
383 |
prob = []
|
384 |
+
for i, cand in enumerate(pred[:max_candidates]):
|
385 |
s0, e0 = parse_span(cand, duration, 2)
|
386 |
offset = (e0 - s0) / 2
|
387 |
s1, e1 = parse_span([s0 - offset, e0 + offset], duration)
|
|
|
591 |
role.change(update_placeholder, role, prompt)
|
592 |
|
593 |
with gr.Accordion(label='Hyperparameters', open=False):
|
594 |
+
max_candidates = gr.Slider(
|
595 |
+
1,
|
596 |
+
100,
|
597 |
+
value=5,
|
598 |
+
interactive=True,
|
599 |
+
label='Max Candidate Moments',
|
600 |
+
info='The maximum number of candidate moments in Grounder (Default: 5)')
|
601 |
temperature = gr.Slider(
|
602 |
0,
|
603 |
1,
|
|
|
621 |
random_btn.click(random_sample, None, [video, prompt, role])
|
622 |
|
623 |
reset_btn = gr.ClearButton([video, prompt, chat], value='ποΈ Reset')
|
624 |
+
reset_btn.click(reset_components, None, [role, max_candidates, temperature, max_new_tokens])
|
625 |
|
626 |
submit_btn = gr.Button(value='π Submit', variant='primary')
|
627 |
+
ctx = submit_btn.click(disable_btns, None, [random_btn, reset_btn, submit_btn])
|
628 |
+
ctx = ctx.then(main, [video, prompt, role, max_candidates, temperature, max_new_tokens], chat)
|
629 |
+
ctx.then(enable_btns, None, [random_btn, reset_btn, submit_btn])
|
630 |
|
631 |
gr.Examples(examples=EXAMPLES, inputs=[video, prompt, role], examples_per_page=3)
|
632 |
|