The short and obvious answer – it depends. Projects with a huge number of small routine tasks may be more suitable for a team with a large concentration of juniors than large projects with specific technologies.
In the case of outsourcing or outstaffing, we recommend hiring middle or seniors, because they can perform better and faster than inexperienced newbies. Juniors should be taken only if you hire them on a permanent basis – it will be possible to “sharpen” the developer for yourself, for your project, and the specific goals of the team.