关于ONNX 难题 新评论 Daying Cao 2025.07.24 16:47 版主好!大家好! 涉及ONNX开发,编译正常通过,但是运行报错日志: ONNX: incorrect parameters count passed to OnnxRun, expected 3 instead of 2, inspect code '4þ)ýgA5ê¿E' (854:10),错误含义期望 3个 参数 ,而不是 2个参数 OnnxRun调用符合MQL5帮助文档规范 相关代码: // --- 声明一个输出数组:只用于接收概率 --- float output_onnx_probabilities[2]; // 用于接收 ONNX 模型的 float 概率数组输出 // 调整数组大小以匹配预期输出 //ArrayResize(output_onnx_probabilities, 2); // 两个类别(0 和 1),所以有两个概率值 // 获取输入信息 long input_count = OnnxGetInputCount(game_classifier_handle); Print(" Input Count: ", (string)input_count); for(long i = 0; i < input_count; i++) { string input_name = OnnxGetInputName(game_classifier_handle, i); OnnxTypeInfo type_info; if(OnnxGetInputTypeInfo(game_classifier_handle, i, type_info)) { string dims = BuildDimensionString(type_info.tensor.dimensions); string type_str = OnnxTypeToString(type_info.type); Print(" Input ", (string)i, ": Name=", input_name, ", Type=", type_str, ", Dimensions=[", dims, "]"); } } long output_count = OnnxGetOutputCount(game_classifier_handle); Print(" Output Count: "+output_count); for(long i = 0; i < output_count; i++) { string output_name = OnnxGetOutputName(game_classifier_handle, i); OnnxTypeInfo type_info; if(OnnxGetOutputTypeInfo(game_classifier_handle, i, type_info)) { string dims = ""; for(int d = 0; d < type_info.tensor.dimensions.Size(); d++) {/* dims += (d > 0 ? "x" : "") + (type_info.tensor.dimensions[d] == -1 ? "?" : (string)type_info.tensor.dimensions[d]); */ if(d > 0) dims += "x"; if(type_info.tensor.dimensions[d] == -1) { // 动态维度 dims += "?"; } else { dims += (string)type_info.tensor.dimensions[d]; } } Print(" Output ", i, ": Name=", output_name, ", Type=", EnumToString(type_info.type), ", Dimensions=[", dims, "]"); } } ulong flag = (ONNX_DEBUG_LOGS | ONNX_NO_CONVERSION); if (!OnnxRun( game_classifier_handle, flag, input_onnx , output_onnx_probabilities )) { DebugPrint("❌ ERROR: Game Classifier ONNX prediction failed. Error: " + (string)GetLastError()); return -1; } 是否是MQL5 MT5 OnnxRun的重载函数参数匹配出问题? 求大神解决! 如何在 MQL5 中使用 ONNX 模型 掌握ONNX:MQL5交易者的游戏规则改变者 数据科学与机器学习(第23部分):为什么LightGBM和XGBoost能超越许多AI模型? 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
版主好!大家好!
涉及ONNX开发,编译正常通过,但是运行报错日志:
ONNX: incorrect parameters count passed to OnnxRun, expected 3 instead of 2, inspect code '4þ)ýgA5ê¿E' (854:10),错误含义期望 3个 参数 ,而不是 2个参数 OnnxRun调用符合MQL5帮助文档规范 相关代码:
是否是MQL5 MT5 OnnxRun的重载函数参数匹配出问题?
求大神解决!