4. Thousands of people from around the world have been training for months, even years, for the Ironman Louisville.
Здесь нужно выбрать грамматически правильное время глагола. Поскольку указано, что люди тренируются на протяжении месяцев и даже лет, то необходимо использовать Present Perfect Continuous.
Ответ: b) have been training