Просмотр исходного кода

add error handling for action running (#212)

Robert Brennan 2 лет назад
Родитель
Сommit
93656f3bb3
1 измененных файлов с 6 добавлено и 1 удалено
  1. 6 1
      opendevin/controller/__init__.py

+ 6 - 1
opendevin/controller/__init__.py

@@ -101,7 +101,12 @@ class AgentController:
             action = action_cls(**_kwargs)
             print(action, flush=True)
         if action.executable:
-            observation = action.run(self)
+            try:
+                observation = action.run(self)
+            except Exception as e:
+                observation = AgentErrorObservation(str(e))
+                print_with_indent("\nACTION RUN ERROR:\n%s" % observation)
+                traceback.print_exc()
 
         if not isinstance(observation, NullObservation):
             print_with_indent("\nOBSERVATION:\n%s" % observation)