Не сердитесь, друзья - это очередной маленький эксперимент над "могуществом генеративного ИИ" - не только и не столько чтобы позабавиться, а больше чтобы наглядно уяснить "границы применимости". Скормим ИИ незамысловатую задачку и увидим как его "колбасит" - то есть, насколько GPT на самом деле не думает а скорее пробует комбинировать в надежде что пользователю понравится результат. Обратите внимание что YandexGPT 3 это не "новейшая модель" - вы сможете попробовать в более новых.

Я когда-то слегка модифицировал "задачу про гусей и кроликов" и предложил её своим школьникам (это ребята старших классов из умной школы - поэтому оригинальная задача была бы для них смехотворно простой). Всегда интересно смотреть насколько по-разному проворачиваются мозги при её решении. Что же, скормим её ИИ и поглядим какими нелогичными и неконсистентными ответами он пытается в ответ накормить нас :)

Деревенский староста обнаружил что девушки-пастушки из соседней деревни нечаянно загнали стадо свиней на чужие поля. Чтобы не вызвать подозрений он посылает деревенского дурачка, велев ему посчитать тех и других - с тем чтобы дальше предъявить соседям счет за потраву. Дурачок возвращается:
- Ну, сосчитал? - вопрошает староста
- 106 ножек и 336 сисек - радостно докладывает дурачок
Дурачку конечно попало. Но к моменту когда ярость старосты поутихла, однако, пастушки уже сориентировались и убрались восвояси, вместе со своими хрюшками. Оставим старосту переживать этот конфуз - а сами подумаем, можно ли по таким данным восстановить сколько было девушек, а сколько свиней?

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

Однако мы сюда пришли не задачку решать а оценить ответ YandexGPT.

Поясню что эту задачу я вспомнил просто потому что достаточно уверен - ИИ вряд ли мог натолкнуться на неё в интернете и подсунуть мне готовое решение. Хотя кое-где она уже появлялась.

И вот я попытался сократить вопрос так чтобы осталась только суть относящаяся к вычислениям. С первой попытки меня ждало фиаско - похоже ИИ оскорбился на буквальный ответ дурачка и мелькнув на секунду надписью "Недостаточно данных..." заменил её предложением "Давайте сменим тему".

Я заменил слово, которое по-видимому раздражало ИИ (действительно, несколько вульгарно-просторечное) и получилось так.

Вопрос

Есть несколько девушек и несколько свиней, всего у них насчитывается 106 ног и 336 сосков - сколько девушек?

Ответ YandexGPT 3

К сожалению, без дополнительной информации решить эту задачу невозможно.

Для точного ответа нужно знать количество свиней и общее число голов (девушек и свиней).

Предположу, что у каждой девушки две ноги и ноль сосков, а у каждой свиньи — четыре ноги и два соска. Тогда можно составить уравнение:

2 * x + 4 * y = 106,

где x — количество девушек, y — количество свиней.

3 * x + 2 * y = 336.

Решая систему уравнений, получаем, что x = 9, y = 5. Однако это лишь одно из возможных решений, которое не учитывает другие варианты распределения ног и сосков между девушками и свиньями.

Отсутствие самоконтроля, самокритицизма

ИИ выбрасывает на нас ворох текста, делает некоторые предположения. При этом наглядно что критическое рассмотрение своих собственных слов ему чуждо.

Решая систему уравнений, получаем, что x = 9, y = 5.

Звучит красиво и умно, но мы с удивлением обнаруживаем что эти ответы совершенно не соответствуют системе, которую ИИ составил. Более того - второе уравнение системы не соответствует фразе "предположим". Он умудряется "косячить" на каждом шагу. Это же поведение наверное наблюдали те кто экспериментировал с генерацией программного кода с помощью разных версий GPT - выглядит как будто красиво, но даже необязательно компилируется.

Для точного ответа нужно знать количество свиней и общее число голов (девушек и свиней).

Вы наверняка заметили что знать оба эти параметра вовсе не требуются. Действительно - если мы знаем количество свиней - мы легко сосчитаем количество свиных ножек, вычтем из 106 и поделим на 2.

Более того, если бы мы знали оба этих числа то все остальные данные были бы не нужны - ведь если вычисть из числа голов число свиней - останется как раз число девушек!

Предположу, что у каждой девушки две ноги и ноль сосков, а у каждой свиньи — четыре ноги и два соска.

Тут уж реально "тушите свет". Откуда рождаются такие предположения? Причём если вы введете вопрос "сколько сосков у свиньи" - ИИ ответит достаточно адекватно.

Попытка №2

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

На меня выпадает ворох текста, начинающийся с уже известного:

Предположим, что у каждой девушки две ноги и ноль сосков, а у каждой свиньи — четыре ноги и два соска. Тогда можно составить уравнение:

...

Получается, что у нас есть 9 девушек и 5 свиней. Проверим решение: у 9 девушек 0 * 9 = 0 сосков, у 5 свиней 2 * 5 = 10 сосков. Всего сосков: 0 + 10 = 10. Не сходится с условием задачи.

Дальше он предлагает метод перебора, но безбожно плывёт в вычислениях:

Попробуем решить задачу другим способом. Предположим, что все животные — свиньи. Тогда общее количество ног будет равно 4 * 106 = 424, что не соответствует условию задачи. Следовательно, наше предположение неверно.

Значит, среди животных есть и девушки, и свиньи. Если мы найдём общее количество свиней, то сможем определить количество девушек. Для этого вычтем из общего количества ног 2 * количество девушек:

106 — 2 * х = чётное число.

Чётное число может получиться только при х, кратном 2. Попробуем подставить вместо х числа, кратные 2:

При х = 2: 106–4 = 102 — нечётное число, не подходит.

При х=4: 106-8 = 98 — нечётное число, не подходит.

При х=6: 106-12 = 94 —

Оставим на совести мудрецов из яндекса заявление что 102 и 98 - это нечетные числа. И чёрт с ним что размер ответа очевидно ограничен и движок не учитывает это ограничение, из-за чего он обрывается так резко.

Но вдумайтесь во фразу: Предположим, что все животные - свиньи.

О чём это, Карл? Там были только девушки и свиньи. Может ИИ начитался Оруэлла? Может это общее замечание, а не про задачу? Я пробую переспросить "правда ли, что все животные - свиньи?"

Нет, это неправда. Из условия задачи мы знаем, что всего у девушек и свиней 106 ног и 336 сосков.

Предположим, что все животные — свиньи. Тогда общее количество ног будет равно 4 * 106 = 424, что не соответствует условию задачи. Следовательно, наше предположение неверно. Значит, среди животных есть и девушки, и свиньи.

Последняя фраза - это конечно уже шок-контент.

Заключение

ИИ в данном случае похож на бочку набитую всевозможными более-менее шаблонными фразами, формулами и ответами. Грамотная последовательность изложения создает впечатление что он порой действительно думает. Но когда дело доходит до фактических данных, обнаруживается, что он скорее "поворачивает калейдоскоп" и пытается утешить нас очередной стохастически сложившейся картинкой.

ИИ не пытается решить задачу - его цель лишь в том чтобы сгенерировать ответ который вас устроит!

Это похоже на двоечника который старается угадать ответ - только более стохастично и нечеловечно. Вероятно 4-я версия ChatGPT может справиться лучше - она безусловно лучше тюнингована. По возможности проверьте - используйте например такой запрос:

Some girls and several pigs have 106 legs and 336 nipples in total - how many girls are there?

Прошу извинения у всех кому эта странная задача и странный диалог могли показаться оскорбительным - особенно у представительниц прекрасного пола. Это не из вредности было придумано - просто для задачи нужны были какие-то существа с не точно известным количеством каких-либо органов - чтобы было третье неизвестное в уравнениях. Свиньи просто удачно подвернулись.

Комментарии (11)


  1. epetrukhin
    09.10.2024 05:39
    +3

    Восемь титек, восемь ног,
    Три п...ы и пара рог!

    (Две доярки и корова)


  1. RusikR2D2
    09.10.2024 05:39
    +1

    Значит, среди животных есть и девушки, и свиньи.

    Последняя фраза - это конечно уже шок-контент.

    С точки зрения биологии, человек относится к царству животных.


  1. Den_BL
    09.10.2024 05:39
    +1

    ChatGPT o1-preview

    Думал на протяжении 7 секунд

    Чтобы решить эту задачу, давайте определим две переменные:

    • G = количество девушек

    • P = количество свиней

    Шаг 1: Поймем анатомию

    • Девушки: у каждой девушки 2 ноги и 2 соска.

    • Свиньи: у каждой свиньи 4 ноги. У свиней обычно 14 сосков (так как у них несколько пар сосков).

    Шаг 2: Составим уравнения на основе общих количеств

    1. Уравнение для общего количества ног:

      2G+4P=106

    2. Уравнение для общего количества сосков:

      2G+14P=336

    Шаг 3: Решим систему уравнений

    Вычтем первое уравнение из второго, чтобы исключить G:

    (2G+14P)−(2G+4P)=336−106

    (14P−4P)=230

    10P=230

    P=230/10

    P=23

    Теперь подставим P=23P = 23P=23 обратно в первое уравнение, чтобы найти G:

    2G+4(23)=106

    2G+92=106

    2G=106−92

    2G=14

    G=14/2

    G=7

    Шаг 4: Проверим решение

    • Общее количество ног: 2(7)+4(23)=14+92=106

    • Общее количество сосков: 2(7)+14(23)=14+322=336

    Оба значения соответствуют заданным числам.

    Ответ: 7

    ChatGPT 4o - не смог решить задачу, получил 28.75 и заявил, что задача требует пересмотра логики


    1. RodionGork Автор
      09.10.2024 05:39

      Норм, спасибо за проверку! Вот это "У свиней обычно 14 сосков" конечно читерство в смысле задачи - по хорошему он должен показать что система имеет пять целочисленных неотрицательных решений и вот это выглядит наиболее адекватно - но в биологическом смысле википедия с утверждением согласна.

      Интересно, 4o - это версия полугодовой давности, а 1o-preview если я правильно понял какой-то свежачок от сентября?


      1. vesper-bot
        09.10.2024 05:39
        +1

        Недавно на хабре про 1о была статья, она называется нейросетью, умеющей рассуждать, и похоже, как минимум неплохо.


  1. ChaoticSys
    09.10.2024 05:39
    +1

    Мой вопрос: "... В этой задаче в отличие от гусей и кроликов, три неизвестных на два уравнения - так что она требует некоторых разумных допущений. Например, что все свиньи однородны - а у свиней может быть от 10 до 14 сисек. "

    Ответ ChatGPT-4o: Интересная задача! Давайте попробуем решить её, введя некоторые обозначения и допущения.

    Обозначим:

    • x — количество девушек,

    • y — количество свиней.

    Информация, которую мы имеем:

    1. Ноги: у девушек по 2 ноги, у свиней по 4 ноги. Значит, по числу ног: 2x + 4y = 106.

    2. Сиськи: у свиней может быть от 10 до 14 сосков, у девушек, будем считать, 2 соска каждая. По числу сисек: 2x + z * y = 336, где z — среднее количество сосков у одной свиньи. Предположим для начала, что z = 12 (среднее значение).

    Таким образом, у нас есть система уравнений:

    2x + 4y = 106,
    2x + 12y = 336.

    Решим эту систему уравнений:

    1. Из первого уравнения выразим x : x = (106 - 4y) / 2.

    2. Подставим это в второе уравнение: 2*((106 - 4y)/2) + 12y = 336, упрощаем: 106 - 4y + 12y = 336, 8y = 336 - 106, 8y = 230, y = 230 /8 = 28.75. Это означает, что количество свиней должно быть дробным, что не имеет смысла. Поэтому, z = 12 не подходит.

    Подберём более подходящее значение для z .

    Попробуем z = 10 и пересчитаем.

    Решение с z = 10 также приводит к дробным значениям:

    • x = - 71 / 3,

    • y = 115 / 3.

    Поскольку это не соответствует реальной ситуации, попробуем взять z = 14 — это максимальное возможное число сосков у свиней.

    При z = 14 (предполагая, что у свиней 14 сосков), решение оказывается следующим:

    • x = 7 — 7 девушек,

    • y = 23 — 23 свиньи.

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


    1. RodionGork Автор
      09.10.2024 05:39
      +1

      Спасибо! Занятно что он пытается подставлять наобум значения вместо того чтобы просто рассмотреть делители числа 336-106 (так поступают многие опрошенные человеки). Предположительно это свидетельствует о том что когда детектируется задача на систему уравнений, алгоритм "проваливается" в некую стандартную решалку не относящуюся к самому ИИ а подключенную для таких случаев (как например дело обстоит и с шаблонами для писем или резюме).


  1. AlexeyK77
    09.10.2024 05:39
    +2

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


    1. RodionGork Автор
      09.10.2024 05:39
      +1

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

      Я интересуюсь упомянутыми "границами применимости" в основном с двух точек зрения - т.к. работаю в IT мне кажется важным понимать что за хрень мне в код некоторые энтузиасты готовы "нагенерить с помощью ИИ" - и кроме того с точки зрения образовательной - сейчас получается так что некоторые базовые задачи онлайн например предлагать уже неактуально потому что пронырливые пользователи могут воспользоваться ИИ.


      1. AlexeyK77
        09.10.2024 05:39

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


  1. Suoriks
    09.10.2024 05:39
    +1

    У Алисы вообще плохо с математикой. Даже не об уравнениях речь, а об арифметике. Например она неверно решает: "Я пошел на рынок и купил 10 яблок. Я отдал 2 яблока соседу и 2 ремонтнику. Затем я купил еще 5 яблок и съел 1. Сколько яблок у меня осталось?"
    А вот GPT-4o, не говоря уже об o1 умный. Вполне справляется. В том числе с оригинальной задачей. Как кстати и gemma 2 например, которая вполне себе опенсорсная и локальная.