By Nicole DiGiose, content editor
BAYOU will try to read programmers’ minds to predict the program they want. Image source: Pixabay.
Tired of writing your own code for new software? There’s an AI for that. With funding from DARPA and Google, computer scientists at Rice University have created a deep-learning, software-coding application that can help human programmers navigate the growing multitude of undocumented application programming interfaces (APIs).
Called BAYOU, the tool works like a search engine for coding. By telling it what sort of program you want to create with a few keywords, it will respond with Java code that will do what you’re looking for based on its best guess. In a study published earlier this month on the preprint server arXiv, researchers describe how they built the application and what sorts of problems it can help programmers solve.
In its earliest stages, BAYOU read the source code for about 1,500 Android apps, which comes out to about 100 million lines of Java. All of that code was then fed through its neural net, resulting in AI that can program other software.
Impressively, if the code that BAYOU read included information about what the code does, it also learned what those programs were intended to do along with how they work. It’s this contextual information that allows the AI to write functional software based on a couple of keywords and basic information about what the programmer wants.
According to BAYOU co-creator and associate professor at Rice University, Swarat Chaudhuri, people have been trying for 60 years to build systems that can write code, but the problem was that their methods weren’t too compatible with ambiguity. “You usually need to give a lot of details about what the target program does, and writing down these details can be as much work as just writing the code,” he said . “A developer can give BAYOU a very small amount of information — just a few keywords or prompts, really — and BAYOU will try to read the programmer’s mind and predict the program they want.”
Chaudhuri said that the application trained itself by studying millions of lines of human-written Java code and has studied basically everything on software development platform GitHub.
With such a software-coding application, teaching people how to code may become simpler and more intuitive, as this type of AI may soon be able to generate examples of code, or programmers and students can use it to check their own work. Currently, BAYOU is still in its early stages, and though it may seem like it, this isn’t an example of AI becoming self-replicating and taking over the world — at least not yet.
Learn more about Electronic Products Magazine