NullReferenceException when loading ONNX LSTM using Inference Engine

I’m getting NullReferenceException: Object reference not set to an instance of an object when importing a simple LSTM model created in PyTorch and exported to ONNX. Full trace:


NullReferenceException: Object reference not set to an instance of an object

Unity.InferenceEngine.Compiler.Passes.Optimization.FuseConstantsPass.FuseConstants (Unity.InferenceEngine.Model& model) (at ./Library/PackageCache/com.unity.ai.inference@3d3e6e2da218/Runtime/Core/Compiler/Passes/FuseConstantsPass.cs:59)

Unity.InferenceEngine.Compiler.Passes.Optimization.FuseConstantsPass.Run (Unity.InferenceEngine.Model& model) (at ./Library/PackageCache/com.unity.ai.inference@3d3e6e2da218/Runtime/Core/Compiler/Passes/FuseConstantsPass.cs:11)

Unity.InferenceEngine.ModelOptimizer.RunPasses (Unity.InferenceEngine.Model& model, Unity.InferenceEngine.Compiler.Passes.IModelPass[] passes) (at ./Library/PackageCache/com.unity.ai.inference@3d3e6e2da218/Runtime/Core/Backends/ModelOptimizer.cs:18)

Unity.InferenceEngine.ModelOptimizer.OptimizeModel (Unity.InferenceEngine.Model& model) (at ./Library/PackageCache/com.unity.ai.inference@3d3e6e2da218/Runtime/Core/Backends/ModelOptimizer.cs:45)

Unity.InferenceEngine.ONNX.Editor.ONNXModelConverter.ConvertOnnxModel (Onnx.ModelProto onnxModel) (at ./Library/PackageCache/com.unity.ai.inference@3d3e6e2da218/Editor/ONNX/ONNXModelConverter.cs:1539)

Unity.InferenceEngine.ONNX.Editor.ONNXModelConverter.Convert () (at ./Library/PackageCache/com.unity.ai.inference@3d3e6e2da218/Editor/ONNX/ONNXModelConverter.cs:49)

Unity.InferenceEngine.ONNXModelImporter.OnImportAsset (UnityEditor.AssetImporters.AssetImportContext ctx) (at ./Library/PackageCache/com.unity.ai.inference@3d3e6e2da218/Editor/ONNX/ONNXModelImporter.cs:76)

UnityEditor.AssetImporters.ScriptedImporter.GenerateAssetData (UnityEditor.AssetImporters.AssetImportContext ctx) (at /Users/bokken/build/output/unity/unity/Modules/AssetPipelineEditor/Public/ScriptedImporter.cs:25)

Unity version: 6000.0.621f

Inference Engine version: 2.2.2

I can paste out a description of all the layers if desired but it’s nothing fancy, the model definition just contains LSTM and FC layers with no logic whatsoever. Attached is the model.

this issue is fixed in the latest verson 2.5.0.