The fire broke out around 4:00 pm (1500 GMT) in a restaurant on the ground floor of a six- or seven-storey building, local police spokesman Michel Gandillon told AFP.
Seventeen people suffered light burns or smoke inhalation and were sent to hospital for a control, he said.
Firefighters brought the flames under control within about an hour.
According to media reports, a wedding celebration had been going on at the time in the Ethiopian restaurant in the center of the picturesque city on the shores of Lake Geneva.
Party-dressed people came rushing out as thick black smoke billowed out of the building, some screaming and others falling to their knees, the ATS news agency reported.
Police said it remained unclear how the fire had started, but the 20Minutes website quoted witnesses saying a firecracker set off inside during the wedding party had started the blaze.
“I heard a boom, an explosion, and then the whole street was filled with smoke,” one witness told the news site.