PROGMEM

This might be a stupid question but,

Can contents of PROGMEM (flash memory) be changed in runtime?

My goal was to store a ml model in progmem when flashing, and switch the previous
model to a new one while the microcontroller is running instead of having to reflash the device.

I can't store the model inside the RAM because it is too big, so declaring the array in my main.ino would
be unfeasible.

Thank you.

Can contents of PROGMEM (flash memory) be changed in runtime?

Nope, on an ESP you can do Over The Air updates though.
Whatever is going to be in flash needs to be there at compile time, but how big is to big ?

There are versions of the bootloader that allow for writing to flash memory (PROGMEM) at runtime.

What is an “ml model”?

david_2018:
What is an "ml model"?

"Machine Learning model" (the weights for a trained neural net).