Gen-Sim commited on
Commit
4f5cd05
·
1 Parent(s): 690fc19

Update gensim/sim_runner.py

Browse files
Files changed (1) hide show
  1. gensim/sim_runner.py +24 -19
gensim/sim_runner.py CHANGED
@@ -9,7 +9,7 @@ import imageio
9
 
10
  from pygments import highlight
11
  from pygments.lexers import PythonLexer
12
- from pygments.formatters import TerminalFormatter
13
  import gradio
14
  import time
15
  import random
@@ -31,6 +31,7 @@ class SimulationRunner:
31
  self.agent = agent
32
  self.critic = critic
33
  self.memory = memory
 
34
 
35
  # statistics
36
  self.syntax_pass_rate = 0
@@ -107,8 +108,8 @@ class SimulationRunner:
107
  self.generated_task_programs.append(self.generated_code)
108
  self.generated_task_names.append(self.generated_task_name)
109
  except:
110
- to_print = highlight(f"{str(traceback.format_exc())}", PythonLexer(), TerminalFormatter())
111
- print("Task Creation Exception:", to_print)
112
 
113
  raise gradio.Error(f"Task Creation Exception: {str(traceback.format_exc())}")
114
  self.task_creation_pass = False
@@ -127,30 +128,32 @@ class SimulationRunner:
127
 
128
  # self.generated_task = {'task-name': 'TASK_NAME_TEMPLATE', 'task-description': 'TASK_STRING_TEMPLATE', 'assets-used': ['ASSET_1', 'ASSET_2', Ellipsis]}
129
  print("generated_task\n", self.generated_task)
130
- yield "Task Generated ==>", None, None
131
  self.generated_asset = self.agent.propose_assets()
132
  print("generated_asset\n", self.generated_asset)
133
- yield "Task Generated ==> Asset Generated ==> ", None, None
134
  self.agent.api_review()
135
- yield "Task Generated ==> Asset Generated ==> API Reviewed ==> ", None, None
136
  self.critic.error_review(self.generated_task)
137
- yield "Task Generated ==> Asset Generated ==> API Reviewed ==> Error Reviewed ==> ", None, None
138
  self.generated_code, self.curr_task_name = self.agent.implement_task()
139
  self.task_asset_logs.append(self.generated_task["assets-used"])
140
  self.generated_task_name = self.generated_task["task-name"]
141
  print("generated_code\n", self.generated_code)
142
  print("curr_task_name\n", self.curr_task_name)
143
- yield "Task Generated ==> Asset Generated ==> API Reviewed ==> Error Reviewed ==> Code Generated ==> ", self.generated_code, None
144
 
145
  self.generated_tasks.append(self.generated_task)
146
  self.generated_task_assets.append(self.generated_asset)
147
  self.generated_task_programs.append(self.generated_code)
148
  self.generated_task_names.append(self.generated_task_name)
149
  except:
150
- to_print = highlight(f"{str(traceback.format_exc())}", PythonLexer(), TerminalFormatter())
151
- print("Task Creation Exception:", to_print)
152
- raise gradio.Error(f"Task Creati'BuildWheel'on Exception: {str(traceback.format_exc())}")
 
153
  self.task_creation_pass = False
 
154
 
155
  # self.curr_task_name = self.generated_task['task-name']
156
  print("task creation time {:.3f}".format(time.time() - start_time))
@@ -236,11 +239,13 @@ class SimulationRunner:
236
  self.syntax_pass_rate += 1
237
 
238
  except:
239
- to_print = highlight(f"{str(traceback.format_exc())}", PythonLexer(), TerminalFormatter())
240
  save_text(self.cfg['model_output_dir'], self.generated_task_name + '_error', str(traceback.format_exc()))
241
  print("========================================================")
242
- print("Syntax Exception:", to_print)
243
- raise gradio.Error(f"Syntax Exception: {str(traceback.format_exc())}")
 
 
244
  return
245
 
246
  try:
@@ -296,7 +301,7 @@ class SimulationRunner:
296
  video_writer.close()
297
  print("save video to ", self.video_path)
298
 
299
- yield "Task Generated ==> Asset Generated ==> API Reviewed ==> Error Reviewed ==> Code Generated ==> Simulation Running completed", self.generated_code, self.video_path
300
  episode.append((obs, None, reward, info))
301
 
302
 
@@ -306,10 +311,10 @@ class SimulationRunner:
306
  # self.runtime_pass_rate += 1
307
  print("Runtime Test Pass!")
308
  except:
309
- to_print = highlight(f"{str(traceback.format_exc())}", PythonLexer(), TerminalFormatter())
310
  save_text(self.cfg['model_output_dir'], self.generated_task_name + '_error', str(traceback.format_exc()))
311
  print("========================================================")
312
- print("Runtime Exception:", to_print)
313
-
314
- raise gradio.Error(f"Runtime Exception: {str(traceback.format_exc())}")
315
  self.memory.save_run(self.generated_task)
 
9
 
10
  from pygments import highlight
11
  from pygments.lexers import PythonLexer
12
+ from pygments.formatters import HtmlFormatter, TerminalFormatter
13
  import gradio
14
  import time
15
  import random
 
31
  self.agent = agent
32
  self.critic = critic
33
  self.memory = memory
34
+ self.log = ""
35
 
36
  # statistics
37
  self.syntax_pass_rate = 0
 
108
  self.generated_task_programs.append(self.generated_code)
109
  self.generated_task_names.append(self.generated_task_name)
110
  except:
111
+ to_print = highlight(f"{str(traceback.format_exc())}", PythonLexer(), HtmlFormatter())
112
+ print("Task Creation Exception:", highlight(f"{str(traceback.format_exc())}", PythonLexer(), TerminalFormatter()))
113
 
114
  raise gradio.Error(f"Task Creation Exception: {str(traceback.format_exc())}")
115
  self.task_creation_pass = False
 
128
 
129
  # self.generated_task = {'task-name': 'TASK_NAME_TEMPLATE', 'task-description': 'TASK_STRING_TEMPLATE', 'assets-used': ['ASSET_1', 'ASSET_2', Ellipsis]}
130
  print("generated_task\n", self.generated_task)
131
+ yield "Task Generated ==>", "", None, None
132
  self.generated_asset = self.agent.propose_assets()
133
  print("generated_asset\n", self.generated_asset)
134
+ yield "Task Generated ==> Asset Generated ==> ", "", None, None
135
  self.agent.api_review()
136
+ yield "Task Generated ==> Asset Generated ==> API Reviewed ==> ", "", None, None
137
  self.critic.error_review(self.generated_task)
138
+ yield "Task Generated ==> Asset Generated ==> API Reviewed ==> Error Reviewed ==> ", "", None, None
139
  self.generated_code, self.curr_task_name = self.agent.implement_task()
140
  self.task_asset_logs.append(self.generated_task["assets-used"])
141
  self.generated_task_name = self.generated_task["task-name"]
142
  print("generated_code\n", self.generated_code)
143
  print("curr_task_name\n", self.curr_task_name)
144
+ yield "Task Generated ==> Asset Generated ==> API Reviewed ==> Error Reviewed ==> Code Generated ==> ", self.log, self.generated_code, None
145
 
146
  self.generated_tasks.append(self.generated_task)
147
  self.generated_task_assets.append(self.generated_asset)
148
  self.generated_task_programs.append(self.generated_code)
149
  self.generated_task_names.append(self.generated_task_name)
150
  except:
151
+ to_print = highlight(f"{str(traceback.format_exc())}", PythonLexer(), HtmlFormatter())
152
+ print("Task Creation Exception:", highlight(f"{str(traceback.format_exc())}", PythonLexer(), TerminalFormatter()))
153
+ self.log = to_print
154
+ yield "Task Generated ==> Asset Generated ==> API Reviewed ==> Error Reviewed ==> Code Generation Failed", self.log, "", None
155
  self.task_creation_pass = False
156
+ return
157
 
158
  # self.curr_task_name = self.generated_task['task-name']
159
  print("task creation time {:.3f}".format(time.time() - start_time))
 
239
  self.syntax_pass_rate += 1
240
 
241
  except:
242
+ to_print = highlight(f"{str(traceback.format_exc())}", PythonLexer(), HtmlFormatter())
243
  save_text(self.cfg['model_output_dir'], self.generated_task_name + '_error', str(traceback.format_exc()))
244
  print("========================================================")
245
+ print("Syntax Exception:", highlight(f"{str(traceback.format_exc())}", PythonLexer(), TerminalFormatter()))
246
+ self.log = to_print
247
+
248
+ yield "Task Generated ==> Asset Generated ==> API Reviewed ==> Error Reviewed ==> Code Generated ==> Code Syntax Parse Failed", self.log, self.generated_code, None
249
  return
250
 
251
  try:
 
301
  video_writer.close()
302
  print("save video to ", self.video_path)
303
 
304
+ yield "Task Generated ==> Asset Generated ==> API Reviewed ==> Error Reviewed ==> Code Generated ==> Simulation Running completed", self.log, self.generated_code, self.video_path
305
  episode.append((obs, None, reward, info))
306
 
307
 
 
311
  # self.runtime_pass_rate += 1
312
  print("Runtime Test Pass!")
313
  except:
314
+ to_print = highlight(f"{str(traceback.format_exc())}", PythonLexer(), HtmlFormatter())
315
  save_text(self.cfg['model_output_dir'], self.generated_task_name + '_error', str(traceback.format_exc()))
316
  print("========================================================")
317
+ print("Runtime Exception:", highlight(f"{str(traceback.format_exc())}", PythonLexer(), TerminalFormatter()))
318
+ self.log = to_print
319
+ yield "Task Generated ==> Asset Generated ==> API Reviewed ==> Error Reviewed ==> Code Generated ==> Simulation Running Failed", self.log, self.generated_code, None
320
  self.memory.save_run(self.generated_task)