The internet holds more knowledge than a single human ever could, but machines cannot do anything without direct, explicit directions - told to it by a human. That's the definition of stupid to me: unable to do a thing without having to all spelled out to you.
Once. And then it can be rather damn good at it, like how chess computers beat their programmers. I also think you're underestimating how generic algorithms can be, even if you ask Watson a question it's never heard before it probably will find the answer anyway. As for military use, the biggest problem is that humans don't have identification, friend-or-foe systems. If you told a bunch of armed drones to kill any human heat signature in an area I imagine they could be very efficient. Just look at some of the fully automated defense systems like CIWS or C-RAM, no doubt robots know how to fight. True it doesn't have any will of its own, but they can operate quite independently if we let them. And I think we will, to counteract jamming they need to function on their own even if contact with the mothership is lost. Including firing by themselves, eventually.