PYMC3 within an Azure Function - Timing out (30mins+) at pm.sample() stage

Update: Pip installing the above libraries in requirements.txt, and using the exact same code, works perfectly on a fresh Google Collab setup:

Auto-assigning NUTS sampler…
INFO:pymc3:Auto-assigning NUTS sampler…
Initializing NUTS using jitter+adapt_diag…
INFO:pymc3:Initializing NUTS using jitter+adapt_diag…
Multiprocess sampling (4 chains in 4 jobs)
INFO:pymc3:Multiprocess sampling (4 chains in 4 jobs)
NUTS: [defs_star, atts_star, intercept, tau_def, tau_att, home]
INFO:pymc3:NUTS: [defs_star, atts_star, intercept, tau_def, tau_att, home]
Sampling 4 chains for 1_000 tune and 2_000 draw iterations (4_000 + 8_000 draws total) took 32 seconds.
INFO:pymc3:Sampling 4 chains for 1_000 tune and 2_000 draw iterations (4_000 + 8_000 draws total) took 32 seconds.

Would be interested if anyone has ever got this working within an Azure Function as there must be something weird going on. Thanks.