If you know you don’t want a future with the person you’re dating the compassionate thing to do is end it and stop wasting his or her time. Hurting someone a little now is better than devastating them later.
The old, “It’s not you is me” is still the best way.
You can start by telling her (or him) she is a good person and you don’t want to hurt her, but she is ahead of you emotionally and you’re just not on the same page about your relationship. And you’re letting her go so she can find someone who can give her what she wants.
Do NOT leave the door open for any possibility of being with you again in the future. Depending on her feelings for you any small opening you leave is what she will hang on to. Hope is a destructive emotion when it’s placed on someone who is unavailable. Don’t be selfish, if you don’t deeply care about her be compassionate and let her go completely.
If she tries to talk you into staying together be firm and tell her it does not work for you. But do not ever tell anyone you’re just not attracted to them. That’s cruel and there is no need to hurt anyone’s self-esteem.