Does ULMFiT require custom loss for multi-class?

Probably not, but it’s easy to set a custom loss for a learner. Perhaps this thread will help you.