I'd push back a bit on the idea that no-pull harnesses alone will solve this. They're useful for preventing her from dragging you around, sure, but they're more of a management tool than training. The real work happens when you actively reward her for choosing to stay near you - and I think the earlier answer about timing is spot on. The trick is catching those moments *before* she decides to lunge at a squirrel, not after she's already hit the end of the leash. With a 2-year-old lab, you're fighting instinct, so you need to make the alternative more interesting to her than whatever distraction is out there.
What actually shifted things for me was treating loose-leash walking like a game rather than an obedience demand. Every few steps when she's walking calmly beside you, mark it with a word or click sound and give her a treat right away. The rewards need to be better than whatever she's chasing - so high-value stuff like chicken or cheese, not kibble. You'll probably need to do this for weeks before it clicks, and yeah, it means shorter walks at first because it's exhausting to stay that focused. But once she understands that walking slack means good things happen *to her*, the motivation shifts. Then when she does pull toward a dog or squirrel, you can just stop moving or turn away calmly instead of fighting her.
Consistency really does matter, but not in the way of picking one collar and never changing it. What matters is that everyone walking her uses the same reward timing and doesn't accidentally reward pulling by letting her reach whatever she's lunging for. If she pulls hard enough to get to the thing she wants, you've basically taught her that pulling works. That's the harder pattern to break than starting fresh with the right approach.