Ну так о том и говорят, что ИИ уже близко. Потому и говорят, что скоро заменят.
И для них мой пример – вполне себе неразрешимая задача
Ну так ведь "развитие" означает улучшение в чем-то. Например в решении таких задач. Так же как автобус имеет улучшенную функцию перевозки по сравнению с велосипедом.
У меня нет желания убедить, есть желание объяснить.
Когда я говорил «по бинарнику», я имел в виду не декомпиляцию, как вы, а запуск приложения в какой-нибудь виртуальной среде ИИ, где она могла бы анализировать поведение программы
Вот с этого и надо было начинать. А не обвинять собеседника в нежелании понять прочитать ваши мысли. Обычно люди когда говорят "бинарный код", подразумевают бинарный код, а не пользовательский интерфейс. А когда говорят "код на С++, чтобы сравнить с моими исходниками", подразумевают сравнение кода, а не поведения программы.
Ну, если вы также не знаете, как создать рабочий проект оконного приложения, хотя бы для игры «Крестики-Нолики», на С++ / WTL
А я тут при чем?) Видимо надо объяснить. Вы сказали, что хотите понять преимущества и недостатки ИИ. Я привел вам пример. "Допустим ИИ вам написал 30% похожего кода (ну или функциональности, если хотите), а junior-разработчик на javascript вообще ничего не написал, потому что он ассемблер не знает (ну или C++ / WTL, если хотите)." Какой из этого можно сделать вывод о преимуществах и недостатках ИИ для других задач? Да никакого. Можно ли сделать вывод, что такой ИИ может заменить junior-программиста? Тоже нет.
Но, оказалось, что ИИ не умеет работать, напрямую, ни с Интернетом (никто не ответил прямо на этот вопрос)
ИИ умеют работать с Интернетом, в Интернете об этом есть много информации.
- Просто просьба создать код по бинарнику. - Вы хотите получить исходник из бинарного кода, который обработан компилятором. - Нет, конечно!
Вы сами себе противоречите.
И эти варианты кода, свой и ИИ-шный я и собираюсь сравнивать.
Термин "код" полностью называется "исходный код", или сокращенно "исходник". Поэтому то, что вы хотите от ИИ, называется "получить исходный код из бинарного".
Ну, если ИИ не справится с этой задачей, то, как тогда его вообще можно применять для кодогенерации?
Никак. Я не предлагаю вам применять ИИ для кодогенерации. С моей точки зрения ИИ еще недостаточно развит, чтобы без проверки полагаться на результаты кодогенерации. Но если он кому-то нормально генерирует тесты, то им совершенно без разницы, может ли он правильно декомпилировать ваш бинарник.
Почему? Задача простая. Написать на С++ / WTL оконное приложение
Вы говорили про задачу "создать аналогичный код по бинарнику". Я говорил про нее же.
Странно, что вы вообще мне это рассказываете. Я же дал вам ссылку на свой сайт
Тем не менее, вы почему-то не поняли, что означает моя фраза "Да и компилятор при компиляции иногда сильно меняет структуру кода". Поэтому я и пояснил.
Я же дал вам ссылку на свой сайт, где я про декомпиляцию и перекомпиляцию написал несколько статей. Иначе, я просто не пойму его «творчество».
Опять сами себе противоречите. Если вы программист, то у вас есть навыки, чтобы понять, соответствует ли код требованиям. Неважно, кто его написал, ИИ или не ИИ.
Забудьте про ассемблер и скрипты. Проект должен быть под VS C++
Вы не поняли, о чем я говорил в процитированном тексте.
Я и не сказал, что надо сравнивать бинарный код. Вы хотите получить исходник из бинарного кода, который обработан компилятором. Там уже нет информации об исходной структуре кода. В целом похоже, но какие-то инструкции могут быть в другом порядке, функции заинлайнены, и т.д.
А свой проект я хорошо знаю, поэтому плюсы и минусы ИИ я увижу сразу.
Ну я про это и говорю, это даже для естественного интеллекта сложно, и даже не каждый программист сможет это сделать, какой смысл оценивать по этому интеллектуальные способности искусственного?
Я сам не пробовал, но судя по тому, что о них говорят, что-то "по мотивам" он скорее всего напишет, только вам надо подать на вход текстовый результат дизассемблера. И вот допустим ИИ вам написал 30% похожего кода, а junior-разработчик на javascript вообще ничего не написал, потому что он ассемблер не знает. Какой из этого вывод?
Из того, что велосипед не может увезти 10 человек, не следует, что автобус тоже не сможет. Из того, что ChatGPT не может понять эти сообщения, не следует, что будущий ИИ тоже не сможет.
Я бы сказал, это странный способ оценки ИИ. Даже человек не факт что сделает похоже на ваши исходники. Да и компилятор при компиляции иногда сильно меняет структуру кода.
А где говорится об LLM? Статья называется "Почему искусственный интеллект не заменит человека". Про LLM никто и не говорит, что они заменят, говорят про будущий ИИ, который может из них развиться.
Программа, которая создает человекочитаемый код по бинарнику, называется "дизассемблер". Для вывода на более высокоуровневом языке "декомпилятор". Есть например плагин Hex Rays для дизассемблера IDA, который выдает код на C.
А где я сказал, что надо выступать против технологий? Это вот вообще показательный пример. Много кто даже не думает подумать о том, как помочь людям, которые потеряют работу из-за технологий, это даже не рассматривается как вариант.
В остальных случаях инструмент уничтожил старую профессию, но породил новую.
Это как-то отменяет факт, что много землепашцев и ткачей остались без работы? Думаете, им меньше хотелось есть от того, что появилась новая профессия, куда их не берут?
Фразы "Не пойдет" и "Ну давай, давай" иногда мысленно говорю в подходящих ситуациях :)
У меня не получалось дойти до сложных уровней в одиночной игре с компьютером, поэтому я запускал ее в Virtualbox, сохранял состояние перед ходом и пробовал разные ходы с одной и той же позиции. Научился и дошел до максимального уровня. В режиме "два против всех" играть довольно интересно, на меньших когда знаешь как ходить уже как-то слишком легко.
Ну так о том и говорят, что ИИ уже близко. Потому и говорят, что скоро заменят.
Ну так ведь "развитие" означает улучшение в чем-то. Например в решении таких задач. Так же как автобус имеет улучшенную функцию перевозки по сравнению с велосипедом.
У меня нет желания убедить, есть желание объяснить.
Вот с этого и надо было начинать. А не обвинять собеседника в нежелании
понятьпрочитать ваши мысли. Обычно люди когда говорят "бинарный код", подразумевают бинарный код, а не пользовательский интерфейс.А когда говорят "код на С++, чтобы сравнить с моими исходниками", подразумевают сравнение кода, а не поведения программы.
А я тут при чем?) Видимо надо объяснить.
Вы сказали, что хотите понять преимущества и недостатки ИИ. Я привел вам пример. "Допустим ИИ вам написал 30% похожего кода (ну или функциональности, если хотите), а junior-разработчик на javascript вообще ничего не написал, потому что он ассемблер не знает (ну или C++ / WTL, если хотите)."
Какой из этого можно сделать вывод о преимуществах и недостатках ИИ для других задач? Да никакого. Можно ли сделать вывод, что такой ИИ может заменить junior-программиста? Тоже нет.
ИИ умеют работать с Интернетом, в Интернете об этом есть много информации.
Так когда говорят про скорую замену, то и подразумевают будущий ИИ, а не сегодняшний ChatGPT.
Любой отдельно взятый бизнес так далеко не думает. Уволят людей и наймут ИИ, с остальным пусть государство разбирается.
- Просто просьба создать код по бинарнику.
- Вы хотите получить исходник из бинарного кода, который обработан компилятором.
- Нет, конечно!
Вы сами себе противоречите.
Термин "код" полностью называется "исходный код", или сокращенно "исходник". Поэтому то, что вы хотите от ИИ, называется "получить исходный код из бинарного".
Никак. Я не предлагаю вам применять ИИ для кодогенерации. С моей точки зрения ИИ еще недостаточно развит, чтобы без проверки полагаться на результаты кодогенерации.
Но если он кому-то нормально генерирует тесты, то им совершенно без разницы, может ли он правильно декомпилировать ваш бинарник.
Вы говорили про задачу "создать аналогичный код по бинарнику". Я говорил про нее же.
Тем не менее, вы почему-то не поняли, что означает моя фраза "Да и компилятор при компиляции иногда сильно меняет структуру кода". Поэтому я и пояснил.
Опять сами себе противоречите. Если вы программист, то у вас есть навыки, чтобы понять, соответствует ли код требованиям. Неважно, кто его написал, ИИ или не ИИ.
Вы не поняли, о чем я говорил в процитированном тексте.
Я и не сказал, что надо сравнивать бинарный код. Вы хотите получить исходник из бинарного кода, который обработан компилятором. Там уже нет информации об исходной структуре кода. В целом похоже, но какие-то инструкции могут быть в другом порядке, функции заинлайнены, и т.д.
Ну я про это и говорю, это даже для естественного интеллекта сложно, и даже не каждый программист сможет это сделать, какой смысл оценивать по этому интеллектуальные способности искусственного?
Я сам не пробовал, но судя по тому, что о них говорят, что-то "по мотивам" он скорее всего напишет, только вам надо подать на вход текстовый результат дизассемблера. И вот допустим ИИ вам написал 30% похожего кода, а junior-разработчик на javascript вообще ничего не написал, потому что он ассемблер не знает. Какой из этого вывод?
Из того, что велосипед не может увезти 10 человек, не следует, что автобус тоже не сможет.
Из того, что ChatGPT не может понять эти сообщения, не следует, что будущий ИИ тоже не сможет.
Я бы сказал, это странный способ оценки ИИ. Даже человек не факт что сделает похоже на ваши исходники. Да и компилятор при компиляции иногда сильно меняет структуру кода.
А где говорится об LLM? Статья называется "Почему искусственный интеллект не заменит человека". Про LLM никто и не говорит, что они заменят, говорят про будущий ИИ, который может из них развиться.
Программа, которая создает человекочитаемый код по бинарнику, называется "дизассемблер". Для вывода на более высокоуровневом языке "декомпилятор". Есть например плагин Hex Rays для дизассемблера IDA, который выдает код на C.
Ваше предложение выглядит примерно так:
Тем, кто верит в скорую замену лошадей автобусами: Попробуйте увезти хотя бы 10 человек на одном велосипеде.
Какой еще промпт? Люди-программисты нормально пишут интернет-магазины, задавая заказчику уточняющие вопросы.
Если я вам скажу "Напишите мне интернет-магазин", вы сразу напишете именно то, что мне нужно, или сначала зададите вопросы?
Начальник сказал "Напиши мне вот такую программу", вот и мотивация.
А где я сказал, что надо выступать против технологий? Это вот вообще показательный пример. Много кто даже не думает подумать о том, как помочь людям, которые потеряют работу из-за технологий, это даже не рассматривается как вариант.
Конечная цель разработки ИИ - научить его самого задавать нужные вопросы.
Это как-то отменяет факт, что много землепашцев и ткачей остались без работы? Думаете, им меньше хотелось есть от того, что появилась новая профессия, куда их не берут?
А зря, программистов заменят первыми. Как минимум одними из первых.
Ну так и ИИ будет так же делать. Потому его и опасаются.
Опять какие-то "эксперты по технологиям", которые считают, что ИИ = LLM, и ChatGPT это вершина развития ИИ.
Фразы "Не пойдет" и "Ну давай, давай" иногда мысленно говорю в подходящих ситуациях :)
У меня не получалось дойти до сложных уровней в одиночной игре с компьютером, поэтому я запускал ее в Virtualbox, сохранял состояние перед ходом и пробовал разные ходы с одной и той же позиции. Научился и дошел до максимального уровня. В режиме "два против всех" играть довольно интересно, на меньших когда знаешь как ходить уже как-то слишком легко.