Mathematical optimization library with automatic differentiaton


I'm looking for a mathematical optimizer that I can give an input format, a cost function and an initial guess, and it will minimize the cost function up to some threshold or maximum number of iterations, and give me the optimal parameters. Ideally, without me providing an explicit gradient function.

So far, I've found argmin, but as far as I can tell all the available solvers need me to explicitly implement the Gradient trait for my problem. I've been using mystic in python and am looking for something similar in Rust.

Any recommendations?