Безумцы реализовали MicroGPT от Andrej Karpathy полностью на ПЛИС-логике.
Без графического процессора. Без PyTorch. Без циклов инференса на центральном процессоре.
Только трансформер, зашитый в железо, генерирующий 50 000+ токенов в секунду.
Модель небольшая, но идея не в этом, а в том, что инференс не обязан существовать только в программной среде.
Целью было не сделать максимально большую модель.
Целью было представить весь путь инференса трансформера в виде, читаемом для железа: память, счётчики, состояния конечных автоматов, аккумуляторы, таблицы поиска и многотактные арифметические блоки.
Базовая схема использует фиксированную арифметику Q4.12 и веса, хранящиеся в ПЗУ.
Большая часть модели сводится к одной повторяющейся операции: матрично-векторному умножению. Поэтому был реализован переиспользуемый 16-канальный потоковый блок матрично-векторных вычислений и затем он временно мультиплексируется на Q/K/V, MLP и выходной слой языковой модели.
Самым интересным оказался механизм внимания.
В Python это одно аккуратное уравнение.
В RTL это превращается в расписание: генерация Q/K/V, проход по скалярным произведениям, отслеживание максимума, приближённое вычисление экспоненты, накопление, деление, смешивание V, затем обратная проекция.
исходники🙂
👉 @DataSciencegx
Без графического процессора. Без PyTorch. Без циклов инференса на центральном процессоре.
Только трансформер, зашитый в железо, генерирующий 50 000+ токенов в секунду.
Модель небольшая, но идея не в этом, а в том, что инференс не обязан существовать только в программной среде.
Целью было не сделать максимально большую модель.
Целью было представить весь путь инференса трансформера в виде, читаемом для железа: память, счётчики, состояния конечных автоматов, аккумуляторы, таблицы поиска и многотактные арифметические блоки.
Базовая схема использует фиксированную арифметику Q4.12 и веса, хранящиеся в ПЗУ.
Большая часть модели сводится к одной повторяющейся операции: матрично-векторному умножению. Поэтому был реализован переиспользуемый 16-канальный потоковый блок матрично-векторных вычислений и затем он временно мультиплексируется на Q/K/V, MLP и выходной слой языковой модели.
Самым интересным оказался механизм внимания.
В Python это одно аккуратное уравнение.
В RTL это превращается в расписание: генерация Q/K/V, проход по скалярным произведениям, отслеживание максимума, приближённое вычисление экспоненты, накопление, деление, смешивание V, затем обратная проекция.
исходники
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Локальный ИИ-ассистент для ресерча, который запускается на твоём устройстве — автоматически ищет информацию, пишет саммари, проставляет ссылки на источники; данные зашифрованы и не покидают локальную машину.
Local Deep Research — это локально развёрнутый инструмент для ресерча с ИИ, который умеет интегрироваться с моделями вроде Ollama, OpenAI и Anthropic, и поддерживает более десятка поисковых движков, включая arXiv, PubMed и SearXNG, с возможностью гибкого выбора.
Даёт около 95% точности на бенчмарке SimpleQA; есть три режима — быстрый поиск, глубокий ресерч и генерация отчёта, между ними можно переключаться по задаче, плюс используется автономная агентная стратегия на базе LangGraph.
https://github.com/LearningCircuit/local-deep-research
👉 @DataSciencegx
Local Deep Research — это локально развёрнутый инструмент для ресерча с ИИ, который умеет интегрироваться с моделями вроде Ollama, OpenAI и Anthropic, и поддерживает более десятка поисковых движков, включая arXiv, PubMed и SearXNG, с возможностью гибкого выбора.
Даёт около 95% точности на бенчмарке SimpleQA; есть три режима — быстрый поиск, глубокий ресерч и генерация отчёта, между ними можно переключаться по задаче, плюс используется автономная агентная стратегия на базе LangGraph.
https://github.com/LearningCircuit/local-deep-research
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - LearningCircuit/local-deep-research: ~95% on SimpleQA (e.g. Qwen3.6-27B on a 3090). Supports all local and cloud LLMs…
~95% on SimpleQA (e.g. Qwen3.6-27B on a 3090). Supports all local and cloud LLMs (llama.cpp, Ollama, Google, ...). 10+ search engines - arXiv, PubMed, your private documents. Everything Local &...
❤1
Смотри топовые научные статьи по ИИ, машинному обучению, робототехнике, квантовой физике и другим направлениям на kurate.org.
Сотни препринтов с arXiv ежедневно ранжируются по научному импакту через парные сравнения, где судьями выступают модели — Claude, GPT и Gemini.
👉 @DataSciencegx
Сотни препринтов с arXiv ежедневно ранжируются по научному импакту через парные сравнения, где судьями выступают модели — Claude, GPT и Gemini.
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
Data Portal | DS & ML
Всё самое интересное из мира Data Science и машинного обучения
Связь: @devmangx
Связь: @devmangx
❤3
Выходные ушли на закрытие одной задачи из списка «изучить»:
GRPO
В статье разбирается:
• что такое GRPO и как он работает
• дообучение LiquidAI LFM2.5-1.2B-Instruct
• использование Unsloth и бесплатных Kaggle T4
Блог: https://leoniemonigatti.com/blog/fine-tuning-lfm2-5-1-2b-instruct-with-grpo.html
Ноутбук на Kaggle: https://kaggle.com/code/iamleonie/fine-tuning-lfm2-5-1-2b-instruct-with-grpo
👉 @DataSciencegx
GRPO
В статье разбирается:
• что такое GRPO и как он работает
• дообучение LiquidAI LFM2.5-1.2B-Instruct
• использование Unsloth и бесплатных Kaggle T4
Блог: https://leoniemonigatti.com/blog/fine-tuning-lfm2-5-1-2b-instruct-with-grpo.html
Ноутбук на Kaggle: https://kaggle.com/code/iamleonie/fine-tuning-lfm2-5-1-2b-instruct-with-grpo
Please open Telegram to view this post
VIEW IN TELEGRAM
В интервью по ML-инженерии в Apple задают вопрос:
«Есть две модели с точностью 88%.
- Модель A имеет уверенность 89%
- Модель B имеет уверенность 99%
Какую выберешь?»
Ответ «любая, у них одинаковая точность» завершает интервью.
Вот что в этом пропущено:
Современные нейросети часто вводят в заблуждение.
Они дают завышенную уверенность в предсказаниях.
Например, в одном эксперименте на датасете CIFAR-100 сравнивали LeNet и ResNet.
LeNet:
- точность ≈ 0.55
- средняя уверенность ≈ 0.54
ResNet:
- точность ≈ 0.7
- средняя уверенность ≈ 0.9
Несмотря на более высокую точность, ResNet переуверен в своих предсказаниях. Модель считает, что права с вероятностью 90%, но фактическая точность около 70%.
Калибровка решает эту проблему.
Модель считается откалиброванной, если вероятности предсказаний соответствуют реальным исходам.
Например: если модель выдаёт вероятность 70%, то примерно в 70% случаев событие действительно должно происходить.
Это важно, потому что такие модели используются в принятии решений.
Плохо откалиброванная, но уверенная модель может давать критически вводящие в заблуждение результаты.
Пример: государственная больница планирует дорогостоящие медицинские тесты.
Реалистичная оценка вероятностей помогает оптимально распределять бюджет и принимать решения.
Если модель не откалибрована, она будет выдавать избыточно уверенные прогнозы.
Диаграммы надёжности (reliability diagrams) используются для визуальной проверки калибровки.
Они отображают зависимость фактической точности от предсказанной уверенности (softmax-значений).
Идеально откалиброванная модель даёт линию y = x.
Также используют скалярную метрику — ожидаемую ошибку калибровки (ECE).
Одна из её аппроксимаций — разбиение предсказаний на интервалы и усреднение разницы между точностью и уверенностью по этим бинам.
Основные методы калибровки моделей:
Для бинарной классификации:
- биннинг по гистограмме
- изотоническая регрессия
- масштабирование Платта
Для многоклассовой классификации:
- биннинг
- матричное и векторное масштабирование
👉 @DataSciencegx
«Есть две модели с точностью 88%.
- Модель A имеет уверенность 89%
- Модель B имеет уверенность 99%
Какую выберешь?»
Ответ «любая, у них одинаковая точность» завершает интервью.
Вот что в этом пропущено:
Современные нейросети часто вводят в заблуждение.
Они дают завышенную уверенность в предсказаниях.
Например, в одном эксперименте на датасете CIFAR-100 сравнивали LeNet и ResNet.
LeNet:
- точность ≈ 0.55
- средняя уверенность ≈ 0.54
ResNet:
- точность ≈ 0.7
- средняя уверенность ≈ 0.9
Несмотря на более высокую точность, ResNet переуверен в своих предсказаниях. Модель считает, что права с вероятностью 90%, но фактическая точность около 70%.
Калибровка решает эту проблему.
Модель считается откалиброванной, если вероятности предсказаний соответствуют реальным исходам.
Например: если модель выдаёт вероятность 70%, то примерно в 70% случаев событие действительно должно происходить.
Это важно, потому что такие модели используются в принятии решений.
Плохо откалиброванная, но уверенная модель может давать критически вводящие в заблуждение результаты.
Пример: государственная больница планирует дорогостоящие медицинские тесты.
Реалистичная оценка вероятностей помогает оптимально распределять бюджет и принимать решения.
Если модель не откалибрована, она будет выдавать избыточно уверенные прогнозы.
Диаграммы надёжности (reliability diagrams) используются для визуальной проверки калибровки.
Они отображают зависимость фактической точности от предсказанной уверенности (softmax-значений).
Идеально откалиброванная модель даёт линию y = x.
Также используют скалярную метрику — ожидаемую ошибку калибровки (ECE).
Одна из её аппроксимаций — разбиение предсказаний на интервалы и усреднение разницы между точностью и уверенностью по этим бинам.
Основные методы калибровки моделей:
Для бинарной классификации:
- биннинг по гистограмме
- изотоническая регрессия
- масштабирование Платта
Для многоклассовой классификации:
- биннинг
- матричное и векторное масштабирование
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8🤔3
Превращайте любой кодовый репозиторий в интерактивный граф знаний.
Understand-Anything — это плагин для Claude Code, который строит визуальную карту проекта. Он анализирует каждый файл, функцию, класс и зависимости, после чего даёт интерактивную панель для навигации по структуре.
Запускается анализ, после чего пять агентов выполняются параллельно. Они сканируют проект, извлекают структуру, определяют архитектурные слои и строят граф знаний. Результат — интерактивная визуализация на React Flow.
Дашборд отображает кодовую базу как граф. Узлы — файлы, функции и классы. Рёбра — зависимости. Всё раскрашено по слоям (API, сервисы, данные, UI, утилиты).
При клике на узел показывается код, связи и объяснение на естественном языке.
Основные возможности:
• визуальная навигация с поиском по графу
• описания компонентов на естественном языке
• архитектурные маршруты по зависимостям
• семантический поиск по смыслу
• анализ влияния изменений
Поддерживается работа с разными агентами: Claude Code, Codex, OpenCode, OpenClaw, Cursor, Antigravity.
Проект полностью с открытым исходным кодом.
👉 @DataSciencegx
Understand-Anything — это плагин для Claude Code, который строит визуальную карту проекта. Он анализирует каждый файл, функцию, класс и зависимости, после чего даёт интерактивную панель для навигации по структуре.
Запускается анализ, после чего пять агентов выполняются параллельно. Они сканируют проект, извлекают структуру, определяют архитектурные слои и строят граф знаний. Результат — интерактивная визуализация на React Flow.
Дашборд отображает кодовую базу как граф. Узлы — файлы, функции и классы. Рёбра — зависимости. Всё раскрашено по слоям (API, сервисы, данные, UI, утилиты).
При клике на узел показывается код, связи и объяснение на естественном языке.
Основные возможности:
• визуальная навигация с поиском по графу
• описания компонентов на естественном языке
• архитектурные маршруты по зависимостям
• семантический поиск по смыслу
• анализ влияния изменений
Поддерживается работа с разными агентами: Claude Code, Codex, OpenCode, OpenClaw, Cursor, Antigravity.
Проект полностью с открытым исходным кодом.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥1
Создатели SWE-Bench выпустили новый простой тестовый набор, в котором у всех больших языковых моделей результат 0%.
ProgramBench проверяет, может ли модель с нуля воспроизвести реальные исполняемые программы (ffmpeg, SQLite, ripgrep) без доступа к интернету.
По результатам видно, что уровень качества моделей до насыщения ещё далеко.
Критика «почему запоминание ffmpeg вообще считается программной инженерией» закономерна.
Любой тестовый набор можно переобучить и выучить наизусть. То же относится и к SWE-Bench — там тоже можно заучить набор багов. В ARC AGI частично пытаются решить это через скрытые наборы игр, к которым нет доступа.
Получение 100% в ProgramBench не означает достижение общего искусственного интеллекта.
На практике попытки «зазубривания» таких программ обычно приводят к регрессу в других очевидных направлениях, а современные передовые модели так не обучаются. Дополнительно факт запоминания можно относительно просто проверить через сравнение с исходной реализацией.
Гипотеза здесь в том, что построение реального инструмента «с нуля» — это задача с длинным горизонтом и высокой практической ценностью. Если модели способны рассуждать и собирать такие системы, это, вероятно, переносится на широкий класс аналогичных задач.
👉 @DataSciencegx
ProgramBench проверяет, может ли модель с нуля воспроизвести реальные исполняемые программы (ffmpeg, SQLite, ripgrep) без доступа к интернету.
По результатам видно, что уровень качества моделей до насыщения ещё далеко.
Критика «почему запоминание ffmpeg вообще считается программной инженерией» закономерна.
Любой тестовый набор можно переобучить и выучить наизусть. То же относится и к SWE-Bench — там тоже можно заучить набор багов. В ARC AGI частично пытаются решить это через скрытые наборы игр, к которым нет доступа.
Получение 100% в ProgramBench не означает достижение общего искусственного интеллекта.
На практике попытки «зазубривания» таких программ обычно приводят к регрессу в других очевидных направлениях, а современные передовые модели так не обучаются. Дополнительно факт запоминания можно относительно просто проверить через сравнение с исходной реализацией.
Гипотеза здесь в том, что построение реального инструмента «с нуля» — это задача с длинным горизонтом и высокой практической ценностью. Если модели способны рассуждать и собирать такие системы, это, вероятно, переносится на широкий класс аналогичных задач.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6
Префилл и декодирование в инференсе LLM.
Задавались вопросом, почему первый токен всегда появляется с задержкой, а дальше поток идёт почти мгновенно? Это не сетевые задержки и не прогрев модели — это структурное свойство того, как реально исполняются LLM.
Инференс состоит из двух фаз, которые используют одну и ту же модель и один и тот же путь выполнения, но нагрузка в них принципиально разная, и узкие места противоположные.
𝗣𝗿𝗲𝗳𝗶𝗹𝗹 — это этап обработки запроса. Модель обрабатывает все входные токены за один параллельный проход, вычисляя Q, K и V сразу для всех токенов.
Механизм внимания выполняется как большая матричная операция, под которую GPU и оптимизированы, поэтому загрузка вычислительных блоков высокая, и чип работает на пределе арифметической пропускной способности.
Префилл упирается в вычисления, а метрика, которая это отражает — время до первого токена.
𝗗𝗲𝗰𝗼𝗱𝗲 начинается после появления первого токена. Чтобы сгенерировать следующий, модель считает Q, K и V только для нового токена, потому что всё предыдущее уже закэшировано.
Дальше идёт цикл «один токен — один проход»: новый query умножается на уже сохранённые ключи вместо полной матрицы, и объём вычислений становится небольшим.
Но GPU всё равно вынужден читать все веса и весь кэш из памяти, чтобы выполнить даже эту небольшую операцию, поэтому узким местом становится пропускная способность памяти, а вычислительные блоки простаивают.
Декодирование упирается в память, а метрика здесь — задержка между токенами.
Такое разделение объясняет ряд эффектов, которые выглядят неочевидно снаружи.
Загрузка GPU высокая на префилле и резко падает на декоде, потому что во второй фазе ограничением становится память, а не вычисления.
Добавление вычислительной мощности часто не помогает при медленной генерации, потому что для memory-bound нагрузок решением является более быстрая память или меньший кэш, а не больше FLOPs.
Длинный контекст замедляет генерацию непропорционально, потому что кэш ключей и значений растёт с каждым токеном, и каждый шаг декода должен его полностью читать.
Этот кэш — ключевая оптимизация, без которой декодинг был бы невозможен, потому что пришлось бы пересчитывать внимание по всей растущей последовательности на каждом шаге.
С кэшем он строится один раз на префилле и затем расширяется по одному элементу на каждый новый токен, переиспользуя уже вычисленные значения.
Но кэш хранится в памяти GPU и растёт линейно с длиной последовательности. Для модели уровня 13B это примерно 1 МБ на токен, то есть контекст 4K занимает около 4 ГБ видеопамяти только под кэш.
Поэтому длинный контекст ощущается медленным не из-за «недостатка мощности модели», а из-за давления на память.
Сейчас индустрия оптимизирует это ограничение через квантованный кэш, скользящие окна, группированное внимание и PagedAttention, а серия DeepSeek V4 идёт дальше и перерабатывает сам механизм внимания так, чтобы кэш изначально был меньше.
Когда внимание начинают перепроектировать под ограничения кэша, это означает, что ограничение сместилось в сторону памяти.
Практический вывод: если модель кажется медленной, важно различать — она медленно стартует или медленно стримит. Медленный старт соответствует префиллу и вычислительному узкому месту, медленный стрим — декоду и ограничению по памяти.
Дальше прочитай материал, который разбирает инференс LLM с нуля: токенизацию, эмбеддинги, внимание, разделение префилла и декода, кэш ключей/значений и квантование.
👉 @DataSciencegx
Задавались вопросом, почему первый токен всегда появляется с задержкой, а дальше поток идёт почти мгновенно? Это не сетевые задержки и не прогрев модели — это структурное свойство того, как реально исполняются LLM.
Инференс состоит из двух фаз, которые используют одну и ту же модель и один и тот же путь выполнения, но нагрузка в них принципиально разная, и узкие места противоположные.
𝗣𝗿𝗲𝗳𝗶𝗹𝗹 — это этап обработки запроса. Модель обрабатывает все входные токены за один параллельный проход, вычисляя Q, K и V сразу для всех токенов.
Механизм внимания выполняется как большая матричная операция, под которую GPU и оптимизированы, поэтому загрузка вычислительных блоков высокая, и чип работает на пределе арифметической пропускной способности.
Префилл упирается в вычисления, а метрика, которая это отражает — время до первого токена.
𝗗𝗲𝗰𝗼𝗱𝗲 начинается после появления первого токена. Чтобы сгенерировать следующий, модель считает Q, K и V только для нового токена, потому что всё предыдущее уже закэшировано.
Дальше идёт цикл «один токен — один проход»: новый query умножается на уже сохранённые ключи вместо полной матрицы, и объём вычислений становится небольшим.
Но GPU всё равно вынужден читать все веса и весь кэш из памяти, чтобы выполнить даже эту небольшую операцию, поэтому узким местом становится пропускная способность памяти, а вычислительные блоки простаивают.
Декодирование упирается в память, а метрика здесь — задержка между токенами.
Такое разделение объясняет ряд эффектов, которые выглядят неочевидно снаружи.
Загрузка GPU высокая на префилле и резко падает на декоде, потому что во второй фазе ограничением становится память, а не вычисления.
Добавление вычислительной мощности часто не помогает при медленной генерации, потому что для memory-bound нагрузок решением является более быстрая память или меньший кэш, а не больше FLOPs.
Длинный контекст замедляет генерацию непропорционально, потому что кэш ключей и значений растёт с каждым токеном, и каждый шаг декода должен его полностью читать.
Этот кэш — ключевая оптимизация, без которой декодинг был бы невозможен, потому что пришлось бы пересчитывать внимание по всей растущей последовательности на каждом шаге.
С кэшем он строится один раз на префилле и затем расширяется по одному элементу на каждый новый токен, переиспользуя уже вычисленные значения.
Но кэш хранится в памяти GPU и растёт линейно с длиной последовательности. Для модели уровня 13B это примерно 1 МБ на токен, то есть контекст 4K занимает около 4 ГБ видеопамяти только под кэш.
Поэтому длинный контекст ощущается медленным не из-за «недостатка мощности модели», а из-за давления на память.
Сейчас индустрия оптимизирует это ограничение через квантованный кэш, скользящие окна, группированное внимание и PagedAttention, а серия DeepSeek V4 идёт дальше и перерабатывает сам механизм внимания так, чтобы кэш изначально был меньше.
Когда внимание начинают перепроектировать под ограничения кэша, это означает, что ограничение сместилось в сторону памяти.
Практический вывод: если модель кажется медленной, важно различать — она медленно стартует или медленно стримит. Медленный старт соответствует префиллу и вычислительному узкому месту, медленный стрим — декоду и ограничению по памяти.
Дальше прочитай материал, который разбирает инференс LLM с нуля: токенизацию, эмбеддинги, внимание, разделение префилла и декода, кэш ключей/значений и квантование.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤2
Основы PyTorch: первые шаги в практическом глубоком обучении.
Введение в основы PyTorch: инициализация тензоров, операции, индексация и изменение формы (reshape).
👉 @DataSciencegx
Введение в основы PyTorch: инициализация тензоров, операции, индексация и изменение формы (reshape).
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Рекомендую бесплатную книгу по машинному обучению и ИИ на GitHub: Machine Learning Q and AI.
Вся книга построена вокруг 30 ключевых вопросов по машинному обучению и искусственному интеллекту — от нейросетей до деплоя моделей, с разбором базовых концептов в одном месте.
GitHub: MachineLearning-QandAI-book репозиторий
Онлайн-версия: Machine Learning Q and AI онлайн
Контент структурирован по 5 основным направлениям: нейронные сети, глубокое обучение, компьютерное зрение, обработка естественного языка и деплой моделей. Такой разрез помогает идти по логической траектории и не терять ключевые темы.
Скачивание не требуется — можно читать прямо в браузере. Подходит разработчикам разного уровня: от базового понимания до прикладной реализации.
👉 @DataSciencegx
Вся книга построена вокруг 30 ключевых вопросов по машинному обучению и искусственному интеллекту — от нейросетей до деплоя моделей, с разбором базовых концептов в одном месте.
GitHub: MachineLearning-QandAI-book репозиторий
Онлайн-версия: Machine Learning Q and AI онлайн
Контент структурирован по 5 основным направлениям: нейронные сети, глубокое обучение, компьютерное зрение, обработка естественного языка и деплой моделей. Такой разрез помогает идти по логической траектории и не терять ключевые темы.
Скачивание не требуется — можно читать прямо в браузере. Подходит разработчикам разного уровня: от базового понимания до прикладной реализации.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Обучите небольшую модель на 110M параметров с нуля на архитектуре DeepSeek-V4. Проект позволяет руками поэкспериментировать с такими фичами, как MLA, MoE, Hyper-Connections и MTP.
https://github.com/huggingface/nanowhale
Nanowhale — это небольшая модель на 110M параметров от Hugging Face, в которую перенесли все ключевые архитектурные особенности DeepSeek-V4:
- MLA (8 attention heads + 1 KV-head);
- MoE (4 роутера + 1 shared expert);
- Hyper-Connections (Sinkhorn routing);
- multi-token prediction.
Сначала модель предобучали 5000 шагов на FineWeb-Edu (2.6B токенов, loss около 5.3), затем провели SFT на SmolTalk в течение 3000 шагов. Accuracy выросла с 36.2% до 48.5%.
Из интересных нюансов:
- Hyper-Connections начинают разваливаться в NaN при использовании bf16, поэтому требуется fp32;
- словарь на 129K токенов оказался слишком большим — эмбеддинги занимают около 37% всех параметров модели.
👉 @DataSciencegx
https://github.com/huggingface/nanowhale
Nanowhale — это небольшая модель на 110M параметров от Hugging Face, в которую перенесли все ключевые архитектурные особенности DeepSeek-V4:
- MLA (8 attention heads + 1 KV-head);
- MoE (4 роутера + 1 shared expert);
- Hyper-Connections (Sinkhorn routing);
- multi-token prediction.
Сначала модель предобучали 5000 шагов на FineWeb-Edu (2.6B токенов, loss около 5.3), затем провели SFT на SmolTalk в течение 3000 шагов. Accuracy выросла с 36.2% до 48.5%.
Из интересных нюансов:
- Hyper-Connections начинают разваливаться в NaN при использовании bf16, поэтому требуется fp32;
- словарь на 129K токенов оказался слишком большим — эмбеддинги занимают около 37% всех параметров модели.
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - huggingface/nanowhale
Contribute to huggingface/nanowhale development by creating an account on GitHub.
This media is not supported in your browser
VIEW IN TELEGRAM
Мозг человека невероятно эффективен, потому что активирует только те нейроны, которые нужны для конкретной мысли. Современные большие языковые модели естественно пытаются делать то же самое (более 95% нейронов в полносвязных слоях остаются неактивными для каждого слова), но железо за это наказывает.
Один из самых раздражающих парадоксов в глубоком обучении: чем меньше вычислений делает модель, тем медленнее она может работать. Причина в том, что неструктурированная разреженность создаёт нерегулярные обращения к памяти, а графические процессоры оптимизированы под предсказуемые плотные блоки вычислений.
sakana AI объединились с NVIDIA, чтобы попытаться исправить это несоответствие железа. Вместо того чтобы заставлять графический процессор адаптироваться к разреженности, они сделали «гибридный» формат, который подгоняет разреженность под графический процессор. Их формат разреженности (TwELL) динамически направляет 99% сильно разрежённых токенов через быстрый путь и использует плотную резервную матрицу как защитный механизм для редких тяжёлых токенов.
С помощью TwELL и нового набора кастомных ядер CUDA для инференса и обучения больших языковых моделей они превратили теоретическую разреженность в реальные ускорения по времени: более 20% ускорения обучения и инференса на графических процессорах H100, а также снижение энергопотребления и требований к памяти.
Доклад: https://arxiv.org/abs/2603.23198
Блог: https://pub.sakana.ai/sparser-faster-llms/
Код: https://github.com/SakanaAI/sparser-faster-llms
👉 @DataSciencegx
Один из самых раздражающих парадоксов в глубоком обучении: чем меньше вычислений делает модель, тем медленнее она может работать. Причина в том, что неструктурированная разреженность создаёт нерегулярные обращения к памяти, а графические процессоры оптимизированы под предсказуемые плотные блоки вычислений.
sakana AI объединились с NVIDIA, чтобы попытаться исправить это несоответствие железа. Вместо того чтобы заставлять графический процессор адаптироваться к разреженности, они сделали «гибридный» формат, который подгоняет разреженность под графический процессор. Их формат разреженности (TwELL) динамически направляет 99% сильно разрежённых токенов через быстрый путь и использует плотную резервную матрицу как защитный механизм для редких тяжёлых токенов.
С помощью TwELL и нового набора кастомных ядер CUDA для инференса и обучения больших языковых моделей они превратили теоретическую разреженность в реальные ускорения по времени: более 20% ускорения обучения и инференса на графических процессорах H100, а также снижение энергопотребления и требований к памяти.
Доклад: https://arxiv.org/abs/2603.23198
Блог: https://pub.sakana.ai/sparser-faster-llms/
Код: https://github.com/SakanaAI/sparser-faster-llms
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Наивный RAG против Blockify!
Появился новый подход для RAG, который:
- уменьшает размер корпуса данных в 40 раз;
- снижает количество токенов на запрос в 3 раза;
- повышает релевантность векторного поиска в 2.3 раза.
И всё это — в open-source.
Посмотреть можно здесь: https://github.com/iternal-technologies-partners/blockify-agentic-data-optimization
👉 @DataSciencegx
Появился новый подход для RAG, который:
- уменьшает размер корпуса данных в 40 раз;
- снижает количество токенов на запрос в 3 раза;
- повышает релевантность векторного поиска в 2.3 раза.
И всё это — в open-source.
Посмотреть можно здесь: https://github.com/iternal-technologies-partners/blockify-agentic-data-optimization
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Сегодня в группе обсуждали, как изучать Harness. Для изучения инженерной части Harness я сейчас использую два проекта:
1. walkinglabs/learn-harness-engineering
Использую, чтобы разобраться в каждом базовом механизме Harness.
2. https://github.com/badlogic/pi-mono?utm_source=chatgpt.com
Изучаю архитектуру и реализацию каждого модуля в этом фреймворке. Если что-то непонятно — прошу ИИ разобрать логику реализации.
👉 @DataSciencegx
1. walkinglabs/learn-harness-engineering
Использую, чтобы разобраться в каждом базовом механизме Harness.
2. https://github.com/badlogic/pi-mono?utm_source=chatgpt.com
Изучаю архитектуру и реализацию каждого модуля в этом фреймворке. Если что-то непонятно — прошу ИИ разобрать логику реализации.
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - badlogic/pi-mono: AI agent toolkit: coding agent CLI, unified LLM API, TUI & web UI libraries, Slack bot, vLLM pods
AI agent toolkit: coding agent CLI, unified LLM API, TUI & web UI libraries, Slack bot, vLLM pods - badlogic/pi-mono
Обучение полноценной мультимодальной модели на 0.1B параметров с нуля: одна общая модель обрабатывает текст, речь и изображения, а на выходе генерирует текст и потоковую речь.
MiniMind-O — мультимодальная модель всего на 0.1B параметров с двухконтурной архитектурой Thinker-Talker. Поддерживает текстовые, голосовые и визуальные входные данные, а в качестве вывода умеет генерировать текст и потоковую речь.
В проекте полностью открыты:
- исходный код;
- веса модели;
- тренировочные датасеты;
- технические отчёты.
Базовые алгоритмы реализованы с нуля на PyTorch, а обучение на мини-датасете можно завершить примерно за два часа даже на одной RTX 3090.
👉 @DataSciencegx
MiniMind-O — мультимодальная модель всего на 0.1B параметров с двухконтурной архитектурой Thinker-Talker. Поддерживает текстовые, голосовые и визуальные входные данные, а в качестве вывода умеет генерировать текст и потоковую речь.
В проекте полностью открыты:
- исходный код;
- веса модели;
- тренировочные датасеты;
- технические отчёты.
Базовые алгоритмы реализованы с нуля на PyTorch, а обучение на мини-датасете можно завершить примерно за два часа даже на одной RTX 3090.
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
GitHub - jingyaogong/minimind-o: 🎙️ 「大模型」从0训练0.1B能听能说能看的全模态Omni模型!A 0.1B Omni model trained from scratch, capable of listening…
🎙️ 「大模型」从0训练0.1B能听能说能看的全模态Omni模型!A 0.1B Omni model trained from scratch, capable of listening, speaking, and seeing! - jingyaogong/minimind-o
❤4
This media is not supported in your browser
VIEW IN TELEGRAM
Исследователи нашли способ ускорить большие языковые модели в 8.5 раза? 🤓
Спекулятивное декодирование — довольно эффективный способ решить проблему узкого места одного токена в традиционном инференсе больших языковых моделей.
Сначала маленькая черновая модель генерирует несколько следующих токенов, затем большая модель проверяет их все сразу за один прямой проход.
Если токен на любой позиции оказывается неверным, сохраняется всё до него, после чего генерация продолжается с этой точки. Такой подход никогда не работает хуже обычного декодирования.
Но текущие черновые модели в спекулятивном декодировании всё ещё предсказывают токены по одному. Из-за этого сам этап черновой генерации становится узким местом, ограничивая ускорение в реальных сценариях примерно 2–3 разами.
DFlash — новая техника, которая заменяет авторегрессионную черновую модель на облегчённую блочную диффузионную модель, предсказывающую все токены параллельно за один проход.
Стоимость черновой генерации остаётся постоянной независимо от количества спекулятивно предсказываемых токенов.
Дополнительно черновая модель получает скрытые признаки из нескольких слоёв целевой модели, которые внедряются в каждый слой генерации черновика. Благодаря этому она делает заметно более точные предсказания по сравнению с моделью, работающей без такого контекста.
В демонстрации ниже обычное декодирование работает со скоростью 48.5 токена в секунду. DFlash достигает 415 токенов в секунду на той же модели без какой-либо потери качества.
Техника уже интегрирована в vLLM, SGLang и Transformers, а модели для черновой генерации доступны на HuggingFace для Qwen3, Qwen3.5, Llama 3.1, Kimi-K2.5, gpt-oss и многих других моделей.
- репозиторий на GitHub
KV-кэширование — ещё одна обязательная техника для ускорения инференса больших языковых моделей. Вот об этом статья.
👉 @DataSciencegx
Спекулятивное декодирование — довольно эффективный способ решить проблему узкого места одного токена в традиционном инференсе больших языковых моделей.
Сначала маленькая черновая модель генерирует несколько следующих токенов, затем большая модель проверяет их все сразу за один прямой проход.
Если токен на любой позиции оказывается неверным, сохраняется всё до него, после чего генерация продолжается с этой точки. Такой подход никогда не работает хуже обычного декодирования.
Но текущие черновые модели в спекулятивном декодировании всё ещё предсказывают токены по одному. Из-за этого сам этап черновой генерации становится узким местом, ограничивая ускорение в реальных сценариях примерно 2–3 разами.
DFlash — новая техника, которая заменяет авторегрессионную черновую модель на облегчённую блочную диффузионную модель, предсказывающую все токены параллельно за один проход.
Стоимость черновой генерации остаётся постоянной независимо от количества спекулятивно предсказываемых токенов.
Дополнительно черновая модель получает скрытые признаки из нескольких слоёв целевой модели, которые внедряются в каждый слой генерации черновика. Благодаря этому она делает заметно более точные предсказания по сравнению с моделью, работающей без такого контекста.
В демонстрации ниже обычное декодирование работает со скоростью 48.5 токена в секунду. DFlash достигает 415 токенов в секунду на той же модели без какой-либо потери качества.
Техника уже интегрирована в vLLM, SGLang и Transformers, а модели для черновой генерации доступны на HuggingFace для Qwen3, Qwen3.5, Llama 3.1, Kimi-K2.5, gpt-oss и многих других моделей.
- репозиторий на GitHub
KV-кэширование — ещё одна обязательная техника для ускорения инференса больших языковых моделей. Вот об этом статья.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Одна теорема, которую должен знать каждый ML-инженер:
Лемма Джонсона — Линденштрауса.
Она утверждает, что данные высокой размерности можно спроецировать в пространство гораздо меньшей размерности, при этом приблизительно сохранив попарные расстояния между точками.
Почему это важно:
• Объясняет, почему случайные проекции работают
• Делает обучение в пространствах высокой размерности масштабируемым
• Используется в эмбеддингах, сжатом обучении и поиске ближайших соседей
• Помогает бороться с проклятием размерности
Самое неожиданное:
Можно радикально уменьшить размерность, почти не разрушая геометрию данных.
Именно поэтому многие ML-системы способны эффективно работать даже с огромными пространствами признаков.
Современное обучение представлений тесно связано с этой идеей:
Хорошие эмбеддинги сохраняют структуру данных, одновременно сжимая информацию.
В машинном обучении сжатие часто означает не потерю интеллекта, а удаление избыточности.
👉 @DataSciencegx
Лемма Джонсона — Линденштрауса.
Она утверждает, что данные высокой размерности можно спроецировать в пространство гораздо меньшей размерности, при этом приблизительно сохранив попарные расстояния между точками.
Почему это важно:
• Объясняет, почему случайные проекции работают
• Делает обучение в пространствах высокой размерности масштабируемым
• Используется в эмбеддингах, сжатом обучении и поиске ближайших соседей
• Помогает бороться с проклятием размерности
Самое неожиданное:
Можно радикально уменьшить размерность, почти не разрушая геометрию данных.
Именно поэтому многие ML-системы способны эффективно работать даже с огромными пространствами признаков.
Современное обучение представлений тесно связано с этой идеей:
Хорошие эмбеддинги сохраняют структуру данных, одновременно сжимая информацию.
В машинном обучении сжатие часто означает не потерю интеллекта, а удаление избыточности.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8🔥6
This media is not supported in your browser
VIEW IN TELEGRAM
Сделали скилл для создания сред обучения с подкреплением
Теперь любой может создавать среды обучения с подкреплением :
ps. В создании RL-сред для обучения есть гораздо больше аспектов. Один из ключевых это данные, которые этот скилл напрямую не решает. Однако скилл помогает реализовывать инструменты, награды и другие компоненты RL-среды, упрощая переход от идеи к реализации и позволяя быстрее собирать решения на разных фреймворках.
Это всё ещё очень ранняя версия работы и, скорее всего, сильно изменится.
Открыт для вклада в проект и предложений по улучшению.😀
👉 @DataSciencegx
Теперь любой может создавать среды обучения с подкреплением :
$ npx skills add adithya-s-k/RL_Envs_101- Можно создавать среды в нескольких фреймворках, таких как OpenEnv, OpenReward, Verifiers, NemoGym и другие
- в репозитории есть живые рабочие примеры сред, на которые может ссылаться ваш кодинг агент
- скилл изначально рассчитан на то, чтобы определить, какой тип модели вы обучаете, и уже с учётом этого создавать среду
ps. В создании RL-сред для обучения есть гораздо больше аспектов. Один из ключевых это данные, которые этот скилл напрямую не решает. Однако скилл помогает реализовывать инструменты, награды и другие компоненты RL-среды, упрощая переход от идеи к реализации и позволяя быстрее собирать решения на разных фреймворках.
Это всё ещё очень ранняя версия работы и, скорее всего, сильно изменится.
Открыт для вклада в проект и предложений по улучшению.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Дообучение Google Gemma 4 полностью бесплатно
Нужен только браузер и доступ к более чем 500 моделям на выбор.
Процесс простой:
1. Открыть блокнот Unsloth в Colab
2. Выбрать модель и датасет
3. Запустить обучение
Готово😂
👉 @DataSciencegx
Нужен только браузер и доступ к более чем 500 моделям на выбор.
Процесс простой:
1. Открыть блокнот Unsloth в Colab
2. Выбрать модель и датасет
3. Запустить обучение
Готово
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6🔥5