Mediauppspelning stöds inte på den här enheten
GB: s Abbie Brown öppnade poäng efter bara 15 sekunder innan Fijis Litia Naiqato avslutade ett fantastiskt team flytta till nivå.
Men Alice Richardson och Joanne Watmore gav Team GB en 19-7 halvtid ledning, och Brown förseglade vinsten med sin andra.
Australien och Kanada kommer att spela i den andra semifinalen på måndag.
Storbritannien tidigare slå en stark Kanada sida 22-0 i sin sista grupp spel.
Ta reda på hur du kommer in i rugbyfacket med vår specialguide.
Och Brown sa att söndagens förbättring kom eftersom laget hade "upprört" efter att ha känt nerver den första dagen.
"Det är en OS, nerverna kommer att slå," sade hon.
"Vi har visat alla idag med Kanada och Fiji, vi har gjort oss själva rättvisa."
Storbritanniens semifinal kommer att komma igång klockan 19:00 BST på måndag, med den sista följande klockan 23:00.
Dag för dag guide till vad som är på
Mediauppspelning stöds inte på den här enheten
Storbritannien kvinnor kommer att möta Nya Zeeland i semifinalen av OS rugby sjuor efter att ha slagit Fiji 26-7 i de senaste åtta vid Rio 2016.