The good news is that Vulkan was designed with a multi-GPU (vendor) use case in mind so there is a generic "loader" that you use to load vendor-specific Vulkan implementations for each GPU your application renders with.
When you create a Vulkan context you first need to enumerate the rendering devices on the system and select the one you want to use. You can actually explicitly use multiple contexts for different devices in your application, e.g. using the IGP for compute tasks while doing the main rendering on a dedicated GPU.