My guess:

>! A compiler

I speak the exact words you want

>! Only does what you program it to do.

I may make mistakes, but its not my fault

>! Code maybe wrong, therefore its not really wrong the programmer is.

You would not like what I say / would need to study a lot.

>! Binary / Machine code maybe require studying to learn / people might not like the complexity of either?

When you hear my name you maybe confused, I dont gather.

>! Could mean to gather, might cause confusion to those without programming knowledge.