Bayou — AI, чтобы помочь вам кодировать


Программисты склонны воображать, что ИИ вытеснит нас в последнюю очередь — в конце концов, мы являемся частью команды, которая действительно занимается этим! Фактически, мы, скорее всего, увидим помощников по программированию ИИ раньше, чем вы могли ожидать. Байю — яркий тому пример, и вы можете попробовать его прямо сейчас.

Исследователи из Университета Райса использовали глубокое обучение с использованием TensorFlow, чтобы научиться генерировать полные методы из частичных реализаций. На данный момент он работает только с Java, но это всего лишь вопрос обучения. Вы садитесь с Байу и набираете черновик метода Java, который вы могли бы написать, если бы не совсем запомнили API и у вас не было времени все просмотреть. В полученном черновике будут «дыры», в которые нельзя будет написать код. Если вы подскажете, что может попасть в эти дыры, Байю попытается заполнить пробелы.

На данный момент Bayou может заполнить только одно отверстие для каждого метода, но его можно расширить, чтобы справиться с большим количеством. Подсказка, которую вы должны предоставить, — это либо вызов метода API, либо тип данных, который вы хотите использовать в сгенерированном коде.

Пример, приведенный в документации:

/// — это обозначение, используемое для сообщения Bayou, что это запрос — как мне использовать readLine для заполнения этого метода?

В этом случае Bayou, скорее всего, сгенерирует в качестве тела метода:

FileReader fr1;

BufferedReader br1;

Строка s1;

пытаться {

fr1 = новый FileReader (файл);

br1 = новый BufferedReader (fr1);

s1 = br1.readLine ();

} catch (FileNotFoundException _e) {

} catch (IOException _e) {

}

возвращаться;

Вы можете изменить сгенерированный код, оставив несколько запросов API:

/// call: readLine call: close

В этом случае вы получите тот же код, но теперь файл будет закрыт для вас.

Вы можете видеть, что это не интеллектуальный кодировщик, но он пытается соответствовать тому, что вы предлагаете, и избавляет вас от создания большого количества почти шаблонного кода.

Вы можете увидеть Bayou в действии на видео:

Вы также можете попробовать его по-настоящему на сайте Bayou и присоединиться к его разработке на GitHub. Это проект с открытым исходным кодом под лицензией Apache 2.0. Это также результат инициативы DARPA, направленной на упрощение программирования и меньшую подверженность ошибкам.

Ищите новые и лучшие инструменты искусственного интеллекта, которые помогут нам в программировании. Если вы все еще пишете код с помощью emacs и думаете, что командная строка — единственный способ работать, пора переходить в новый век. Мы можем делать больше с инструментами ИИ, чем с командной строкой. Мы не можем надеяться кодировать все с нуля в будущем, и помощники по ИИ и товарищи по программированию — это способ, которым мы можем получить помощь, необходимую для навигации во все более сложном мире API-интерфейсов, фреймворков и полных систем.


Добавить комментарий