Pull to refresh
2
0.1

User

Send message

Знаете, мнение, что "ИИ лишит работы программистов" тоже не выдерживает никакой критики. Просто мысли:

  1. Сможете строго доказать, что какую-либо модель ИИ в принципе можно научить программировать на уровне "Может заменить программиста"? Нынешние успехи, увы, никак не доказывают это. А вот наличие у моделей фундаментальных ограничений (правда, в несколько других областях, но все же) заставляет задуматься над этим вопросом.

  2. Если такая модель все-таки существует, то через сколько времени она будет хотя бы создана? Просто если соответствующая модель появится лет так через 200, то смысла бояться почти нет.

  3. Пусть модель создана. Тогда ещё ряд вопросов:
    3.1) Какие будут требования к оборудованию? Будет неудобно, если модели будут нужны парочка обычных и квантовых суперкомпьютеров, чтобы генерировать хотя бы по 1 строчке кода раз в год (никто же не гарантирует, что такого быть не может).
    3.2) Как следствие предыдущего пункта - какова будет стоимость использования этой модели?
    3.3) Если проблема 3.1 и/или 3.2 окажется слишком серьезной - можно ли будет хоть как-то оптимизировать модель без существенных потерь в качестве и до состояния, когда заказчику будет выгоднее оплачивать доступ к модели, а не живых людей?

Это как минимум. Обычно на данные вопросы ответов нет, все ограничивается "вот 2 года назад не умели, а сейчас умеют, а потому 2-3-5-10 лет - и всех программистов уволят". А ответы на них прямо определяют, стоит ли бояться или нет. И ведь это далеко не все вопросы.

Так что увы - если Вы не видите препятствий, то это не значит, что их нет.

Сравните, сколько токенов нужно будет сгенерировать модели на создание одной и той же программы с использованием фич высокоуровневого ЯП, на том же ЯП, но без фич, и на ассемблере. А затем посмотрите скорость генерации токенов у больших языковых моделей. Да и модели любят начинать пороть бред, если надо сгенерировать больше, чем пару десятков строк кода (с оговорками, но все же), причем чем больше надо сгенерировать, тем больше будет вероятность бреда; это я и имел в виду, когда говорил про «баги». Так что размер выходных данных на данный момент все же имеет значение. В будущем, возможно, это решат, и тогда на размер будет действительно все равно, но когда решат (и решат ли вообще) - неизвестно.


Сравнение с компилятором не считаю корректным - компилятор с вероятностью, крайне близкой к единице, верно и качественно выполнит поставленную перед ним задачу. А вот когда модели научатся с такой же вероятностью генерировать качественный код, который к тому же будет удовлетворять не только запросу, но и почти всем тараканам в голове запрашивающего - неизвестно. Когда научатся - ваши замечания будут верны, а до тех пор программистам все равно придется лезть и что-то править в коде, либо же они будут изменять код под чьих-то тараканов, которых модель никак понять не может и посему генерирует не то.
Тем более, код моделей можно изучать на наличие новых алгоритмов или же наличие нежелательных паттернов, которые неплохо бы убрать в моделях новых версий (аргумент не очень, конечно, но все же).


Ну, насчет исключительных случаев - как вы и сказали, что они редко, но все же бывают. А теперь представьте, что у вас есть модель с высокой точностью, но крайне медленная (учитывая, что возможности моделей растут быстрее, чем их оптимизируют - такое вполне реально); представьте также, что сгенерированный и абсолютно нечитабельный код будет успешно работать месяц-два-полгода, после чего резко упадет, а затем выяснится, что поднять надо его быстро, а модель будет все исправлять пару дней. Будет очень грустно.


А насчет последнего - каким образом вы хотите сообщить это модели без дообучения? Ладно, в случае небольших задач это сделать вполне реально, а если задача будет огромной, почти не поддаваться разбиению на более мелкие подзадачи и притом будет неизвестно, нужен ли там будет этот алгоритм (вдруг там случай, в котором "классические" алгоритмы будут лучше нового? Или наоборот, он там ни в каком виде не нужен, а потому ваше уведомление модели об новом алгоритме будет мешать генерации).

На самом деле, сомнительные утверждения. Некоторые мысли:

  1. Отказ от абстракций => увеличение размера программы (не всегда, но все же) => увеличение количества токенов, которых нужно сгенерировать. Последнее, в частности, ведет к увеличению затрат на 1 генерацию, увеличению кол-ва ошибок в коде и вероятным проблемам с размером контекста модели. Ну, а уж если окажется, что в сгенерированном коде найдется критическая ошибка, которую модель в упор не может исправить даже после внушительного числа запросов... не позавидуешь программистам, которым придется разгребать это чудо. Нет, можно, конечно, нафантазировать, что вот совсем скоро все эти проблемы возьмут да как-то решатся, но я в этом сомневаюсь. А до тех пор новые фичи ЯП потенциально будут способны смягчать недостатки модели, следовательно, ИИ вполне будут нужны эти фичи.

  2. Обобщая рассматриваемую ситуацию с "обучением модели новой фиче" - положим, что каким-то образом был открыт принципиально новый алгоритм (или структура данных - неважно), который позволяет в разы эффективнее решать какие-то акутальные задачи; дополнительно положим, что в силу новизны существующие на момент открытия модели если и способны сгенерировать этот алгоритм, то делают это исключительно редко. Как заставить ИИ использовать это открытие? Или это тоже будет гарантированно не нужно?

Так что, если не вдаваться в необоснованные фантазии уровня "ИИ будет способен писать эффективный код без всего этого", то данные вопросы оказываются куда сложнее.

Хм, антивещество тоже впервые искусственно получили в районе 70-х. Прошло 50 лет с тех пор. А теперь напомните, сколько сейчас стоит получение 1 грамма антивещества?

Космические ракеты, кстати, тоже вот давно изобрели - сильно они подешевели за столько лет? Может, напомните мне цену даже самой дешёвой ракеты? Каждый бизнес может позволить себе купить хотя бы одну?

Так что ваш аргумент "Сейчас технологии разовьются, и все подешевеет" в общем случае не является верным. Нейросети и роботы могут подешеветь и спустя 10 лет, и спустя 100, а могут вообще не подешеветь - прогнозировать что-то здесь сложно. Прогнозов про их возможности, кстати, это тоже касается.

Посмотрите, что такое "winograd schema challenge", и скажите, почему ChatGPT прилично так тупит на подобного рода запросах (причем, судя по гуглу - тупит не у меня одного)? Разработчики поставили фильтры? Сомнительно, сколь не изменяет память, OpenAI сами в свое время писали, что модель GPT-3 достаточно хорошо справляется с такими запросами (хотя и неидеально). Да и в целом такие запросы незачем как-то фильтровать. Хитрый ИИ скрывается? Опять же вряд ли, ChatGPT на них тупит ну слишком сильно (ладно слегка и иногда подтупливать, но тупить так, будто ты полнейший идиот - слишком уж нерационально в данном случае).

Так что я лично сомневаюсь, что ChatGPT дает неправильные ответы из-за фильтров (не считая совсем уж исключительных ситуаций)/умного ИИ, который хочет всех перехитрить или еще каких-то подобных причин.

Посмотрел оригинальную статью. После прочтения появилось несколько серьезных вопросов:


1) Как утверждает основатель стартапа, он, используя GPT-4, написал весь код, при этом потратив 0.11$. Заходим на сайт OpenAI и смотрим цены - видим, что от GPT-4 на такую сумму можно получить не более 2000 токенов. Учтем, что в итоговую стоимость также входит обработка запроса пользователя (0.03$ за 1000 токенов); более того, GPT-4 генерирует не только непосредственно код, но и комментарии к нему. Не забудем также, что мы предполагаем, что во всех случаях модель выдавала нужный код с первого раза, без дополнительных запросов на повторную генерацию, что достаточно маловероятно. Итог - на сам код остается маловато токенов. Да и даже если учесть, что все 2000 токенов пошли исключительно на код, то получаем, что автор с помощью GPT-4 создал вряд ли больше чем 300-400 строчек кода.

2) Если правильно понимаю, то основатель стартапа "Нашел очень хорошего разработчика, который запросил 2 недели времени и £5k на данный проект", после чего взялся за GPT-4, все написал и подсчитал выгоду.

В итоге получаем 2 наиболее вероятных варианта развития событий:

1) Основатель стартапа попался на откровенного скамера, запросившего космическое кол-во времени/денег за небольшое кол-во работы (да, я понимаю, что мерить кол-во работы в строчках кода - это очень тупо, но вот только когда кол-во необходимых строчек не превышает 300-400, а, скорее всего, находится в пределах 150-200... Я крайне сомневаюсь, что объем работы здесь велик, особенно учитывая то, что, судя по статье, внедрение кода не заняло много времени)

2) Никакого экономия времени и денег не было, просто кто-то решил похайпить на модной теме.

Безусловно, могу ошибаться в своих суждениях, но, учитывая нынешние тенденции, полагаю, что мы просто столкнулись со вторым вариантом (впрочем, уже в который раз), и волноваться особо не о чем.

Information

Rating
3,296-th
Registered
Activity