[ ] diffeq_adjoint is touching the Zygote context: we should avoid that if possible. FWIW it's not too bad, and these adjoints work honestly quite well.
[ ] diffeq_rd's touching of the context is more rough. It has to still restructure in order to add tracking on the arrays, since it needs to use Tracker here since Zygote is still incompatible.
[ ] diffeq_rd is sensitive to what parameters are passed in. They need to be perfectly Params and restructure exactly to a single neural network, which won't work for example with the partial neural tests, which is why they fail.
https://github.com/JuliaDiffEq/DiffEqFlux.jl/pull/96 got master to Zygote compatible, but there are still some feature regressions that need to be worked out before we can release:
diffeq_adjoint
is touching the Zygote context: we should avoid that if possible. FWIW it's not too bad, and these adjoints work honestly quite well.diffeq_rd
's touching of the context is more rough. It has to still restructure in order to add tracking on the arrays, since it needs to use Tracker here since Zygote is still incompatible.diffeq_rd
is sensitive to what parameters are passed in. They need to be perfectly Params and restructure exactly to a single neural network, which won't work for example with the partial neural tests, which is why they fail.