Building a normal likelihood with known but varying variance for every data point/sample

It should be pretty straightforward. Something like this:

obs_noise = np.array([1.9, 2.7, ..., 1.1])
obs = np.array([5, 6, ..., 1])

with pm.Model() as m:
  < Unobserved variables >
  like = pm.Normal("like", mu = <model prediction>, sigma=obs_noise, observed=obs)