Mark Zuckerberg is known to start each year by setting aggressive personal goals for himself. This year, he announced he was going to build an artificial intelligence (AI) that would help him control things around his smart home, like turning on the lights, starting home appliances, and playing music on various speakers. He named the system "Jarvis" after the digital butler from Iron Man — but after spending a full year of tweaking it, the AI is still being dogged by many of the same problems as the AI that's out there today.
Zuckerberg posted a long note on Facebook about the results of his year-long AI project, and went into detail about many of its shortcomings. The outcome of his project, while still an incredible feat of programming, sounds just as dumb as the other smart homes out there. It can basically only run a handful of commands — and it's not for a lack of Zuck trying to do more.
The failures of Jarvis stem from the fact that there is a shortage of common standards and APIs that enable different brands of "smart" products to talk to each other. Without that necessary bridge between devices, stringing commands together can be rather difficult. For example, it's hard to get a toaster to communicate with a alarm clock if they don't speak the same programming language. Zuckerberg explains this in simple terms.
For assistants like Jarvis to be able to control everything in homes for more people, we need more devices to be connected and the industry needs to develop common APIs and standards for the devices to talk to each other.
While Jarvis is an impressive hobby project, it does fall significantly short of what's already possible on systems like the Amazon Echo and Google Home. The biggest difference is that developers can build skills for those systems by plugging into Amazon and Google's respective APIs. But for Jarvis, Zuckerberg had to reverse-engineer a lot of those same tasks. It ended up making really basic tasks a huge burden to program, as Zuckerberg explains in his post.
Before I could build any AI, I first needed to write code to connect these systems, which all speak different languages and protocols. ... I had to reverse engineer APIs for some of these to even get to the point where I could issue a command from my computer to turn the lights on or get a song to play.
The other huge problem is simply manpower. When you're working with existing APIs and huge teams of engineers, it's easier to divvy up responsibilities, like building different variations of the same command. Zuckerberg, however, had to program everything himself. He explains how this quickly became a time sink when he tried to program various requests for music. Apparently teaching Jarvis (or any other AI) the difference between "play someone like Adele" and "play some Adele" is really difficult. Zuckerberg also touched on the problem of teaching AI context.
Understanding context is important for any AI. For example, when I tell it to turn the AC up in "my office", that means something completely different from when Priscilla tells it the exact same thing. That one caused some issues! Or, for example, when you ask it to make the lights dimmer or to play a song without specifying a room, it needs to know where you are or it might end up blasting music in Max's room when we really need her to take a nap. Whoops.
Zuckerberg also identifies a bigger problem that filtered up while he was trying to build his smart home hub. It had to do more with Jarvis's inability to learn new tasks over time.
I spent about 100 hours building Jarvis this year, and now I have a pretty good system that understands me and can do lots of things. But even if I spent 1,000 more hours, I probably wouldn't be able to build a system that could learn completely new skills on its own — unless I made some fundamental breakthrough in the state of AI along the way.
In short, Mark Zuckerberg appears to have built a pretty cool AI, something he can use to play games with his wife and daughter Max, and even use it to control different appliances around his gigantic home. But at the end of the day, even a genius like Zuckerberg is bound to the same shortcomings of technology that the rest of us are. So, it's safe to say that if someone as smart and wealthy as Zuckerberg can't get a smart home working properly, it will probably be hard for anyone to do it.