I have the exact problem with my German Shepherd puppy. I've tried the ouch method for a week, and I've redirected his biting to a toy, and finally I always stop playing with him every time he bites.
This time he has gone too far and he bit me hard enough to make me bleed. Not only that, after screaming NOOOOOO at the top of my lungs and leaving the area, he starts following me and biting my ankle and growling. He's two months old, and my previous Boxer (died of cancer) had never given me this much trouble in teaching it to not bite.
My next option was to either start using the crate as punishment or start doing the make him gag method. I didn't like either of these methods because I didn't want my dog to think of his crate as a punishment and I didn't want to hurt or get physical with him.
I stumbled upon the coin in a can method, and as soon as I yell ouch, I rattle the can and he backs off. Now he still slips from time to time but as soon as he hears the rattle, he licks instead.
I always prefer positive reinforcement, but IMO there are times that you just have to use negative reinforcement. For any other behavior issue I most likely won't use this method because I can afford to be more patient, but biting is one of the things that I will not compromise with because if this doesn't get fixed in time, it would be a tragedy for this puppy to be the dog that gets euthanized for biting someone.
I tried the nice way, and he simply doesn't get it and thinks it's a game every time I yell OUCH, YELP, and tell NOOOOOOOOOO.
Other then this, he's been a pretty good dog. He's taking his crate training like a champ, and at night, he only wakes me to use the bathroom. He gets along with other dogs, and he's always happy when I arrive home from work.