Ridealist commited on
Commit
e2d11b6
1 Parent(s): 5a57e83

feat: expand video length limit

Browse files
Files changed (1) hide show
  1. src/obs_eval_gradio.py +17 -9
src/obs_eval_gradio.py CHANGED
@@ -12,39 +12,47 @@ from PIL import Image
12
 
13
  global_dict = {}
14
 
 
 
 
 
 
15
 
16
- def failure():
17
- raise gr.Error("This should fail!")
18
 
19
  def validate_api_key(api_key):
20
  client = openai.OpenAI(api_key=api_key)
21
 
22
  try:
23
  # Make your OpenAI API request here
24
- response = client.completions.create(
25
- prompt="Hello world",
26
- model="gpt-3.5-turbo-instruct"
 
 
27
  )
28
  except openai.RateLimitError as e:
29
  # Handle rate limit error (we recommend using exponential backoff)
30
  print(f"OpenAI API request exceeded rate limit: {e}")
31
  response = None
 
32
  pass
33
  except openai.APIConnectionError as e:
34
  # Handle connection error here
35
  print(f"Failed to connect to OpenAI API: {e}")
36
  response = None
 
37
  pass
38
  except openai.APIError as e:
39
  # Handle API error here, e.g. retry or log
40
  print(f"OpenAI API returned an API Error: {e}")
41
  response = None
 
42
  pass
43
 
44
  if response:
45
  return True
46
  else:
47
- raise gr.Error(f"OpenAI API returned an API Error")
48
 
49
 
50
  def _process_video(image_file):
@@ -59,8 +67,8 @@ def _process_video(image_file):
59
  _, buffer = cv2.imencode(".jpg", frame)
60
  base64Frames.append(base64.b64encode(buffer).decode("utf-8"))
61
  video.release()
62
- if len(base64Frames) > 700:
63
- raise gr.Warning(f"Video's play time is too long. (>20s)")
64
  print(len(base64Frames), "frames read.")
65
 
66
  if not base64Frames:
@@ -236,7 +244,7 @@ def main():
236
  lines=1
237
  )
238
  video_upload = gr.File(
239
- label="Upload your video (under 10 second video is the best..!)",
240
  file_types=["video"],
241
  )
242
  batch_size = gr.Number(
 
12
 
13
  global_dict = {}
14
 
15
+ ######
16
+ # SETTINGS
17
+ VIDEO_FRAME_LIMIT = 2000
18
+
19
+ ######
20
 
 
 
21
 
22
  def validate_api_key(api_key):
23
  client = openai.OpenAI(api_key=api_key)
24
 
25
  try:
26
  # Make your OpenAI API request here
27
+ response = client.chat.completions.create(
28
+ model="gpt-4",
29
+ messages=[
30
+ {"role": "user", "content": "Hello world"},
31
+ ]
32
  )
33
  except openai.RateLimitError as e:
34
  # Handle rate limit error (we recommend using exponential backoff)
35
  print(f"OpenAI API request exceeded rate limit: {e}")
36
  response = None
37
+ error = e
38
  pass
39
  except openai.APIConnectionError as e:
40
  # Handle connection error here
41
  print(f"Failed to connect to OpenAI API: {e}")
42
  response = None
43
+ error = e
44
  pass
45
  except openai.APIError as e:
46
  # Handle API error here, e.g. retry or log
47
  print(f"OpenAI API returned an API Error: {e}")
48
  response = None
49
+ error = e
50
  pass
51
 
52
  if response:
53
  return True
54
  else:
55
+ raise gr.Error(f"OpenAI returned an API Error: {error}")
56
 
57
 
58
  def _process_video(image_file):
 
67
  _, buffer = cv2.imencode(".jpg", frame)
68
  base64Frames.append(base64.b64encode(buffer).decode("utf-8"))
69
  video.release()
70
+ if len(base64Frames) > VIDEO_FRAME_LIMIT:
71
+ raise gr.Warning(f"Video's play time is too long. (>1m)")
72
  print(len(base64Frames), "frames read.")
73
 
74
  if not base64Frames:
 
244
  lines=1
245
  )
246
  video_upload = gr.File(
247
+ label="Upload your video (under 1 minute video is the best..!)",
248
  file_types=["video"],
249
  )
250
  batch_size = gr.Number(