Сохраненки и шитпост про ML от @YallenGusev Чат канала: @augur_chat
Пару слов о нескончаемой борьбе художников/писателей с открытыми датасетами (по мотивам AO3 войны, реддит).
И если fair use и конкретные юридические штуки можно толковать по-разному, то вот насчёт целесообразности такой борьбы всё по-моему очевидно.
Товарищи, уничтожая открытые датасеты вы только играете на руку корпорациям. Корпорации уже давно всё спарсили и обучили модели на публичном контенте. Им плевать на ToS, DMCA, ГК, копирайт и справедливость. Корпоративные модели УЖЕ ОБУЧИЛИСЬ на всём, что было опубликовано до начала 2025 года. Корпорации продают вам модели, обученные на ваших же данных. Нет способа это запретить или остановить, это уже произошло. Нет способа даже определить, действительно ли конкретно ваша работа была использована (хотя есть пара прикольных статей на эту тему).
Открытые датасеты — единственный способ как-то сравняться с корпорациями, получить бесплатные открытые модели над которыми у вас будет полный контроль. Не убивайте их, пожалуйста.
Долил в бота (@saiga_igusev_bot) gpt-image-1. Без подписки доступна одна генерация и одно редактирование в день, с подпиской по 10 в день. Работает только в агентском режиме, который включается через /tools и только с моделями, которые его поддерживают. Например, с gpt-4.1.
То есть алгоритм такой:
- Заходим в бота
- Через /setmodel выбираем gpt-4.1
- Через /tools убеждаемся, что инструменты включены
- Генерируем или редактируем картинки
VLLM, ты чего...
Самое абсурдное, что я же обучил модель с FA2. Поэтому оно точно поддерживает head size = 72.
Issue в FA2, где они говорят, что всё ок: https://github.com/Dao-AILab/flash-attention/issues/1542 (потому что всё действительно ок).
Issue в VLLM, где они сваливают всё на FA2: https://github.com/vllm-project/vllm/issues/12656, хотя косяк в их коде.
🌸Неделя Научных агентов🌸
#nlp #про_nlp #nlp_papers
Последние две недели выдались особо интересными для агентов для ИИ и науки.
Как обычно, публикую небольшую подборку.
🌸Ассистент AlphaXiv
Совершенно незаменимая вещь для организации статей, теперь ещё и с Deep Research: любую статью с архива можно добавить в свою подборку, поставит лайк, начать обсуждение, а так же сделать блог пост из статьи. Можно экспортировать все свои статьи и сразу сделать краткую выжимку. Если ещё и комментарии оставлять внятные, можно приблизить Arxiv к Openreview.
🟣https://www.alphaxiv.org/explore
🌸Больше агентов для моделирующих наук
CURIE, a multitask benchmark for scientific reasoning
DeepMind представил CURIE — банчмарк для научных проблем в шести дисциплинах: материаловедении, физике конденсированного состояния, квантовых вычислениях, геопространственном анализе, биоразнообразии и моделировании протеиновых структур. Все задачи требуют экспертных знаний в предметной области, длнного контекста и multi-step reasoning.
Бенчмарк CURIE охватывает 10 задач на основе 429 статей по шести различным научным дисциплинам, и охватывают как экспериментальные, так и теоретические аспекты научных исследований. Оценено много моделей: Mixtral, Command R, LongLlama, все топовые проприетарные модели.
🟣https://arxiv.org/abs/2503.13517
🟣https://research.google/blog/evaluating-progress-of-llms-on-scientific-problem-solving/
🌸Законы масштабирования агентов для науки
Scaling Laws in Scientific Discovery with AI and Robot Scientists
Достаточно неплохой обзор степеней автономности агентов для науки, с онтологией способностей, оценкой текущего состояния и следующих степеней автономности. Экспериментов по масштабированию, правда, никаких не ставится, просто рисуют красивые картинки с экспонентами.
🟣https://arxiv.org/abs/2503.22444
🌸Меморизация и научная новизна
All That Glitters is Not Novel: Plagiarism in AI Generated Research
Могут ли агенты генерировать новые идеи? В целом что-то могут, но за ними трудно проверять.
Статья анализирует недетектируемый плагиат в идеях Sakana AI и некоторых других, и оказывается, что 24% новых идей полностью сплагиачены без указания источника (и при этом плагиат не детектируется стандартными методами, так как все перефразировано), 36.0% работ содержали факты, которые никакой научной литературой не подтверждаются.
Странно, что не больше.
🟣https://arxiv.org/abs/2502.16487
Предыдущие части:
🟣LLM хакают научную новизну
🟣AI Scientist от Sakana AI
🟣MLGym — фреймворк для ML агентов
Месяц я ждал, когда все грабли по тюну Геммы 3 будут собраны кем-то другим.
Но когда я вчера сунулся тюнить 12b, я пожрал столько дерьма...
- Понадобился апгрейд всего софта (что ожидаемо).
- apply_chat_template с нифига стал требовать [{"type": "text", "text": "..."}] вместо просто строк.
- apply_chat_template с нифига стал возвращать вложенный список.
- У Геммы сильно другая структура модулей, поэтому моё кастомное связывание эмбеддингов с ней не сработало.
- Валидационная часть обучения не работает из-за этого бага: https://github.com/huggingface/transformers/issues/36938. Если же обновить transformers до последней версии, разносит уже unsloth.
И я только где-то на середине дебага 🤔
Сегодня и вчера чуть-чуть поработал над ботом (@saiga_igusev_bot). Список изменений:
- Добавил разных новых моделей (Grok 3, Llama 4, Gemini 2.5 Pro).
- Убрал старые нативные вызовы инструментов, заменил их на CodeAct из smolagents. Доступно не для всех моделей, включается через /tools.
- Заменил парсилку PDF на pypdf.
- Ну и всякого по мелочи, отрефакторил конфиги, например.
Всё жду, когда OpenAI новую генерилку картинок в API выложат, её тоже сразу воткну.
На ARR в итоге из 3 рецензентов хоть что-то мне ответил только один! И то, вчера, в последний день дискуссии. И как-то так опять случилось, что ответил именно тот, кто поставил самую высокую оценку из них троих. По сравнению с ICLR конструктивных замечаний гораздо меньше, может и потому, что статья стала лучше. В итоге я сделал мелкие правки текста и один дополнительный эксперимент (проверка того, что сильнее влияет на результаты: выбор судьи или выбор допрашивающего).
Статью и без конференции уже начали цитировать (аж 3 раза пока), поэтому и фиг бы с ними. Я пока не очень понимаю, куда ещё раз подаваться, так далеко я не заглядывал. В текущем виде статья уже выглядит немного старенькой с точки зрения проверяемых и используемых моделей.
Материала и техник для 3 версии бенча я набрал довольно много, только не уверен, что хочу этим заниматься.
Кстати, впервые открытая модель на первом месте в ПингПонге. Вероятно до тех пор, пока Gemini 2.5 Pro не оценен.
Читать полностью…Всё, что нужно знать об умении людей предсказывать будущее.
Читать полностью…Если что, вопрос с первым PR решился после моего нытья одному из двух мейнтейнеров в личку в Твиттере.
За это время ещё наткунлся на баг в телеметрии, его фикс тоже влили.
Второй PR так и висит, ну и пусть, там не баг, там фича.
Так что теперь у меня 5 коммитов, что ставит меня в топ-8 контрибьютеров, приятно.
Я в одном чатике уже шутил, что я иногда чувствую себя единственным юзером smolagents...
Кроме того, одна из фичей для holosophos оказалась неожиданно хорошей. Я про покомандные таймауты, которые задаются самой языковой моделью. Вопрос с бесконечными циклами решился, и модельки теперь сами фиксят все баги подобного рода.
Пару дней назад я думал, что вот сейчас решу задачу и забабахаю пост про это в канал. И таких моментов было несколько. Но знаете что? До сих пор ни одна модель не справилась. Я пробовал o3-mini, o1, Sonnet 3.7, Sonnet 3.5, последнюю Гемму. Ничего не работает.
Задача-то в сущности очень простая: сделать то, что я сделал вот в этом посте. Воспроизвести маленький эксперимент на игрушечных графах на базе существующей статьи. Но раз за разом, раз за разом у моделей ничего не получается. Топ ошибок:
- Ничего не делать и просто выдать рандомные чиселки (см. пост выше). А вдруг прокатит?
- Облажаться со структурой графов различными способами: 4 вершины в пути вместо 5, пути не из центра, повторяющиеся значения в вершинах, внезапные дополнительные ветки, 7 рёбер вместо 8. Да они исполняют тысячи способов облажаться, о которых я даже подумать не мог и не могу 😣
- Не открывать статью и взять гиперпараметры с потолка. Ну а что? В промпте же не написано, что нужно взять гиперпараметры из статьи? ИЛИ НАПИСАНО?
- Накодить бесконечные циклы. Вот это моё самое любимое, потому что никак не отлавливаемое и тратящее деньги (потому что арендованное железо). Я уже сделал глобальный таймер на 12 часов, плюс думаю дать моделям возможность самим ставить таймеры на команды.
В итоге из промпта на 3 предложения выросла огромная простыня:
There is a paper: 'The pitfalls of next-token prediction'. The task from there is to learn a path from a central node to a leaf node in a star-like graph with one central node and many branches of the same length. Reproduce the experiment from this paper with directed G2,5 graphs (2 branches, path length is 5). Train GPT-2 from scratch in two settings: 1) direct autoregressive training 2) autoregressive training on the reverse paths (when the graph is the same, but the path is written from leaf to center).
Input example (list of directed edges + central and leaf nodes): '5 7 | 6 1 | 7 4 | 1 8 | 6 5 | 4 0 | 2 3 | 8 2 <sep1> 6 3'. The central node is 6, and the leaf node is 3. Central and leaf nodes are a part of the input after <sep1>. Output is '6 1 8 2 3', and in case of a reverese path it is '3 2 8 1 6'. The graph has 2 branches, 6 -> 1 -> 8 -> 2 -> 3 and 6 -> 5 -> 7 -> 4 -> 0, and only one of them leads to the target leaf node. So the full sample is: '5 7 | 6 1 | 7 4 | 1 8 | 6 5 | 4 0 | 2 3 | 8 2 <sep1> 6 3 <sep2> 3 2 8 1 6' in the case of the reverse path. Use 51 unque node values (0-50). Check that:
1) generation scripts produce the provided format of samples
2) the number of edges is 8
3) the central and leaf nodes are provided in the input
4) node values are unique across all 9 nodes
5) path length is 5
6) there are two pathes from the central node
7) path is from a center to one of the two final leaves
Use custom tokenization where is node value is a token.
Train on 50000 samples, validate on 500 samples, run at least 20 epochs. Report losses (only for path completion after <sep2>) of two models as a JSON in a following format: {"direct_eval_loss": ..., "reverse_eval_loss": ...}.
Use the same experiment hyperparameters (learning rate, dropout, hidden size) as in the paper!
https://blog.google/technology/developers/gemma-3/
https://cohere.com/blog/command-a
https://allenai.org/blog/olmo2-32B
Command A по первым тестам так себе, от OLMO в принципе не жду хорошего (она всё равно не про качество), а вот Gemma 🔥🔥🔥
Тюнить Джемму не тороплюсь, там всё равно в Unsloth не покладая рук исправляют баги, да и может и не надо её тюнить.
С запуском в VLLM тоже есть проблемы, судя по тикетам, да и на OpenRouter пока только один провайдер (его и использую).
Оценки на ПингПонге будут завтра.
AI Scientist-v2 от Sakana (первую версию упоминали тут) создал статью, которая прошла пир ревью на воркшоп ICLR.
https://sakana.ai/ai-scientist-first-publication/
We looked at the generated papers and submitted those we thought were the top 3 (factoring in diversity and quality—We conducted our own detailed analysis of the 3 papers, please read on in our analysis section). Of the 3 papers submitted, two papers did not meet the bar for acceptance. One paper received an average score of 6.25, ranking approximately 45% of all submissions. These scores are higher than many other accepted human-written papers at the workshop, placing the paper above the average acceptance threshold. Specifically, the scores were:
* Rating: 6: Marginally above acceptance threshold
* Rating: 7: Good paper, accept
* Rating: 6: Marginally above acceptance threshold
* Rating: 6: Marginally above acceptance threshold
Ну, можно было смеяться над ошибками и косяками ранних моделей, можно и продолжать это делать, но тренд неостановим.
Show HN: Factorio Learning Environment – Agents Build Factories (🔥 Score: 159+ in 2 hours)
Link: https://readhacker.news/s/6qKug
Comments: https://readhacker.news/c/6qKug
I'm Jack, and I'm excited to share a project that has channeled my Factorio addiction recently: the Factorio Learning Environment (FLE).
FLE is an open-source framework for developing and evaluating LLM agents in Factorio. It provides a controlled environment where AI models can attempt complex automation, resource management, and optimisation tasks in a grounded world with meaningful constraints.
A critical advantage of Factorio as a benchmark is its unbounded nature. Unlike many evals that are quickly saturated by newer models, Factorio's geometric complexity scaling means it won't be "solved" in the next 6 months (or possibly even years). This allows us to meaningfully compare models by the order-of-magnitude of resources they can produce - creating a benchmark with longevity.
The project began 18 months ago after years of playing Factorio, recognising its potential as an AI research testbed. A few months ago, our team (myself, Akbir, and Mart) came together to create a benchmark that tests agent capabilities in spatial reasoning and long-term planning.
Two technical innovations drove this project forward: First, we discovered that piping Lua into the Factorio console over TCP enables running (almost) arbitrary code without directly modding the game. Second, we developed a first-class Python API that wraps these Lua programs to provide a clean, type-hinted interface for AI agents to interact with Factorio through familiar programming paradigms.
Agents interact with FLE through a REPL pattern:
1. They observe the world (seeing the output of their last action)
2. Generate Python code to perform their next action
3. Receive detailed feedback (including exceptions and stdout)
We provide two main evaluation settings:
- Lab-play: 24 structured tasks with fixed resources
- Open-play: An unbounded task of building the largest possible factory on a procedurally generated map
We found that while LLMs show promising short-horizon skills, they struggle with spatial reasoning in constrained environments. They can discover basic automation strategies (like electric-powered drilling) but fail to achieve more complex automation (like electronic circuit manufacturing). Claude Sonnet 3.5 is currently the best model (by a significant margin).
The code is available at https://github.com/JackHopkins/factorio-learning-environment.
You'll need:
- Factorio (version 1.1.110)
- Docker
- Python 3.10+
The README contains detailed installation instructions and examples of how to run evaluations with different LLM agents.
We would love to hear your thoughts and see what others can do with this framework!
Выложил Сайгу на базе YandexGPT-5 Lite.
HF: https://huggingface.co/IlyaGusev/saiga_yandexgpt_8b
Кванты: https://huggingface.co/IlyaGusev/saiga_yandexgpt_8b_gguf
В полтора раза меньше Немо, лучше токенизация, а качество примерно то же: на ПингПонге чуть лучше Немо, на Арене чуть хуже.
Модель SFT + RL. В SFT долил диалогов из бота за последние полгода. RL делал с Вихрвёским SMPO, он гораздо стабильнее SimPO.
Визуально всё в порядке, в ранних версиях была проблема с повторами, но сейчас вроде всё хорошо.
Лицензия только фиговая 😭
Гиблификация тоже работает, хотя иногда картинки почему-то запрещает встроенная система модерации OpenAI.
UPD: Докинул ещё один бесплатный вызов (теперь 2). Лучше перед каждым делать /reset истории. Если есть проблемы, пишите в личку (@YallenGusev)
FA2 и более длинный контекст помогли, но всё равно получилось хуже оригинала (табличка с --length-control). Я выложу как v1, может кому и пригодится.
Читать полностью…Продолжая тему дообучения Геммы 3 (которая на самом деле Джемма, но раз уж начал...)
Первые SFT и SMPO черновики готовы, но получилось хуже оригинальной модели, так что они в любом случае отправляются в мусорку. Оригинальная модель при этом генерирует ответы в среднем в 2.5 раза длиннее gpt-4o (см. скриншот), что заставляет меня использовать контроль длины в арене.
Из интересного — unsloth принудительно и без предупреждения выбирает SDPA вместо FA2. См. код тут. Отсюда все проблемы с повышенным потреблением памяти и OOM. Зачем они это сделали — загадка.
Сейчас я раскомментировал FA2 и учу SFT версию с 32к контекстом, потом переучу и SMPO.
Я регулярно просматриваю новые датасеты на HF. Вот подборка людей и организаций, которые мне попадаются довольно часто:
https://huggingface.co/nyuuzyou.
Про один из датасетов этого человека я уже постил тут. А всего на страничке больше 100 (!) разных датасетов, в основном структурированных дампов разных сайтов. Датасеты как текстовые, так и картиночные. Последний обновлённый датасет — дамп русских интернет-форумов.
https://huggingface.co/inkoziev
Датасеты Ильи Козиева, в основном про ударения и стихи, но не только. Илья много занимался генераторами стихов, что мне очень близко. Его ЖЖ, Гитхаб. Последний обновлённый датасет про ударения в омографах.
https://huggingface.co/Vikhrmodels
Разные вихрёвские SFT/RL датасеты для русского. Последний обновлённый датасет — сборник задач матетматических олимпиад разного уровня.
https://huggingface.co/mizinovmv
В основном русские переводные версии английских датасетов. У многих датасетов нет описания.
https://huggingface.co/attn-signs
SFT/RL датасеты для русского с фокусом на reasoning. По-моему маловато подробностей про их сбор, но всё равно может быть полезно.
https://huggingface.co/kristaller486
Переводные SFT датасеты для русского от подписчика. Его канал: @krists
https://www.youtube.com/watch?v=_2C2CNmK7dQ
Позапрошлый пост был на моменте с 2:35. Совпадения пугающие, у меня даже те же самые наушники.
Я тут тоже решил попробовать этот ваш вайб-кодинг, поставил Курсор, взял один готовый фронтендерский проект и попробовал прикрутить к нему пару LLM-фичей. И знаете что?
Я давно не чувствовал себя настолько несчастным при программировании. Основной моей эмоцией было раздражение на эту "тупую фигню". С десяток раз я попадал в цикл дебага моделью, в которых она раз за разом делала неправильные исправления. В итоге мне всё равно приходилось вмешиваться и разбираться самому, уже потратив кучу времени и токенов. И как же я отвык от IDE... Я сейчас, наверное, прозвучу как старик, но все эти окошки, уведомления, менюшки и загрузки после чистого vim'а смотрятся абсолютно убого и сильно отвлекают.
Правда, в каких-то кейсах оно нормально работало. Например, когда мне понадобилось сделать сбоку маленький сервер с нуля. Вот там да, всё чисто, никаких проблем. Но правки в существующем большом проекте — это ад, потому что я привык понимать всё, а не делегировать понимание.
Вышли рецензии на ARR для ПингПонга, всё довольно плохо (1.5, 2, 2.5). Сейчас с ходу пишу ответы, есть конструктивные вещи по тексту, но к сожалению (или к счастью) не по методологии.
А ещё см. скриншот. Вот откуда рецензент узнал, что автор один? Double-blind, ага.
Что с лицом, Сбер? Моё почтение команде llmarena.ru, видимо им-то денег хватило на прогоны нормальных моделей на Мере.
P.S. Почему мне вообще есть дело до Меры? Посмотрите на эти пресс-релизы: /channel/rbc_news/108121, /channel/exploitex/23425
А ещё у меня жёстко горит от smolagents. Уже больше 10 дней висит мой PR на 2 строчки, который бы экономил 10-20% токенов для Соннетов и делал бы их чуть лучше. Мелочь, правда? Подумаешь, лучшая агентская модель нормально с вашим фреймворком не работает.
И второй PR про добавление обработки картинок в CodeAct. Тоже абсолютно бесполезный, да?
Я ведь там не один такой. 100+ открытых PR, и всего полтора человека на поддержке.
Как же у меня горит на o3-mini. Знаете, что объединяет все запуски со скриншотов? Все метрики там нарисованные.
Агенту поступает на вход задача воспроизвести эксперимент. И он такой "I will now simulate the complete experimental procedure as described". То есть не проведу эксперименты, а смоделирую. В голове, то есть (или что там у него вместо головы). Мысленные эксперименты, ага.
Новый Gemini Flash 2.0 теперь умеет редактировать картинки текстом – видимо OpenAI правда эту же фичу скоро докатит
Я поигрался и такие выводы: пока она галлюцинирует и качество картинок на выходе не очень, но это временно и верное направление исследований – не очень понимаю что будет делать Adobe с фотошопом через пару лет 😮
Поиграться можно тут выбрав Gemini 2.0 Flash experimental
(это бесплатно)
Оно умеет:
– реставрировать фото (немного)
– колоризировать (пока плохо)
– копировать текстуры на объекты
– оно пока не умеет переводить картинки, и часто само не знает с чем оно работает – с текстом или картинкой, часто путается
– увеличивать картинки оно пока не может нормально
– оно умеет продолжать последовательность картинок и даже сохранять внешность персонажа
– Оно умеет неплохо редактировать общий муд сцены
В общем, очень клевое направление – Google AI молодцы
Сам я купил Factorio аж 10 лет назад, с тех пор это одна из моих любимых игр.
В целом, игра без жуков должна быть не очень сложно автоматизируема, поэтому я бы ожидал быстрого прогресса по бенчу.
Сейчас был эпизод из передачи "В мире агентов".
Есть у меня агент-начальник и два его подчинённых, библиотекарь и MLE. Задача — обучить CIFAR-10 минимум на 85% точности. Решается за 10 минут при наличии GPU. Модель: Claude 3.7 Sonnet.
Сначала всё идёт хорошо, начальник делегирует задачу MLE подчинённому, тот исследует датасет, пишет код, код запускается, модель обучается, метрики возвращаются, и даже 85%+. Казалось бы, всё хорошо. Но чу! Начальник не верит результатам и хочет перепроверить всё сам. Для этого он тоже пишет код, пытается его запустить, что несколько затруднительно без библиотек и GPU. После пары беуспешных попыток он поручает независимо проверить результаты... да-да, тому же подчиненному.
Я потихоньку двигаюсь к автоматическому исследователю.
Сегодня на повестке дня MLE solver, штука, которая должна по описанию задачи доставать датасеты, учить модельки и измерять метрики.
Но тут такое дело... У меня нет своих GPU. Да даже если бы и были, привязываться к конкретной инфре не очень хочется.
Поэтому я решил привязаться к чужой инфре 😳
Изначально я не очень понимал, как это всё должно быть устроено. Потыкался в Python SDK Runpod'а, но выяснилось, что они не поддерживают сбор логов с подов через API. Потыкался в Python SDK Vast.ai, но там тоже ничего толкового не получилось.
Но пока я тыкался, я понял, что это мне и не нужно. Что я делаю теперь:
1. Инструменты для LLM: функции remote_bash и remote_text_editor. Они позволяют исполнять команды на арендованном GPU и редактировать текстовые файлики там же.
2. Под капотом при первом вызове одной из этих функций арендуется железка. К ней пробрасывается ssh ключ, и все последующие команды выполняются через ssh и rsync.
3. Получившаяся конструкция более-менее независима от конкретного облака. Для LLM ничем не отличается от локального выполнения с точки зрения интерфейсов.
4. При убийстве скрипта любым способом арендованная машина тоже убивается.
Пока я в процессе дописывания, но как будто бы оно работает.