Hello Ruzan,
The adjoint method is already implemented in Lumerical. I don't think it will reduce the number of simulations, but it is a more sophisticated approach to doing gradient descent. You will still need a good starting point, some physical inution and experience with FDTD\python. We ship lumopt with the Lumerical install no need to use the github, this landing page is a good place to start.
The examples can be found here.
Good luck