Anett Kontaveit beat Olympic champion Belinda Bencic and will face home favourite Petra Kvitova for a place in the Ostrava Open final.
Estonian Kontaveit, ranked 30th in the world, claimed her fourth top-20 win of the season as she prevailed 6-4 6-3 on Friday.
Kontaveit also defeated Bencic in the 2020 Australian Open, meaning she is 2-0 in their head-to-head rivalry.
Czech left-hander Kvitova awaits in the last four, after the second seed defeated Bencic's Swiss compatriot Jil Teichmann 6-4 6-4.
Teichmann beat Kvitova in their only previous meeting, but the world number 10 had too much on this occasion, along with the backing of the crowd to boot as she chases a 29th singles title of her career.
The other semi-final will see top seed Iga Swiatek face Maria Sakkari.
Last year's French Open winner Swiatek reached her first semi-final since May – when she landed the prestigious title in Rome – by overcoming Elena Rybakina 7-6 (7-5) 6-2.
Sakkari, meanwhile, ended Tereza Martincova's hopes in straight sets.
Greek star Sakkari ended Swiatek's reign as Roland Garros champion in June, beating the Polish 20-year-old in the quarter-finals in Paris.