I can’t reproduce any problem from your code snippet. This runs completely fine for me (pymc3==3.11.4).
import pymc3 as pm
import numpy as np
data = np.random.normal(size=3)
with pm.Model() as model_0:
# Prior Distributions for unknown model parameters:
b_0 = pm.HalfNormal('b_0', sd=5)
mu_0 = pm.Normal('mu_0', mu=0, sd=5)
# Observed data is from a Likelihood distributions (Likelihood (sampling distribution) of observations):
observed_data_0 = pm.Laplace('observed_data_0', mu=mu_0, b=b_0, observed=data)
# Printing the result of log_likelihood:
# print('log_likelihood result:', model_0)
# draw 5000 posterior samples
trace_0 = pm.sample(draws=1000, tune=1000, chains=3, cores=1, progressbar=True)
# Obtaining Posterior Predictive Sampling:
post_pred_0 = pm.sample_posterior_predictive(trace_0, samples=1000)
print(post_pred_0['observed_data_0'].shape)
print('\nSummary: ')
print(pm.stats.summary(data=trace_0))
print(pm.stats.summary(data=post_pred_0))