My Husband and I have been having this problem on our 2000 grand prix for about a year. We replaced the O2 sensors, Map sensor, crankshaft senor, Idle sensor. We checked the wires you name it. Our P0102 went away after we changed the O2 sensor, but the P0171 was still there. We finally decided to replace one more sensor thinking what the hell and it didn't make any sense replacing it. I did some research on this sensor and it made perfect sense after. Try replacing the Air Temperature sensor it's a cheap and easy fix. Our car runs beautifully now.