This could be the result of a few things. First, you could have a large engine vacuum leak. So, that is where I would recommend starting the checking.
Here is a link that explains how to check for and repair vacuum leaks:
Another thing is the idle air control valve (IAC). The purpose of the Idle Air Control valve is to control engine idle speed, while preventing stalls due to changes in engine load. The IAC valve, mounted in the throttle body, controls bypass air around the throttle plate. By moving a conical valve, known as a pintle, in (to decrease air flow) or out (to increase air flow), a controlled amount of air can move around the throttle plate. If RPM is too low, the PCM will retract the IAC pintle, resulting in more air being bypassed around the throttle plate to increase RPM. If RPM is too high, the PCM will extend the IAC pintle, allowing less air to be bypassed around the throttle plate, decreasing RPM.
The first thing I would recommend is checking for a vacuum leak. Intake gasket leaks are common on these engines.
If that isn't an issue, remove the IAC and inspect it and where it mounts. Make sure the airway is clean and not carbon plugged.
To help, here is a link that explains how to service an IAC:
If you find the IAC is bad, here is a link that shows in general how to replace one:
If you look at the attachments below, pic 1 shows the location of the IAC on your vehicle. The remaining pics explain how to remove and replace one specific to your vehicle.
Let me know what you find or if you have other questions.
See pics below.
Images (Click to enlarge)
Thursday, April 15th, 2021 AT 6:14 PM