模型开发遇到错误

 

版主你好 ,各位高手你们好!

     运行模型EA 报错2025.07.25 00:17:40.330    ONNX  EA(BTCUSD,H1)    ONNX: incorrect parameters count passed to OnnxRun, expected 3 instead of 2, inspect code '4þ)ýgA5ê¿E' (854:10)

含义:OnnxRun期望 3个 参数 ,而不是 2个,实际OnnxRun调用符合MQL5文档规范

编译正常通过,但运行时出现以上错误!

求大神解决这一问题!

相关代码:

float output_onnx_probabilities[2]; // 用于接收 ONNX 模型的 float 概率数组输出
    

// 获取输入信息
    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,         // ONNX 会话句柄
                  flag,
                  input_onnx ,                    // 输入数组
                  output_onnx_probabilities ))    // 概率输出数组
    {
        DebugPrint("❌ ERROR: Game Classifier ONNX prediction failed. Error: " + (string)GetLastError());
        return -1;
    }