Browse Source

fix: code Interpreter error handling not work (#21736)

tags/1.5.1
quicksand 4 months ago
parent
commit
4198a533ad
No account linked to committer's email address
1 changed files with 6 additions and 3 deletions
  1. 6
    3
      api/core/tools/builtin_tool/providers/code/tools/simple_code.py

+ 6
- 3
api/core/tools/builtin_tool/providers/code/tools/simple_code.py View File

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))

Loading…
Cancel
Save