How to use FreeMonad to build data pipelines for AI

I will present how to use FreeMonad to build data pipelines for AI. Will try to focus not on what FreeMonad is, but how we may take advantage of it and build readable, efficient and robust data pipelines.
The approach I present will focus on building pipelines that are build around business rules, not around Spark data frames.
We will look into three less-understood, yet (arguably) extremely useful constructs introduced in Cats Effect 3: Dispatcher, Supervisor, IOLocal
Understanding the exact properties that disqualify a data type from being an instance of a given abstraction turns out to be surprisingly helpful
Let's go through some libraries from ZIO ecosystem that will allow us to implement API layer with ZIO HTTP