тогда я пожалуй сделал бы следующее 1. делаем сервис который инкапсулирует в себе логику сходи за юзерами при этом с мемоизацией 2. делаем в модельках связанных с юзерами метод дай юзера (типо связи) делает он это через сервис 3. делаем свою кастомную коллекцию которая имеет метод загрузи внешних юзеров (сахар) и выставляем ее для моделей. загрузка соответственно через тот сервис
в итоге Post::take(5)->loadExternalUsers()->each(($post) => dump($post->externalUser();) ) примерно так будет использование выглядить в пользовательском коде