The boat sank in Lake Van as it approached the town of Adilcevaz in Bitlis province, the provincial governor's office said in a statement. It was carrying migrants from Afghanistan, Pakistan and Bangladesh.
Five of the migrants were found dead in the lake while two others died in a hospital, the statement said.
Turkey is a main crossing point for migrants trying to reach Europe.
It was not immediately clear why the migrants were traveling on a boat and not by road. The lake is close to Iran but lies within Turkey's borders.
The statement said the rescued migrants were taken to the hospital and shelters around Bitlis.
Gendarmerie forces, emergency teams and divers were pressing ahead with search-and-rescue operations, the statement said, adding that authorities had launched a formal investigation into the incident.