Unseeded Sakkari was lost for words after her 2-6 6-4 7-5 triumph over top seed Swiatek.
Having reached a career-high of world number three four years ago, Sakkari has since fallen to number 52 and is without a tournament win since March 2024.
But after a nervous opening set Sakkari recovered to book her place in the last four.
"I'm speechless because it's been a while since I had a big win like today," she said.
"When you drop in the rankings and you're not playing good tennis, you start doubting yourself.
"You're thinking that you're never going to beat those players again."
The Greek will take on Czech Karolina Muchova in the other semi-final, after the 14th seed swept past Russia's Anna Kalinskaya 6-3 6-4.
Latvian Ostapenko beat another unseeded player, Elisabetta Cocciaretto of Italy, 7-5 6-4, in her quarter-final.