(Reason 2) Second, make sure that your roommate knows that you love being her roommate. Tell her that you feel so lucky that you get to live with your best friend and you do not want that to change. Remind her that the three years that you have lived together has been wonderful and that you get along perfectly. Hopefully the two of you can have a good discussion of how much you mean to each other and how much you have done for each other. Help your roommate understand that because you care so much about her that this makes this problem so hard and important to not only you but to her. You want to live in a comfortable and healthy environment, and you want her to live in a place that she also feels is comfortable and healthy too.
You need to talk to your roommate that you need to have her stop smoking in the apartment because you cannot live with it. Remember to have your roommate understand that you are not trying to hurt her feelings, but this is very important to you and you know it has to change. Good luck and hope things work out for the two of you.