Faits: Faits: A. Le 21 septembre 2004, A._ a été condamné à cinq jours d'emprisonnement avec sursis pendant deux ans pour vol. Le 11 septembre 2006, il a été condamné à onze mois d'emprisonnement avec sursis pendant trois ans pour vol, brigandage et violation de domicile. Dans le cadre de cette dernière instruction, il a été détenu préventivement pendant deux cent soixante neuf jours. A._ a été interpellé le 16 décembre 2006 pour un vol de téléphone portable assorti de menaces; il a alors été détenu préventivement durant trois jours. Le 16 janvier 2007, il a été interpellé pour le vol d'un ordinateur portable et il a été à nouveau placé en détention préventive, jusqu'au 22 janvier 2007. Entre le 22 janvier et le 12 septembre 2007, il a commis une douzaine d'infractions, notamment des vols. Il lui est également reproché d'avoir menacé certaines de ses victimes et d'avoir frappé un commerçant. Interpellé le 13 septembre 2007 sur ordre du Juge d'instruction de l'arrondissement de Lausanne (ci-après: le juge d'instruction), A._ a été placé en détention préventive. Le 6 décembre 2007, il a été renvoyé devant le Tribunal correctionnel de l'arrondissement de Lausanne pour voies de fait, vol d'importance mineure, vol, brigandage, subsidiairement vol, recel, violation de domicile et contravention à la loi fédérale sur les stupéfiants. Interpellé le 13 septembre 2007 sur ordre du Juge d'instruction de l'arrondissement de Lausanne (ci-après: le juge d'instruction), A._ a été placé en détention préventive. Le 6 décembre 2007, il a été renvoyé devant le Tribunal correctionnel de l'arrondissement de Lausanne pour voies de fait, vol d'importance mineure, vol, brigandage, subsidiairement vol, recel, violation de domicile et contravention à la loi fédérale sur les stupéfiants. B. Par ordonnance du 19 octobre 2007, le juge d'instruction a rejeté une première demande de mise en liberté provisoire, au motif que le risque de récidive était patent et que les démarches entreprises par l'intéressé en vue de traiter ses problèmes liés à sa consommation d'alcool ne constituaient pas une garantie suffisante. Une nouvelle requête du 12 décembre 2007 a été rejetée par ordonnance du 17 décembre 2007, pour les mêmes motifs. A._ a recouru contre cette décision auprès du Tribunal d'accusation du Tribunal cantonal du canton de Vaud (ci-après: le Tribunal cantonal). Il contestait l'existence d'un risque de récidive en alléguant notamment avoir pris conscience de ses actes et de ses problèmes d'alcool. Le Tribunal cantonal a rejeté ce recours par arrêt du 7 janvier 2008, considérant que le risque de récidive était manifeste et que les démarches de l'intéressé pour régler son problème d'alcool ne paraissaient pas suffisantes, aucun suivi concret n'ayant été mis en place. B. Par ordonnance du 19 octobre 2007, le juge d'instruction a rejeté une première demande de mise en liberté provisoire, au motif que le risque de récidive était patent et que les démarches entreprises par l'intéressé en vue de traiter ses problèmes liés à sa consommation d'alcool ne constituaient pas une garantie suffisante. Une nouvelle requête du 12 décembre 2007 a été rejetée par ordonnance du 17 décembre 2007, pour les mêmes motifs. A._ a recouru contre cette décision auprès du Tribunal d'accusation du Tribunal cantonal du canton de Vaud (ci-après: le Tribunal cantonal). Il contestait l'existence d'un risque de récidive en alléguant notamment avoir pris conscience de ses actes et de ses problèmes d'alcool. Le Tribunal cantonal a rejeté ce recours par arrêt du 7 janvier 2008, considérant que le risque de récidive était manifeste et que les démarches de l'intéressé pour régler son problème d'alcool ne paraissaient pas suffisantes, aucun suivi concret n'ayant été mis en place. C. Agissant par la voie du recours en matière pénale, A._ demande au Tribunal fédéral d'annuler cet arrêt et d'ordonner sa libération provisoire, le cas échéant avec la mise en place d'une surveillance médicale. Invoquant la liberté personnelle (art. 10 al. 2 Cst. et 5 CEDH), il conteste l'existence d'un risque de récidive et il se plaint d'une violation du principe de proportionnalité. Il requiert en outre l'assistance judiciaire gratuite. Le Procureur général du canton de Vaud conclut au rejet du recours. Le Tribunal cantonal se réfère aux considérants de son arrêt. Ces écritures ont été communiquées au recourant, qui a présenté des observations complémentaires.