| 12345678910111213141516171819202122232425262728293031323334353637383940 | package serviceimport (	"time"	"github.com/langgenius/dify-sandbox/internal/core/runner/python"	"github.com/langgenius/dify-sandbox/internal/static"	"github.com/langgenius/dify-sandbox/internal/types")type RunCodeResponse struct {	Stderr string `json:"error"`	Stdout string `json:"stdout"`}func RunPython3Code(code string) *types.DifySandboxResponse {	runner := python.PythonRunner{}	stdout, stderr, done, err := runner.Run(code, time.Duration(static.GetDifySandboxGlobalConfigurations().WorkerTimeout*int(time.Second)), nil)	if err != nil {		return types.ErrorResponse(-500, err.Error())	}	stdout_str := ""	stderr_str := ""	for {		select {		case <-done:			return types.SuccessResponse(&RunCodeResponse{				Stdout: stdout_str,				Stderr: stderr_str,			})		case out := <-stdout:			stdout_str += string(out)		case err := <-stderr:			stderr_str += string(err)		}	}}
 |