pull your trouble code's. i bet you have a thermo sensor that is not working right or a IAC valve problem. IAC=Idle Air Contorle Valve. the IAC act's kinda like a choke on a carburator. if the thermo sensor is bad, the ECU think's the motor is cold and try's run it rich and then the motor speed's up cause the IAC is closing all the time cause the ECU think's it is cold.
first pull your trouble code's, a good shope manual will tell you how and it will have the meaning of the code's in it too. next if you have any code, but i belive a #12 code, you need to do a break out test on the sensore or part. again the shop manual will tell you how. you will ned a good volt/ohm meter for this. also check the wire harness consctor's for corrosion and such.
if this sound's to much for you, take it to a good repuitable shop and have them trouble shoot it, this will cost you about $50.00 to $90.00 and hour, but a good troubleshooting tech is worth his weight in gold! it should only take an hour or less if the tech is a good one. and if you have them do the fix, most not all, shope's will wave the trouble shooting fee. when i ran a shope i always did this, we sometime's lost money on the deal but normaly gainded a repeat customer.
when i wrenched i had a gentalman that was the proud owner of a lovely 57 chevy bellair 2 door hard top. he bought it brand new in '57. i was the only guy he would let touch his car, he was too old to work on it him self. what a treat i tell ya! the car was like it came off the show room floor, he even had the window sticker in a vynle case in the glove box. it was all original, it had 2,000,000 mile's on it and i rebuilt his V-8 for him and redid the front end too. oh well i digress..
good luck and have fun!!!