Татарин>> БОльшая же часть работы современных программистов куда более суха и проста.
Salimbek> Я извиняюсь, а вы работаете программистом? Или откуда у вас знания о том, "что это все элементарно"?
Да, а что?
Более того, нейросети для своих целей я тоже писал ("когда это ещё не было модным"©
)
Salimbek> Ну вот, для примера: сможет ли ваш ЧатГПТ сам придумать алгоритм Кнутта-Морриса-Пратта?
Понятия не имею, и возможности проверить нет: он его просто знает.
Наверное, нет... и что?
Salimbek> Или напишет алгоритм
В какой-то момент напишет, конечно. Ничего особо космического там нет же. Это всё работа "по образцу" с комбинированием и вариациями. Вообще, характерный пример такого "творчества" - генерация нейросетями картинок. Которые тоже сначала были чистым странным сюром, потом, по мере обучения более глубоким паттернам, стали выделять, ловить и пересоздавать конкретные образы и комбинировать их.
Мы в начале пути, но собссно, некоторая часть кода закрывается уже сейчас.
И не надо про безумно творческую работу программиста. 90% кода сейчас - именно что написание кода к доступа к данным и примитивной их тасовки с обработкой по известным API (и с применением давно написаных и известных базовых алгоритмов, замечу). 9% - непримитивная их тасовка с обработкой, которая требует применения каких-то знаний из "внешнего" мира. И сильно менее 1% - работа, в которой есть следовые количества творчества.
Спорите? Ну, ладно, расскажите, что такого творческого в написании драйвера для... не знаю, принтера или сетевой карты по спекам. Что там такого в коде драйвера такого, что требует творческого мышления? Сразу скажу, что IP-стек под старые ISA на Realtek на 16F84 реализовывал. Это считается высоквалифицированным и относительно высокооплачиваемым интеллектуальным трудом. Но что там такого творческого с такой глубиной абстракций и озарениями, что они требуют человека? Точнее, где там что-то такое, для чего нужен человек?
И про "это у вас фигня всякая, а вот у нас, НастоящихТворческихПрограммистов всё такое творческое, такое творческое!" - тоже не надо.
Не поверю.
Реально чего-то творческого в кодинге осталось очень мало - это исключительно редкие случаи, когда люди реально придумывают какой-то новый алгоритм, а не реализуют имеющийся в контексте задачи. Ну и на уровне бизнес-аналитика и архитектора творческая работа ещё осталась, но и то... механической и там хватает.
Salimbek> Вот, в последней задаче, прям сам ИИ разработает протокол, напишет код для каждого из узлов, да еще и, наверное, точки максимально эффективного размещения этих датчиков укажет?
А почему нет-то?
Прямо сейчас и конкретно ЧатГПТ, наверняка, нет. Но это же, всё-таки, большая
языковая модель, а не автокодер. Люди занимаются тем, что языковые модели спецом именно на программирование натаскивают, и потом прогоняют дообучение именно на свой код. Получается интересно, особенно, если у конторы много типовых проектов (сайты на своём фреймфорке, какие-то базы данных, игры на одинаковом движке и т.п.). С нуля 100% работать код, может, и не будет, но создать заготовку, в которой уже учтено и поправлено много тонкостей каcающихся конкретного проекта.
Перевести проект (довольно большой) с языка на язык и с API на API можно и сейчас. Например, переписать что-то с Питона на С# - задача, занимающая довольно много человеческого времени. А тут машина делает это (почти) сама.
Salimbek> А вот с чем реально можно сейчас работать с этими ИИ, так это использовать их для написания типовых блоков, или специфичных языковых конструкций (ага, продвинутый справочник, открывающийся на нужной странице), но без физического программиста, который доведет эту "рыбу" до ума (в том числе, за счет самоосознания и понимания окружающего пространства) ничего не взлетит.
Пока - да.
...я вот смотрю на развитие нейросетей, генерирующих графику. Ещё 3 года назад они генерировали абстракцию. 2 года назад - нечто похожее на картинку (но точно, что это было никак невозможно спутать с рисунком человека). Год назад - картинки временами по описаниям иногда получались очень путными, только вот кисти рук или ноги часто подводили, с числом пальцев нейросеть путалась.
Сейчас нейросеть рисует нечто годное или даже неотличимое от человеческого
в большинстве случаев, и никакого "физического художника" ей для этого не нужно.
Задача генерации картинок сложна, в каких-то аспектах сложнее связного выставления токенов в верном порядке, а паттерны для генерации "грустной собаки-снайпера в валенках" нужны довольно глубокие. Про ЧатГПТ (который может заменить 99% работы переводчика с естественных языков!) я вообще молчу.
Я не вижу никаких причин, по которым сеть не может написать 90% всего, что сейчас пишут программисты, оставив программисту (или как он там будет называться) задачи бизнес-аналитики, составления грамотного ТЗ и, может быть, в редких случаях, описания высокоуровневой архитектуры.
Ещё раз: ЧатГПТ - вообще сетка с другими задачами, её никто не учил специально писать код и - особенно! - верифицировать написанное. Это её эмерджентое свойство: почитала кучу всего - научилась.
Я знаю, что сейчас люди активно работают над специализированными семантическими сетями, которые будут именно работать над кодом.
Не говорю, что это будет просто. Но создание СтейблДиффужн тоже не было простым. Справились же.