Katerina Siniakova continued her surprise exploits in the Shenzhen Open by dumping out Johanna Konta to set up a final against last year's runner-up Alison Riske.
Siniakova stunned Simona Halep in the first round and will contest her third WTA singles final on Saturday after battling back to claim the scalp of third seed Konta, who was beaten 1-6 6-4 6-4.
The unseeded Czech lost the first five games of the match in a one-sided first set, but hit back in the second to level courtesy of a break in the third game.
World number 10 Konta led 4-2 in the decider, but 20-year-old Siniakova was not finished yet and won four games in a row to stand just one victory away from her first WTA singles title.
Riske shocked Agnieszka Radwanska, who beat her in the final of this tournament last year, to reach the last four and the eighth seed was a 6-3 6-3 semi-final winner against Camila Giorgi.
The American, whose only other title came in 2014, saved all three break points she faced and secured three breaks of her own to reach the final.
Riske said of Siniakova: "She's an extremely tough competitor, I have played her before and I lost. She's been playing awesome and I'm looking forward to playing her in the final."