| from core.helper.code_executor.code_executor import CodeExecutor, CodeLanguage | from core.helper.code_executor.code_executor import CodeExecutor, CodeLanguage | ||||
| from core.tools.builtin_tool.tool import BuiltinTool | from core.tools.builtin_tool.tool import BuiltinTool | ||||
| from core.tools.entities.tool_entities import ToolInvokeMessage | from core.tools.entities.tool_entities import ToolInvokeMessage | ||||
| from core.tools.errors import ToolInvokeError | |||||
| class SimpleCode(BuiltinTool): | class SimpleCode(BuiltinTool): | ||||
| if language not in {CodeLanguage.PYTHON3, CodeLanguage.JAVASCRIPT}: | if language not in {CodeLanguage.PYTHON3, CodeLanguage.JAVASCRIPT}: | ||||
| raise ValueError(f"Only python3 and javascript are supported, not {language}") | raise ValueError(f"Only python3 and javascript are supported, not {language}") | ||||
| result = CodeExecutor.execute_code(language, "", code) | |||||
| yield self.create_text_message(result) | |||||
| try: | |||||
| result = CodeExecutor.execute_code(language, "", code) | |||||
| yield self.create_text_message(result) | |||||
| except Exception as e: | |||||
| raise ToolInvokeError(str(e)) |