It sounds like a vacuum leak but maybe a code scan will return a fault, if no fault then you will need to get a PAY scan done to look at the data from the TPS, IACV, MASS, MAP, etc, and a couple other items that can control the air entering the engine through normal means. May be out by a little but not enough to set a code yet but an experienced technician will see why the idle is high. Some of the items I mentioned may just need cleaning. That would be my first step.