This works for me on master:
pandas_tbl = pd.DataFrame(np.random.randn(100, 4), columns=['y', 'X1', 'X2', 'X3'])
with pm.Model() as m:
pm.glm.GLM.from_formula(
'y ~ X1 + X2 + X3', data=pandas_tbl,
priors={'Intercept': pm.Normal.dist(mu=0, sd=5),
'X1': pm.HalfStudentT.dist(sd=10, nu=10),
'X2': pm.HalfStudentT.dist(sd=10, nu=10),
'X3': pm.HalfStudentT.dist(sd=10, nu=10)}
)
trace = pm.sample()