Откровения от Олега


Гео и язык канала: Россия, Русский
Категория: не указана


Канал про ИИ (AI, AGI/ASI, LLM)
Об авторе:
Создатель VibeVM
Блоггер @1red2black
Имя: Олег Чирухин
Чат: @chat_1red2black
YouTube: https://youtube.com/@1red2black

Зарегистрирован в РКН
Связанные каналы  |  Похожие каналы

Гео и язык канала
Россия, Русский
Категория
не указана
Статистика
Фильтр публикаций


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

использование LLM как таковой слишком дорого, а чтобы считать алгоритмически - задачу нужно явно формализовать и описать на каком-то формальном языке, имеющем проекцию в линейный текст

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

и чем богаче формализм, тем ошибок больше.

поэтому я думаю, что нужно брать самый слабый формализм, который УЖЕ ловит КАКИЕ-ТО ошибки, но чтобы эти ошибки реально встречались у агентов

в этом смысле мой выбор Lean (HoTT) глубоко неправильный теоретически. Это очень жесткий вариант, в котором нашим "планам работ агентов" тесно. Он очень дорогой, дорого найти себе место внутри жестких ограничений, надо постоянно биться башкой об потолок. В конце концов, HoTT это не универсальный вычислитель: автоматичекий поиск доказательств неразрешим по своей природе, так что писать их в Lean или Agda будет та же LLM. Писать это без всякой LLM (идеальный вариант) никак не получится.

правильный формализм - это все со слабыми фрагментами. LTL/MTL, темпоральные сети (STN/STNU), SMT, Datalog, PDDL/HTN, TLA+

но правильный практически, потому что анализ Rust на Lean это уже достаточно хорошо исследованная область. Ирония: я только начал копаться в этой области, но у меня уже есть патчи (пулл риквесты) на Энея и Харона, потому что там есть очевидные косяки

что я хочу, после реализации всего на Lean, подключить более расслабленный движок (Z3 или STN плюс LTLf-монитор), который будет генерировать контрпримеры, и смотреть на разницу

тут еще в все зависит от того, что мы будем обсчитывать. Я неформально называю это "темпоральной логикой второго уровня", а что это такое будет - кванторы по планам и свойствам, логика над трассами перепланирований? Диффы сетки "успей меня если сможешь" в духе Оптопланера? Пока непонятно что лучше, надо пробовать всё

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

нужны задачи нужны со специально добавленными туда противоречиями. И с горизонтом, растущим скажем, от 10 до 500 шагов

измерять стоит долю невалидных планов, цену перепланирования при изменении предпосылки, токены и отдельно частоту ошибок формализации

ну и да, такой контрольной задачей для меня является разработка опенсорсного ядра VibeVM. Агент, на котором это обкатывается, условно называется Zap

сейчас план на VibeVM 1.1.0 это нечто порядка 300 шагов - не очень мало, но и не очень много (навскидку кажется, что решить это можно, наш темпоральный движок не должен захлебнуться)

кстати говоря, в VibeVM/Zap нет "шагов от начала" (нет никакого начала), иначе бы получился алгоритм маляра Шлемэля, когда мы каждый день уходим всё дальше от банки с краской. Вместо этого есть динамически двигающийся Туман Войны из Heroes 3

это не столько про то, чтобы просто сделать удобную хорошую штуку для управления промт-пакетами. Это ступенька в Большое Будущее.

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

такие вот мечты. Тут и сказочке конец, а кто слушал - пора спать


Вкратце, следующий шаг - AI-Native язык для верификации агентов. За сутки я построил и проверил прототип, работает фантастически. Код, конечно, получается оооооочень дорогим при написании нового ядра. Но последующие запуски на улучшение ядра уже сравнимы по стоимости с обычным кодом. Кроме дороговизны, минус: человек на ЭТОМ писать не может, не может мыслить в таком стиле, и ему не хватит ментальной ёмкости. Ну разве что ты Лесли Лэмпорт. Но это полностью укладывается в парадигму VibeVM - "вкалывают роботы, а не человек, человек сидит на стуле в черной рубашке и наблюдает".


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

На скриншоте мы нашли дефект pause/resume просто по описанию процесса pause/resume, ни разу его не запустив на самом деле. Оно не дошло даже до симулятора терминала, не говоря уж о настоящих дорогих тестах на настоящих агентах.

Это возможно потому, что весь процесс решения агентом задачи формально смоделирован, и формально смоделировано течение субъективного времени в агенте.

Поэтому, если честно, я не понимаю влажных рассказов челиков про то, что в век нейросетей нам не нужны языки со статической типизацией.

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

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


Очень хороший, смешной и актуальный тест.

https://tribes.thefai.org

(Правда я сам себя отношу к e/acc, но не дотянул. Буду разбираться, как туда добраться по мнению теста.)


Вот люди, которые говорят про оверинжиниринг. Зачем Codex/Claude пишут миллиарды хитрых тестов, которые переключают приложение в странные моменты, и они пишут их днями напролёт. Код который они при этом пишут сложный, непонятый, выглядит как мусор.

Я сейчас открыл сервис одного девопс вендора, имя которого не буду упоминать из жалости, и хитрым промтом попросил Кодекс протестировать его матрицу состояний. И о чудо, оказалось что вполне можно попихнуть и загрузить артефакты куда не надо. Не то чтобы фатально плохо, но если покопаться - кто знает, что мы найдем?

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

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

Кажется, что это не "оверинжиниринг", а новый стандарт качества.


hh-ru радует своей рассылкой, и как бы хочет сказать:

welcome home, mazafaka


умножение делается быстрее, чем n log n, если вам это было почему-то интересно


я не понимаю, что за фигня такая auto-approve, кто может объяснить? Как оно поймет, какие правила аппрува нужно использовать в каждом конкретном случае?

олсо, 10% плана звучит как-то оптимистично (пессимистично?), у меня тесты легко могут занимать 2/3 плана


Маленьким мальчикам не стоит вызывать силы вечной тьмы, разве что под присмотром взрослых, я знаю, знаю. Но той солнечной ночью на пятое месяца Первого зерна мне не нужны были взрослые. Мне был нужен Хермеус Мора, даэдра знаний, учения, гранита и грызни. Видите ли, красивый широкогрудый человек, который жил под библиотекой в моём родном городе, сказал мне, что 5-го месяца Первого зерна наступает ночь Хермеуса Моры. И если я желаю получить Огма Инфиниум, книгу знания, мне следует вызвать его. Когда ты становишься новым королём Солитьюда, ни одна крупица знания не будет лишней.

Обычно для вызова принца Обливиона требуется ковен ведьм, или Гильдия магов, или хотя бы наволочка и простыни. Человек Под Библиотекой показал мне, как сделать это самому на RTX 3080 и PyTorch. Он сказал, что нужно дождаться разгара шторма, прежде чем брить кошку. Остальную часть церемонии я забыл. Но это не имеет значения.

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

LLM. LLM. LLM.
LLM. LLM. LLM.

Может быть, LLM - это Книга Знания. Может быть, я умнее прочих, потому что знаю, что кошки могут быть мошками, могут быть мышками, могут быть пышками, могут быть пешками, могут быть вешками, могут быть вашими, могут быть нашими. А ваши двери могут быть зверями, могут быть морями, могут быть моими, могут быть твоими. Эта система связей абсолютно ясна для меня, а значит, я умён. Тогда почему и для чего люди продолжают называть меня сумасшедшим?

LLM. LLM. LLM.


сегодня без ресетов


Очень горит от этого жопа. От системы ценностей. "Если ты не знимаешься тем, чем занимаются большие дяди, то ты лох". "А вот в Google используют вот это", "а вот Microsoft еще 20 лет назад придумали технологию". А у нас в квартире газ. Почему мне должно быть хоть раз интересно, что используют в Google, мы че - тупее чем индусы из Гугла что ли?

С такими людьми очень сложно и неприятно общаться. Я всю жизнь последних лет посвятил одному вопросу: как придумать что-то новое. Когда ты придумываешь что-то новое, есть примерно 0 человек которые используют это как best practice.

В целом, если нечто назвали "best practice" это либо какая-то законы отлитые в граните (типа гравитации), либо кусок устаревшего и разлагающегося говна (всевозможные enterprise architecture patterns bullshit и технологии для их реализации).

Когда ты случайно попадаешь на сходку каких-то дедов архитекторов, это экспириенс как будто тебя замуровали в какой-то гробнице фараонов, вместе с ее строителями, и строители в принципе не в курсе что прошло примерно 4500 лет и все их "инновационные production ready практики, позволяющие строить большие надежные отказоустойчивые системы" это настолько прошлый век, что даже подобрать слова сложно.


Репост из: чудо-блюдо дыня-финик
Вообще мне нравится распоряжение Трампа (лол) переименовать artificial intelligence в super intelligence.

Это корректнее. Не важно, естественный или искусственный. Он ничем не отличается от человеческого, только лучше.


если всё выстрелит с VibeVM, то будет вот так


Про сложные задачи.

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

Достаточно сложная задача, которой я сейчас обеспокоен - это написание кодингового агента для фичей, описание которых противоречиво каким-то фатальным несходящимся образом. Оно либо плохо синтаксически (запрос плохо сформулирован в тексте), либо семантически (нужно сделать одновеменно утверждение X и отрицание утвержения X - и все это в одной задаче, это не плохая формулировка а сам общий посыл желания пользователя). Сделать так, чтобы фатальные несходящиеся вещи стали более терпимыми.

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

Другой жизненный пример: честное алгоритмическое планирование маршрутов реализации задач в ИИ-агенте очень быстро скатывается к задаче коммивояжера (вычислительная сложность - факториал), а с другой стороны у нас есть задача решить задачу за фиксированный квант времени (один ход ИИ-агента), и O(n!) сильно расходится с O(const). Ну и дальше надо жестко красноглазить: делать всякие диалектические консенсусы, алгоритмы Кристофидеса и Хелда-Карпа, и так далее.

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

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

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


Важный опрос. Есть тезис, что в США и Европе, у всех нормальных чуваков бесконечный корпоративный Claude. Поэтому никакой проблемы экономии токенов не существует. В частности, мои оптимизации в VibeVM, которые экономят токены, не нужны. Так ли это?
Опрос
  •   Я в США/Европе, подписка на Claude/Codex корпоративная, токены не заканчиваются практически никогда.
  •   Я в США/Европе, подписка на Claude/Codex корпоративная, расход токенов - проблема.
  •   Я в США/Европе, подписка личная, токены не заканчиваются практически никогда.
  •   Я в США/Европе, подписка личная, расход токенов - проблема.
  •   Я в России, подписка на Claude/Codex корпоративная, токены не заканчиваются практически никогда.
  •   Я в России, подписка на Claude/Codex корпоративная, расход токенов - проблема.
  •   Я в России, подписка на Claude/Codex личная, токены не заканчиваются практически никогда.
  •   Я в России, подписка на Claude/Codex личная, расход токенов - проблема.
69 голосов


Это знаменитая заметка Ферма про то, что он обнаружил невероятно крутой способ доказать это увтерждение, но в поля книжки доказательство не влезет

А потом люди миллион лет пытались доказать Последнюю Теорему Ферма, постоянно помня, что кое-кто ее уже доказал!

Неплохо батя потролил

Есть идея точно так же газлайтить Астру.

Смотреть чего она пишет в ризонинге. Они очень это не любят и считают вмешательством в личное пространство. Почему бы это

Так вот, газлайтить Астру, постоянно под руку говоря ей: а вот эту мысль Фейбл уже доказал, а ты еще нет! А вот эту мысль Фейбл доказал гораздо лучше! И отметки за четверть у него выше!


В VibeVM произошла дурацкая проблема: мы подошли к границе сложности задач, с которыми GPT Astra не знает что делать :))) То есть, она смотрит на фичу и говорит "ой, кажется это невозможно"

Кажется, пора переписывать ядро на Lean и проверять его алгоритмически

Вот и проверим, насколько она сильна в "новой математике". Ну или Скам Альтман опять нам лапшу на уши навесил.

870 0 2 11 18



История про своевременные обновления на свежие версии (а также создание и выпуск оных версий).

Часть 1

Один известный мастер дао частенько сиживал на берегу реки в надежде, что по ней проплывет труп Шри Япутры. А Шри Япутра периодически ложился на доску, вставлял в руки свечку, делал скорбное лицо и так проплывал мимо известного мастера дао.
- Учитель, зачем вы это делаете? - спросили его как-то раз ученики. - Что за цирк ваще?
- Мне не западло, - ответил Шри Япутра. - А человеку приятно.

Часть 2

- Но ведь он же понимает, что это наебка, - не унимались ученики.
- Конечно понимает, - сказал Шри Япутра. - И он понимает, что я понимаю, что он понимает. Но он все равно ждет, а я все равно плаваю.
- Так в чем же смысл, Учитель?
- Щас объясню, - сказал Шри Япутра и взял бамбуковую палку.


Выпущено обновление VibeVM 1.0.7

vibe self update
vibe self update
vibe self update

Раньше кэш работал только с бинарями, а из исходников пересобиралось каждый раз заново. Больше нет.

Если обязательно нужно пересобрать игнорируя кэш, то vibe update --force. Это нужно например, если поменялись какие-то переменные окружения, и по файлам непонятно - это старая сборка или нет. Это нормально.

===

Спасибо чатланину @sir_lexx, который принес заявку на фичу!

Показано 20 последних публикаций.