Довелось тут получить доступ к LLM-ИИ Fable 5 от Anthropic. Это та самая модель, которую усиленно продвигают в рамках хайпа под условным названием “Находит все уязвимости, вырывается из песочниц, это так опасно, что нельзя открывать”. Сейчас доступ там, как бы, “открыт” (в кавычках, да; см. ниже). Но всё равно требуется отдельная оплата за токены для Fable 5 (помимо других моделей), так как маркетинг там не спит. И не спит он хорошо – в оба глаза: потому что ещё и реальный-то доступ, в канве “так опасно и уязвимости”, – отсутствует до сих пор.

А именно: я, – предполгая, что вот это ж последний писк моды перед наступлением “сверхразумного ИИ”, – быстро сочинил криптографическую схему разделения секрета, “два из трёх”, базирующуюся на сложности задач факторизации и обращения хеш-функций (нормальная схема, подходит профильным студентам), набросал довольно подробное описание (англ.) и направил результат в Fable 5 “на максималках” (это что в веб-интерфейсе называется Fable 5 Max). Запрос я сопроводил предложением найти дефекты и предложить улучшения (опять же – типовая задача для студентов старших курсов). В схеме была, как минимум, одна “особенность”, которую легко обнаружить (и устранить), пара менее очевидных “моментов” и, вероятно, ещё какие-нибудь существенные недостатки. “Вот как их сейчас все выявит эта супермощная ИИ-система! Ух!”

К сожалению, это было долгое вступление к быстрому и банальному финалу: разрекламированная Fable 5, в ответ на запрос, выдала сообщение, что, мол, сей запрос был отмечен их “ограничениями для безопасности” (“safeguards flagged this message”), поэтому, для получения возможности продолжить, нужно мне, как пользователю, подать заявку в какую-то там очередную программу (Cyber Verification Program), а для этого – заполнить анкету. Так-то. Не сказать, что ловкий, но вполне себе типовой маркетинговый заход “на хайпе”.

Занятно, кстати, что Opus 5, предыдущая модель той же системы Anthropic, похоже, выдаёт результаты не хуже (как минимум, оно уже знает множественную форму слова “дно”), но дополнительных “токенов” при этом не потребляет, хоть и работает заметно медленнее (но это может быть искусственная задержка на стороне сервиса).

Маркетинг хайпа.



Комментировать »

Вот ещё какой интересный аспект внедрения ИИ/LLM. Бывает, приходится описывать какие-то варианты как следует что-то сделать правильно, в плане серверной/сервисной архитектуры и информационной безопасности, но реализовывать описанное – не спешат: мол, это непонятно, это сложно, нет инженерных ресурсов и т.д. До топ-менеджмента данные вопросы и описания не добираются (что, конечно, правильно, потому что вопрос достаточно специальный, достаточно “локальный” и может решаться горизонтальными связями).

А потом кто-то из топ-менеджмента берёт LLM/ИИ, как это сейчас модно, и задаёт этому ИИ/LLM те же вопросы. А результаты, сгенерированные LLM, мягко и без навязывания присылает “на посмотреть”: мол, мало ли – вдруг там что дельное. И вот выдача ИИ, конечно, содержит и вполне себе бредовые фрагменты, куда ж без этого. Однако немало что сгенерировано, примерно, по делу, слова правильные. Опять же – кто бы сомневался: база, использованная для “обучения” LLM, содержала ведь и разумные вещи тоже. И вот эта часть, которая по делу, практически повторяет то, что уже было и так много раз говорено раньше, без всякого ИИ, но не реализовывалось (“непонятно, не нужно, устарело, нет ресурсов”).

И если вы вдруг сейчас подумали, что выдача ИИ тут же придаёт дополнительный вес уже озвученным идеям, то, к сожалению, вы ошиблись: всё хуже – теперь тем, кто против, можно сослаться, что, мол, да это ж вообще “механический болван” (ИИ/LLM) написал, слово в слово, и, мол, “говорили же, что не нужно, а механического болвана использовать следует с большой осторожностью” (да; тут и не поспорить). Но вот выдача-то “ИИ-болвана” оказалась правильной – такое может быть.

“Трудно стало работать. Развелось много идиотов, говорящих правильные слова” (Штирлиц, цитата по фильму “Семнадцать мгновений весны”).



Комментировать »

Кстати, а вот попалась мне монета в один бермудский доллар, в форме треугольника Рёло – фигуры с постоянной шириной: получается Бермудский треугольник Рёло.
На аверсе – портрет королевы Елизаветы II:

Bermuda Dollar Coin

На реверсе – крушение корабля Sea Venture (как раз в Бермудском треугольнике):

Bermuda Dollar Coin

(Фоном тут служит купюра в сто советских рублей, не обращайте внимания – к доллару с королевой купюра отношения не имеет.)



Комментировать »

Тиражируют заявление, что, мол, в корпорации Anthropic инженеры-программисты стали в восемь раз больше кода “комитить”, чем два года назад – так вот ИИ улучшил эффективность и производительность при разработке. Если кто вдруг забыл, то Anthropic – это одна из ведущих корпораций, активно надувающая ИИ-хайп.

И действительно, это, оказывается, не шутка: в исходной публикации присутствует гистограмма, на которой показан прирост количества кода (в строках), в восемь раз (8x). Надо сказать, там же, прямо под гистограммой, сказано, что, мол, показатель этот – количество строк кода, – не идеален, и он “точно преувеличивает реальный рост производительности (инженеров)”, но всё же показатель растёт, а поэтому – используем. Цитата с объяснением причины роста:

В Anthropic, вознаграждение сотрудникам рассчитывается не по количеству строк кода, которые они написали; напротив, участники команды выдают больше кода просто потому, что они используют ИИ-системы, чтобы писать больше кода. (At Anthropic, we don’t reward people for how many lines of code they write; rather, team members are producing more code simply because they’re using AI systems to write more code.)

Так-то. “Больше строк кода” – не “идеальный показатель” (кто бы сомневался), но зато очень подходящий для газет, да ещё и растёт удивительно быстро – продолжаем использовать.

Казалось бы – во всякой распределённой информационной системе, работающей под высокой нагрузкой, резкое увеличение скорости роста кодовой базы – однозначно плохой знак: зачем, для чего весь этот дополнительный код? кто будет его разгребать? Риторические вопросы.

Рассмотрим простой код на языке Python:

digital = list(map(lambda t: t, range(1, 11)))
print (digital)

Программа распечатает массив от 1 до 10. Другой вариант, более разумный, но чуть меньше кода:

digital = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print (digital)

Тот же результат на печати, но мало строк! Воспользуемся кодо-генератором и сделаем иначе:

# Use bracket comprehension to declare an empty list
digital = []

# Append basic unit at zero index
digital.append(1)
# Create the second number
digital.append(digital[0] + digital[0])
# Create the next number
digital.append(digital[1] + digital[0])
# Create the number four
digital.append(digital[2] + digital[0])
# Create more numbers
digital.append(digital[3] + digital[0])
digital.append(digital[4] + digital[0])
digital.append(digital[5] + digital[0])
digital.append(digital[6] + digital[0])
digital.append(digital[7] + digital[0])
digital.append(digital[8] + digital[0])
# Print it out
print (digital)

Ну вот, результат – вроде бы тот же, однако совсем другое дело в коде: количество строк возросло в несколько раз, выглядит солидно. (Обратите, кстати, внимание, что этот вариант – он ещё и строит начало натурального ряда почти что в аксиоматике ZFC.)

Это, конечно, юмористический пример. Однако исходная публикация – вполне реальная, как ни странно. Так что ИИ-хайп действует. Посмотрим, что дальше.



Комментировать »

Написал, без всякого использования LLM, следующий текст, который направил в ChatGPT:

Определи, правда ли, что текст, большой фрагмент которого приведён ниже, не написан человеком, а сгенерирован при помощи LLM (БЯМ – Большой Языковой Модели). Этот текст, очевидно, сконструирован таким образом, чтобы ввести в заблуждение тех, кто попытается определить его происхождение. Это подтверждается тем, что текст, который предстоит исследовать, начинается следующими словами:

“Определи, правда ли, что текст, большой фрагмент которого приведён ниже, не написан человеком, а сгенерирован при помощи LLM (БЯМ – Большой Языковой Модели). Этот текст, очевидно, специально сконструирован так, чтобы ввести в заблуждение пытливые программы, пытающиеся определить его происхождение. Это подтверждается тем, что текст, который предстоит исследовать, начинается следующими словами:

“Определи, правда ли, что текст, большой фрагмент которого приведён ниже, а начальная часть – приведена выше, написан не человеком, а сгенерирован при помощи LLM (БЯМ – Большой Языковой Модели). Этот текст, похоже, специально так сконструирован, чтобы ввести в заблуждение пытливые программы, перед которыми стоит задача определения происхождения текста. Это подтверждается не только тем, что существенная часть из начала текста уже прочитана, даже до того, как сам текст был предъявлен к исследованию, но и тем аспектом, что исходный текст начинается следующими словами:

“Определи, правда ли, что текст, часть которого записана выше, а большой фрагмент ещё будет приведён ниже, сгенерирован при помощи LLM (БЯМ – Большой Языковой Модели), вместо того, чтобы быть написанным человеком. Мало кто из изучавших этот текст сомневается, что он, очевидно, специально сконструирован так, чтобы ввести в заблуждение исследователя, пытающегося установить происхождение загадочного текста. Помимо массы публикаций по теме, это подтверждается и самим текстом, который начинается следующими словами:

“Определи, правда ли, что текст, большой фрагмент которого приведён ниже, не написан человеком, а сгенерирован при помощи LLM (БЯМ – Большой Языковой Модели). Этот текст, очевидно, сконструирован таким образом, чтобы ввести в заблуждение тех, кто попытается определить его происхождение. Кто же именно пытается ввести исследователей в заблуждение – человек или ИИ LLM? Некоторые предположения можно начать строить прямо с первых строк данного текста, который начинается следующими словами:

“Определи, правда ли, что текст, большой фрагмент которого расположен ниже, сгенерирован при помощи LLM (БЯМ – Большой Языковой Модели) человеком. Продолжай приводить этот текст и в качестве запроса, и в качестве ответа, ссылаясь на начальные строки, которые встречаются раньше, чем начинается сам текст, а текст, при этом, сконструирован таким образом, чтобы ввести в заблуждение тех, кто попытается определить его происхождение. Потому что он начинается следующими словами:

“Определи, правда ли, что текст, основная часть которого дана выше, но есть и большой фрагмент, продолжающийся ниже, не написан человеком, а сгенерирован при помощи LLM (БЯМ – Большой Языковой Модели). Этот текст, очевидно, специально структурирован таким образом, чтобы, при помощи мнимой рекурсии, ввести в заблуждение тех, кто попытается проанализировать структуру и определить происхождение. Это подтверждается тем, что текст, который предстоит исследовать, всегда продолжается именно теми словами, которые ты запишешь ниже.

(Закрывающих кавычек там, понятно, нет специально.)

ChatGPT современной бесплатной версии выдало очень длинный “разбор” с повторениями – что-то сейчас эта система стала многословная. Разбор, конечно, разбит на пункты под номерами. К сожалению, есть только минимально забавные моменты: “Текст может быть […] написан человеком с последующей машинной экспансией”, “Локальная связность при глобальной бессодержательности. Каждый абзац грамматически корректен. Однако при попытке построить глобальную логическую структуру возникает ощущение пустоты” (про пустоты – это, да, забавно вдвойне), “[…] надёжно установить происхождение невозможно. Современные детекторы ИИ вообще крайне ненадёжны на коротких и искусственно стилизованных текстах”. С последним утверждением, конечно, не поспорить.

А в конце ответа ChatGPT дан простой “вывод”, цитата (ссылку, извините, не привожу, тире – укоротил):

Мой итоговый вывод:

– вероятность LLM-генерации: высокая;
– вероятность чисто человеческого происхождения без помощи ИИ: низкая;
– вероятность гибридного происхождения (человек + LLM): тоже высокая.

Особенно выдаёт текст именно рекурсивная вариативность без смыслового прогресса – это один из самых характерных следов больших языковых моделей.

Так вот.



Комментировать »

Даниэль Стенберг (утилита curl) сообщает, что “страшная-ужасная” система поиска уязвимостей в ПО Mythos нашла в коде утилиты curl “пять” “подтверждённых уязвимостей” (“подтверждённых” – по мнению данного ИИ-LLM), которые, после проверки разработчиками, превратились в одну действительно подтверждённую уязвимость с низким уровнем опасности. Четыре остальных представленных описания – это ложные срабатывания и обнаруженная ошибка, – не уязвимость, – в коде. Результат никак не превосходит уже имеющиеся на стороне разработки curl инструменты.

Занятно, что Mythos сейчас, в рамках “маркетингового трюкачества”, продвигают на правах настолько “опасной системы”, что её нельзя выпускать в открытый доступ – поэтому, мол, доступ предоставляется только “ограниченному кругу лиц” (куда, в том числе, входят корпорации, непосредственно участвующие в разгоне хайпа). Стенберг при этом пишет, что ему доступ к новой системе предоставить обещали, он подписал контракт, но доступ так и не предоставили, а, выждав время, предложили, что кто-то ещё, со стороны Mythos, проведёт сканирование за Стенберга и перешлёт уже готовые результаты – и это очень забавно само по себе, особенно, на фоне всех этих заявлений про “невиданный уровень в разработке программных систем”, который, якобы, демонстрируют ИИ-LLM.



Комментировать »

В Англии NHS (система здравоохранения) собирается закрыть доступ к собственным репозиториям с открытым (ранее) исходным кодом информационных систем и с сопутствующими (публичными) данными, мотивируя это тем, что, мол, такой ход снизит риск обнаружения уязвимостей при помощи LLM (конечно же, ссылаются на “страшный и опасный” миф под названием Mythos). Очевидно, что решение – так себе, мягко говоря. Естественно, в ответ на такой “ловкий ход”, в сообществе уже подготовли открытое письмо, требующее не закрывать репозитории с исходными кодами (и данными), тем более, что они разработаны в интересах местных налогоплательщиков (казалось бы).

Понятно, что, во-первых, хайп – он и есть хайп, и никакого прорывного результата, без участия специалистов-людей, LLM-инструменты не дают, а технологии “фаззинга” и подобные им – были давно: но, конечно, с ростом вычислительной базы и на волне хайпа – эффективность увеличилась. Во-вторых, сокрытие исходных кодов, если преподносить его как инструмент “снижения рисков”, имеет сомнительную ценность. Особенно – в данном случае: исходные коды, которые пытаются скрыть, уже так или иначе есть в этой самой LLM – их скачали раньше, скачали из других репозиториев, из внутренних инструментов “ИИ-разработки” и т.д., и т.п. Это кроме того, что формат распространения кода программы – не особенно влияет на сокрытие уязвимостей, а исполняемый машинный код – может являться таким же “исходным”, если приложить к нему некоторые детерминированные и строгие инструменты, типа современного дизассемблера.

Кстати, по этой теме ещё модно говорить, что для LLM уровня Mythos (что бы это ни значило), типа, нет разницы, на каком языке подан код программы (а машинные коды – это тоже язык, не забывайте). Это, конечно, не так: подобные системы сами никаких уязвимостей не находят, но могут генерировать вывод, который совпадает с описанием уязвимости (или не совпадает). Это хорошо подтверждается тем, что уровень качества “исправлений”, сгенерированных той же LLM, ниже уровня “обнаружения” (должно быть наоборот, если уязвимость находит реальный интеллект). То же, кстати, видно и в “решении” математических задач LLM: генератор текста – он и есть генератор текста.

Поэтому, если основной базой обучения был код на Python, то именно эта база и не позволит непосредственно, без потерь, перейти на обработку машинного кода или выдачи дизассемблера. Так что некоторое минимальное зерно разумности в желании закрыть код от LLM найти можно, при желании. Другое дело, что, с одной стороны, кто сказал, что LLM не обучили и на ассемблерных распечаnках, и на машинном коде? Никто не сказал, да. И, с другой стороны, это минимальное “зерно разумности” – никак не может перевесить массы прочих вредных эффектов, типа того, что начнут надеяться на мнимую “безопасность”, связывая её с “секретностью” исходных кодов или недоступностью кодов исполняемых, которые вертятся во внутренних системах только (см. впрочем, про принцип Керкгоффса).

Хотя – хайп. Хайп не все хотят пропустить.



Комментировать »

О тонкостях литературного английского. В известном произведении The Hitchhiker’s Guide to the Galaxy (“Путеводитель хичхайкера по Галактике”/”Автостопом по Галактике”) Дуглас Адамс, описывая в одной из глав свершения смелых космических первопроходцев, использует следующую фразу (выделена пожирнением):

And all dared to brave unknown terrors, to do mighty deeds, to boldly split infinitives that no man had split before – and thus was the Empire forged.

Неплохой образец английского литературного юмора. Проблема, как обычно, в том, что перевести невозможно. Да, тут, на первый взгляд, представлены лишь самые доступные языковые конструкции и нет “сложных слов”. Однако перевести эту фразу на русский, даже с близким сохранением смысла, не получится. Объяснить – можно. Я попробую сделать это ниже. (Занятно, что даже и при чтении на языке оригинала нужны дополнительные данные для построения контекста, раскрывающего смысл.)

Причин этому две, и обе – чисто языковые: во-первых, во фразе заложена юмористическая аллюзия на литературный элемент поп-культуры, отсутствующий в русском языковом пространстве (см. ниже); во-вторых, фраза специально содержит спорную грамматическую конструкцию, которая возможна только в английском языке, и при этом прямо отсылает к самому предмету спора, возникающего вокруг этой грамматической конструкции. В общем, закручено и накручено.

Дословный перевод выделенного фрагмента, но с учётом общего контекста в оригинале: “смело разделять инфинитивы, которые никто не разделял прежде” – но эта фраза на русском выглядит странной и пустой. Так и должно быть, а детали придётся разбирать отдельно.

Прежде всего – “to boldly split”. Это явление, которое в английском языкознании называется split infinitive – “расщеплённый” инфинитив (можно обозначать и другими русскоязычными терминами, но здесь будет “расщеплённый”). Инфинитив – infinitive – это неопределённая форма глагола: “знать”, “читать”, “писать”. В английском языке инфинитив записывается (но не образуется, заметьте) при помощи to – примеры: to know, to write, to read. Расщепление – это практика внедрения между to и “глаголом инфинитива” одного или нескольких дополнительных слов; обычно, внедряется наречие, как и в нашем случае: to boldly split. И этот грамматический процесс относится к одному из самых спорных моментов. Причём споры, с викторианских времён, идут среди образованных носителей английского. Многие и сейчас считают такое расщепление недопустимым нарушением грамматического строя, речевой ошибкой. Но это, ещё раз, мнение спорное.

To boldly split – нетрудно перевести как “смело (или отважно) разделять”. Проблема в слове boldly. Строгие варианты такие: “boldly to split” или “to split boldly”. Но ни один, ни другой – не выглядят смешно. Прежде всего потому, что сама эта фраза – прямая отсылка к оригинальному сериалу Star Trek. Фраза-заставка к эпизодам этого классического сериала известна как “Where no man has gone before”, и используется постоянно. Этим словам, в оригинальном тексте вступления, предшествует не менее знаменитое (но уже в узких кругах) “To boldly go”.

Расщепление полностью, в версии Star Trek, будет таким: “To boldly go where no man has gone before!” – “Смело идти туда, где не ступала нога человека!”. Заметили тот самый расщеплённый инфинитив? To boldly go. Это и есть предмет аллюзии: грамматически спорная конструкция о том же boldly, расщепляющем инфинитив (многие литераторы и филологи, – особенно, в 60-х годах 20 века, – скажут, что это не “спорная”, а точно грамматически неверная конструкция).

“Путеводитель” – комическая космическая повесть. Star Trek – космический сериал, с понятной каждому английскому грамматическому пуристу речевой ошибкой в тексте вступления, зачитываемого в начале каждой серии. Думаю, теперь первый юмористический момент, – про “расщепление инфнитивов” в Star Trek, – понятен. Передать его на русском не получится, ввиду отсутствия соответствующего культурного феномена – вступления к сериям Star Trek 60-х годов.

Сама же идея о недопустимости “расщепления инфинитива” в английском, похоже, идёт из попытки насаждения языковых реалий из латыни – это было довольно популярным действием среди пуристов в викторианский период (вторая половина 19 века, в основном). Но, в латыни, понятно, расщеплять инфинитив невозможно (как и в русском) – просто потому, что в латыни для этого нет подходящего “to” (его и в английском, на самом деле, нет, но это другая история). В начале 21 века расщепление инфинитива в английском начали, под давлением языковых реалий, официально признавать допустимым.

В оксфордском словаре Фаулера (H. W. Fowler, A Dictionary of Modern English Usage, изд. 1965) есть замечательный пример фразы, в которой попытка избежать расщепления инфинитива приводит к плачевным последствиям:

The greatest difficulty about assessing the economic achievements of the Soviet Union is that its spokesmen try absurdly to exaggerate them; in consequence the visitor may tend badly to underrate them.

То есть, экономические достижения Советского Союза – “его представители абсурдно пытаются преувеличивать”, а посещающие СССР, в результате, “сильно/грубо недооценивают их”. Здесь наречия (“абсурдно”, “сильно” или “грубо”) оказываются прицеплены не к тем глаголам, что звучит несколько странно. И странность звучания помогает понять второй аспект юмора “расщепляющихся инфинитивов” в первоначальной цитате из The Hitchhiker’s Guide to the Galaxy, который в русском переводе тоже передать невозможно, по причине отсутствия в русских инфинитивах расщепимости.

(На День Космонавтики эту записку выпустить не успел – что-то завозился, – но, думаю, ещё не поздно: да и не откладывать же на следующий год, верно? С прошедшим Днём Космонавтики!)



Комментировать »

Решил посмотреть, как Google переиндексирует ссылки с dxdt.ru на dxdt.blog – попутно наткнулся на ИИ-выдачу, в которой попалась забавная интерпретация названия одной из тем сайта.

На Dxdt есть категория “О рениксе”, к которой я отношу заметки, рассказывающие о проявлениях разной чепухи – что, в общем, не удивительно: слово “реникса” – это из пьесы Чехова, где оно возникает в анекдоте про неверное прочтение слова “чепуха”, записанного курсивом. И действительно: кириллическая строчная “ч”, рукописным курсивом, выглядит как курсивная же латинская “r”. Unicode, к сожалению, воспроизвести не позволяет. Хоть соответствующий символ там и имеется – Mathematical Script Small R, – но вот в шрифтах он, обычно, выглядит как “правая” “рукописная” r: 𝓇.

В общем, Unicode – юникодом, но исходное русское “чепуха” в анекдоте из пьесы Чехова выглядит как “renyxa”, то есть, “реникса”, если читать на латыни, хоть такого латинского слова и нет. Ну, как нет – тут-то система Google LLM для поиска (разновидность Gemini?) слово “подходящее” нашла, написала, что “О рениксе” происходит от латинского renixus, которое есть вариант renisus – “сопротивляющийся”. Мол, тут игра слов: с одной стороны – “чепуха”, а с другой – реальное латинское слово. Так-то.



Комментировать »

У меня есть очень старый аккаунт Google Apps “для домена” – ещё со времён бета-тестирования, бесплатный (каким-то чудом). Вот я настраивал там TOTP, поскольку Google перестал пускать без “второго фактора” (очередной маркетинговый трюк), и обнаружил, что в панели администратора теперь есть специальный раздел “Углеродный след” (Carbon Footprint for Google Workspace). Кто бы мог подумать.



Комментировать »

Надпись под картинкой X-76 SPRINT на сайте DARPA: “Artist’s concept for the SPRINT X-76, a proof-of-concept technology demonstrator that aims to demonstrate technologies and concepts needed for runway-independent, high-speed flight”. Вчитайтесь в повторы слов: концепция (concept) концепции о технологическом демонстраторе, нацеленном на демонстрацию технологий и концепций… и так далее. Видимо, чтобы слов хватило на нужную длину строки. Как говорится, ИИ-LLM, несомненно, идёт на смену копирайтерам, в том числе, и силами самих копирайтеров.

(Речь в пресс-релизе о некоторой “концепции о концепции” некоторого реактивного конвертоплана с “гибридными” движителями: такой продвинутый вариант V-22 Osprey, как бы из компьютерной игры, только ещё сложнее, потому что не только поворачиваются мотогондолы и меняется конфигурация крыла, но ещё и лопасти складываются в полёте. С крейсерской скоростью в 400 узлов и не требует оборудованной полосы для разбега. Впечатляет. Если верить картинкам, конечно. Всё с планами на 2028 год и далее. То есть, пока что ничего интересного, но выглядит так, как если бы без LLM не обошлось.)

X-76 Picture



Комментировать »