Faits: Faits: A. Le 11 avril 2004 vers 17h, à Bienne, est survenue une altercation entre deux personnes, au terme de laquelle le dénommé B._ a été blessé à l'abdomen d'un coup de couteau. Son agresseur s'est enfui. Arrêté par la police le soir même, A._ a reconnu être l'auteur et remis l'arme utilisée. Le 12 avril 2004, le Juge d'instruction a inculpé A._ de lésions corporelles graves et l'a fait incarcérer immédiatement. Le 14 avril 2004, le Juge de l'arrestation du Jura bernois et du Seeland a ordonné le placement de A._ en détention préventive. Le 27 mai 2004, il a rejeté une demande de libération provisoire. Il a retenu l'existence de charges suffisantes, ainsi que d'un risque de réitération. Le 27 mai 2004, il a rejeté une demande de libération provisoire. Il a retenu l'existence de charges suffisantes, ainsi que d'un risque de réitération. B. Agissant par la voie du recours de droit public, A._ demande au Tribunal fédéral d'annuler la décision du 27 mai 2004 et d'ordonner sa libération immédiate, le cas échéant sous la condition qu'il se soumette à une thérapie ambulatoire ou à d'autres règles de conduite. Il invoque les art. 10 al. 2 Cst. et 5 CEDH. Il requiert l'assistance judiciaire. Le Juge de l'arrestation et le Juge d'instruction ont renoncé à se déterminer. Le Ministère public conclut au rejet du recours. Invité à répliquer, le recourant a maintenu ses conclusions. 