Does LinearRegression() function in sklearn determine the best learning rate and needed iterations automatically?

Regarding this exercise, We have learned previously how to find the best fit slope and intercept through iterations over the gradient descent. We needed to define the learning rate and number of iterations manually.

Does the LinearRegression() function finds the best value for them to reach convergence as early as possible or does it use a different approach?

Thanks and Happy Coding