FIX CIS: don't clobber explicit cache_implementation='hybrid'
generate() was unconditionally unsetting generation_config.cache_implementation
when it was 'hybrid', under the assumption that the value must have come from
a Hub default. That clobber also happens when the user explicitly passes
cache_implementation='hybrid' as a kwarg, breaking the documented override
(visible via gemma3 test_dynamic_sliding_window_is_default). Capture the user-
supplied kwargs *before* update() consumes them and only unset 'hybrid' when
the user didn't ask for it.