There's one VAE example here: https://towardsdatascience.com/teaching-a-variational-autoencoder-vae-to-draw-mnist-characters-978675c95776.
And the source code of encoder can be found at the following URL: https://gist.github.com/FelixMohr/29e1d5b1f3fd1b6374dfd3b68c2cdbac#file-vae-py.
The author is using $e$ (natural exponential) for calculating values of the embedding vector:
$$z = \mu + \epsilon \times e^{\sigma}$$
where $\mu$ is the mean, $\epsilon$ a small random number and $\sigma$ the standard deviation.
Or in code
z = mn + tf.multiply(epsilon, tf.exp(sd))
It's not related to the code (practical programming), but why using natural exponential instead of:
$$z = \mu + \epsilon \times \sigma$$