Baysian hirerchical Linear Regression(Partial Pooling) model using PYMC

As taking reference from above answers I was doing predictions as

with hierarchical_model:
    pm.set_data({
        "LocationDesc_encoded": test_data['LocationDesc_encoded'].values,
        "obesity_Prevalence": test_data['obesity_Prevalence'].values,
        "data_value_py": test_data['data_value_py'].values,
        "Avg Temp(°F)": test_data['Avg Temp(°F)'].values,
        "AQI": test_data['AQI'].values
    })

    # Sample from the posterior predictive distribution
    posterior_predictive = pm.sample_posterior_predictive(idata, predictions=True,random_seed=rng)

it is giving error as

So I searched for this and found that Data variable are not mutable so to make variable mutable Chatgpt suggest me code as

with hierarchical_model:
        LocationDesc_encoded_shared = pm.Data('LocationDesc_encoded', training_data['LocationDesc_encoded'].values, mutable=True)
        obesity_Prevalence_shared = pm.Data('obesity_Prevalence', training_data['obesity_Prevalence'].values, mutable=True)
        data_value_py_shared = pm.Data('data_value_py', training_data['data_value_py'].values, mutable=True)
        Avg_Temp_data = pm.Data('Avg Temp(°F)', training_data['Avg Temp(°F)'].values, mutable=True)
        AQI_data = pm.Data('AQI', training_data['AQI'].values, mutable=True)

after this my model architecture is as follows


is this correct way of define model with mutable variables ?
Or someone please provide some reference to read about it ?