Check your contract, but I would imagine that it says that YOU are responsible for keeping the panels clean (as well as not allowing anything that really impacts production, like shade trees that were not there when they installed, etc.).
Thats how my solar city contract is, from 2016, anyway, and i am billed for what I produce, so they have a financial incentive to have my production as high as possible. They still will not clean, per my contract.
I just had my panels cleaned.. BUT I know that the cost of the cleaning is more than I would save from the increased production. It doesnt pencil out, I just didnt like the lower production. I also have a really good window cleaning / solar cleaning company I use out here. They are definitely not cheap, but the owner is nice, professional, punctual, and has been in business for quite a while. He also knows how to walk on roofs without any damage, and sends before and after pics etc.
I have a soft spot for small businesses that treat people right, and am willing to pay more to patronize such a business if I can.