Chinese president Xi Jinping has vowed to punish the perpetrators of Saturday's deadly knife attack, in which at least 28 people died in the southwestern city of Kunming.

The police have already shot dead five of the 10 attackers and the authorities have launched a manhunt for the others

They said it was a "premeditated and violent terrorist attack".

Promising all-out efforts to catch the suspects, the Chinese leader said his country will: "severely punish in accordance with the law the violent terrorists and resolutely crack down on those who have been swollen with arrogance," reports the official Xinhua agency.

"Understand the serious and complex nation of combating terror. Go all out to maintain social stability."

Nearly 113 people have been injured in the attack. Pictures circulating in the social media show a macabre bloodbath. Blood-soaked bodies are seen lying near the train station.

"I saw a person come straight at me with a long knife and I ran away with everyone," one eyewitness said.

CNN quoted eyewitness Lu Haiyan to report that the killings began in the ticket hall of the station.

"Suddenly, many people started running around crazily," she said on Tencent Weibo, a Chinese version of Twitter. "We saw two people carrying big cleavers hacking whoever is in the way. They almost got to my back. Then I lost contact with (my friend) and I saw blood splashing in front of me."

The assailants caught those who were slower and left behind.

Local authorities have blamed Xinjiang separatists for the attack, and an investigation is under way.

The Xinhua report said: "Chinese premier Li Keqiang asked local authorities to chase and punish the suspects severely, and punish security departments at all levels to strengthen prevention and control measures to guarantee the safety of public places."