cassiebreviu / StableDiffusion

Inference Stable Diffusion with C# and ONNX Runtime
MIT License
216 stars 49 forks source link

Non-zero status code returned while running Trilu node. #27

Open zhanweiw opened 10 months ago

zhanweiw commented 10 months ago

I run this code on my Lenovo T14S(x64 Windows 11) on Direct ML and got the issue below. May I get your support on the reason? Thanks in advance! https://github.com/cassiebreviu/StableDiffusion/blob/direct-ML-EP

Microsoft.ML.OnnxRuntime.OnnxRuntimeException
  HResult=0x80131500
  Message=[ErrorCode:RuntimeException] Non-zero status code returned while running Trilu node. Name:'Trilu_233' Status Message: D:\a\_work\1\s\onnxruntime\core\providers\dml\DmlExecutionProvider\src\MLOperatorAuthorImpl.cpp(2340)\onnxruntime.DLL!00007FF9AB78E70A: (caller: 00007FF9AB78DC5B) Exception(3) tid(7118) 80070057 The parameter is incorrect.

  Source=Microsoft.ML.OnnxRuntime
  StackTrace:
   at Microsoft.ML.OnnxRuntime.NativeApiStatus.VerifySuccess(IntPtr nativeStatus)
   at Microsoft.ML.OnnxRuntime.InferenceSession.RunImpl(RunOptions options, IntPtr[] inputNames, IntPtr[] inputValues, IntPtr[] outputNames, DisposableList`1 cleanupList)
   at Microsoft.ML.OnnxRuntime.InferenceSession.Run(IReadOnlyCollection`1 inputs, IReadOnlyCollection`1 outputNames, RunOptions options)
   at Microsoft.ML.OnnxRuntime.InferenceSession.Run(IReadOnlyCollection`1 inputs, IReadOnlyCollection`1 outputNames)
   at Microsoft.ML.OnnxRuntime.InferenceSession.Run(IReadOnlyCollection`1 inputs)
   at StableDiffusion.ML.OnnxRuntime.TextProcessing.TextEncoder(Int32[] tokenizedInput, StableDiffusionConfig config) in C:\Source\StableDiffusion-DML\StableDiffusion.ML.OnnxRuntime\TextProcessing.cs:line 85
   at StableDiffusion.ML.OnnxRuntime.TextProcessing.PreprocessText(String prompt, StableDiffusionConfig config) in C:\Source\StableDiffusion-DML\StableDiffusion.ML.OnnxRuntime\TextProcessing.cs:line 12
   at StableDiffusion.ML.OnnxRuntime.UNet.Inference(String prompt, StableDiffusionConfig config) in C:\Source\StableDiffusion-DML\StableDiffusion.ML.OnnxRuntime\UNet.cs:line 74
   at StableDiffusion.Program.Main(String[] args) in C:\Source\StableDiffusion-DML\StableDiffusion\Program.cs:line 37
cassiebreviu commented 9 months ago

This seems like a version issue for support for that operator. What versions are you using of ort and directml?

songshizhao commented 1 month ago

use same nuget pkg in your prj like .dll prj solved this.

dionfoster commented 1 month ago

I am also receiving this error message. Running on windows 11.

use same nuget pkg in your prj like .dll prj solved this.

What does this mean? Here are the versions of the package references for the solution:

songshizhao commented 1 month ago

I am also receiving this error message. Running on windows 11.

use same nuget pkg in your prj like .dll prj solved this.

What does this mean? Here are the versions of the package references for the solution:

  • Microsoft.ML - 2.0.1
  • Microsoft.ML.OnnxRuntime.DirectML - 1.14.1
  • Microsoft.ML.OnnxRuntime.Managed - 1.14.1 you have your app prj ref a dll prj [like this] ref pkg above in your app prj even if not necessary