Thank you for reporting a bug to Unity.
We have reviewed the issue carefully. We could reproduce it, using Unity 6000.0.77f1 and ML Agents 4.0.3, and found a workaround.
The onnx file is fine, and the inference works correctly.
The issue is that the value for NectarAmount never gets to be set to 1. Since the flower have no nectar (HasNectar == false), the hummingbirds do not have a nearestFlower to go to, and the model tells the hummingbird to go up.
The workaround is to initialize NectarAmount at the same time a Flower is created.
In script Flower.cs, instead of:
public float NectarAmount { get; private set; }
write
public float NectarAmount { get; private set; } = 1f;
We hope this helps. Today we will be closing this case. Thank you again for taking the time to report this issue.