The 34-year-old had been a fringe player since Gary McAllister took charge at Elland Road, but was part of the squad for the League One play-off final loss to Doncaster Rovers on Sunday.
"I've had a good career but I've decided to call it a day," said Thompson, who was capped once by his country.
Thompson, who also played for Bolton, Aston Villa and Celtic, scored 107 goals in 551 career appearances spanning 17 years.