Why HybridBlock.export and save_parameters API do not need context as input

My understanding is that a HybridBlock can have different parameters on different contexts (GPU or CPU). However, when trying to save the parameters (e.g., using export or save_parameters), the context is not specified.

How does these API pick and calculate from the multiple parameter sets then?

Thank you!

Actually, the HybridBlock is not meant for having different parameters on different contexts. Instead, it is for easily converting from imperative mode to symbolic mode, using .hybridize(). The reason why you don’t need to pass in the ctx apis to save parameters or exports is because all the parameters should already be on the same context.