Ограничен по GPU и не хочешь поднимать локальный кластер для RL?
Знакомься с OpenTinker.
OpenTinker — это open-source RL-as-a-Service: ты проектируешь агента локально, а обучение и инференс спокойно уезжают на удалённые GPU. Без возни с инфраструктурой, без жёсткой связки логики агента и исполнения. Чистый, масштабируемый агентный RL.
Почему это важно:
- можно прототипировать RL-задачи локально, не думая о железе
- всё тяжёлое — обучение и инференс — выполняется на облачных GPU
- поддержка single-turn и multi-turn задач
- обученную модель можно сразу задеплоить в инференс, без допкода
Как это устроено:
- дезагрегированная архитектура
- локально крутится лёгкий клиент
- эксперименты отправляются в облачный scheduler
- scheduler матчится с доступными GPU и оркестрирует задачи по ресурсам
- таск поднимается удалённо, а метрики стримятся в реальном времени в дашборд
API для разработчиков:
- один раз оборачиваешь environment, reward и policy
- OpenTinker сам берёт на себя data loading, rollouts, training и inference
Интерфейсы знакомые:
- для окружения: env.reset() и env.step()
- для обучения: high-level fit() — полный training loop end-to-end
- под капотом fit() собран из train_step(), validate(), save_checkpoint()
- хочешь быстро — используешь fit()
- нужен контроль — кастомизируешь шаги вручную
Runtime агента выглядит как state machine:
PENDING — препроцессинг и токенизация
GENERATING — модель генерирует ответ
INTERACTING — агент действует в окружении
TERMINATED — задача завершена
Ссылки:
Репозиторий: https://github.com/open-tinker/OpenTinker
Блог: https://open-tinker.github.io/opentinker-page/
👉 @DataSciencegx
Знакомься с OpenTinker.
OpenTinker — это open-source RL-as-a-Service: ты проектируешь агента локально, а обучение и инференс спокойно уезжают на удалённые GPU. Без возни с инфраструктурой, без жёсткой связки логики агента и исполнения. Чистый, масштабируемый агентный RL.
Почему это важно:
- можно прототипировать RL-задачи локально, не думая о железе
- всё тяжёлое — обучение и инференс — выполняется на облачных GPU
- поддержка single-turn и multi-turn задач
- обученную модель можно сразу задеплоить в инференс, без допкода
Как это устроено:
- дезагрегированная архитектура
- локально крутится лёгкий клиент
- эксперименты отправляются в облачный scheduler
- scheduler матчится с доступными GPU и оркестрирует задачи по ресурсам
- таск поднимается удалённо, а метрики стримятся в реальном времени в дашборд
API для разработчиков:
- один раз оборачиваешь environment, reward и policy
- OpenTinker сам берёт на себя data loading, rollouts, training и inference
Интерфейсы знакомые:
- для окружения: env.reset() и env.step()
- для обучения: high-level fit() — полный training loop end-to-end
- под капотом fit() собран из train_step(), validate(), save_checkpoint()
- хочешь быстро — используешь fit()
- нужен контроль — кастомизируешь шаги вручную
Runtime агента выглядит как state machine:
PENDING — препроцессинг и токенизация
GENERATING — модель генерирует ответ
INTERACTING — агент действует в окружении
TERMINATED — задача завершена
Ссылки:
Репозиторий: https://github.com/open-tinker/OpenTinker
Блог: https://open-tinker.github.io/opentinker-page/
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
А что, если вложенные определения StructType можно заменить одной строкой?
При разборе вложенного JSON в PySpark обычно приходится описывать StructType внутри StructType внутри StructType. В итоге получается громоздкий, негибкий код, который легко ломается при любом изменении структуры JSON.
В PySpark 4.0 появился тип Variant, который позволяет вообще отказаться от описания схемы. Достаточно использовать parse_json() для загрузки данных и variant_get() для извлечения значений через JSONPath.
Ключевые плюсы:
• не нужно заранее описывать схему
• любая глубина вложенности через простой синтаксис $.path
• изменения схемы не ломают код
• извлекаешь только нужные поля и только тогда, когда они реально нужны
Обновляй свои пайплайны на PySpark 4.0:
pip install pyspark>=4.0
Статья про PySpark 4.0: [https://bit.ly/4atLpI3]
Запустить код: [https://bit.ly/49oJR0Y]
👉 @DataSciencegx
При разборе вложенного JSON в PySpark обычно приходится описывать StructType внутри StructType внутри StructType. В итоге получается громоздкий, негибкий код, который легко ломается при любом изменении структуры JSON.
В PySpark 4.0 появился тип Variant, который позволяет вообще отказаться от описания схемы. Достаточно использовать parse_json() для загрузки данных и variant_get() для извлечения значений через JSONPath.
Ключевые плюсы:
• не нужно заранее описывать схему
• любая глубина вложенности через простой синтаксис $.path
• изменения схемы не ломают код
• извлекаешь только нужные поля и только тогда, когда они реально нужны
Обновляй свои пайплайны на PySpark 4.0:
pip install pyspark>=4.0
Статья про PySpark 4.0: [https://bit.ly/4atLpI3]
Запустить код: [https://bit.ly/49oJR0Y]
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍2
Google Colab теперь поставляется с предустановленным Gemini CLI
Самое кайфовое тут в том, что в Colab можно использовать оба режима: неинтерактивный (слева) и интерактивный (справа).
Больше всего мне заходит неинтерактивный режим прямо внутри ноутбука.
👉 @DataSciencegx
Самое кайфовое тут в том, что в Colab можно использовать оба режима: неинтерактивный (слева) и интерактивный (справа).
Больше всего мне заходит неинтерактивный режим прямо внутри ноутбука.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤5🔥4
NVIDIA выпустила гайд для новичков по fine-tuning LLM с помощью Unsloth.
В гайде разбирают:
- методы обучения: LoRA, FFT, RL
- когда и зачем делать fine-tuning, реальные use-case’ы
- сколько данных и VRAM требуется
- как обучать локально на DGX Spark, RTX-видеокартах и не только
Гайд: https://blogs.nvidia.com/blog/rtx-ai-garage-fine-tuning-unsloth-dgx-spark/
👉 @DataSciencegx
В гайде разбирают:
- методы обучения: LoRA, FFT, RL
- когда и зачем делать fine-tuning, реальные use-case’ы
- сколько данных и VRAM требуется
- как обучать локально на DGX Spark, RTX-видеокартах и не только
Гайд: https://blogs.nvidia.com/blog/rtx-ai-garage-fine-tuning-unsloth-dgx-spark/
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9
Преобразуй сложные регэкспы в нормальный читаемый Python-код с Pregex
Шаблоны вроде [a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,} выглядят пугающе и плохо читаются. Команде без опыта в регулярках сложно понять и править такие валидации.
Pregex разворачивает regex в понятный питоновский код из описательных компонентов.
Что получаем:
• Код сам объясняет намерение, даже без комментариев
• Можно править без знаний регэкспов
• Компонуешь паттерны для сложной валидации
• При необходимости обратно экспортируешь в обычный regex
Инструмент open source. Установка:
Полная статья: https://bit.ly/3IWAE5O
Запустите этот код: https://bit.ly/4hdQjKM
👉 @DataSciencegx
Шаблоны вроде [a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,} выглядят пугающе и плохо читаются. Команде без опыта в регулярках сложно понять и править такие валидации.
Pregex разворачивает regex в понятный питоновский код из описательных компонентов.
Что получаем:
• Код сам объясняет намерение, даже без комментариев
• Можно править без знаний регэкспов
• Компонуешь паттерны для сложной валидации
• При необходимости обратно экспортируешь в обычный regex
Инструмент open source. Установка:
pip install pregexПолная статья: https://bit.ly/3IWAE5O
Запустите этот код: https://bit.ly/4hdQjKM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Это модель, которая умеет находить приватные данные в тексте и автоматически замазывать их, чтобы не утекла лишняя инфа. Весит всего 0.1B, я прогнал у себя — спокойно работает на CPU. На скрине ниже как раз мой тест.
Использование элементарное: автор запаковал всё в питоновский пакет.
Импортируешь и вызываешь метод — и готово:
Но есть момент — модель из коробки «понимает» только английский. Для других языков придётся подстроить. В комплекте есть тулкит для тонкой настройки даже без датасета для обучения, что удобно.
Модель лежит здесь: https://huggingface.co/tanaos/tanaos-text-anonymizer-v1
👉 @DataSciencegx
Использование элементарное: автор запаковал всё в питоновский пакет.
Импортируешь и вызываешь метод — и готово:
from artifex import Artifex
Artifex().text_anonymization("твой текст")
Но есть момент — модель из коробки «понимает» только английский. Для других языков придётся подстроить. В комплекте есть тулкит для тонкой настройки даже без датасета для обучения, что удобно.
Модель лежит здесь: https://huggingface.co/tanaos/tanaos-text-anonymizer-v1
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12❤1
Этот open-source репо ужимает 60 млн текстовых чанков с примерно 201 ГБ до примерно 6 ГБ 🤯
Это где-то на 97% меньше, при этом качество ретривала остаётся очень близким к стандартным сетапам.
• Без облака
• Без GPU
• Запускается локально на обычном ноутбуке
• Полная приватность
• 100% open source
LEANN делает это за счёт того, что не хранит эмбеддинги постоянно.
Вместо этого он использует компактный граф и пересчитывает эмбеддинги только когда они реально нужны :))
👉 @DataSciencegx
Это где-то на 97% меньше, при этом качество ретривала остаётся очень близким к стандартным сетапам.
• Без облака
• Без GPU
• Запускается локально на обычном ноутбуке
• Полная приватность
• 100% open source
LEANN делает это за счёт того, что не хранит эмбеддинги постоянно.
Вместо этого он использует компактный граф и пересчитывает эмбеддинги только когда они реально нужны :))
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤1🤯1
This media is not supported in your browser
VIEW IN TELEGRAM
Финальный набор инструментов для работы с LLM.
Transformer Lab позволяет обучать, дообучать и общаться с любой LLM локально. Есть загрузка моделей в один клик и простой drag-and-drop интерфейс для RAG.
Полностью open source.
👉 @DataSciencegx
Transformer Lab позволяет обучать, дообучать и общаться с любой LLM локально. Есть загрузка моделей в один клик и простой drag-and-drop интерфейс для RAG.
Полностью open source.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Вам следует приобрести GPU и запускать свои модели искусственного интеллекта локально.
👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
😁7❤6
Новое исследование подъехало: появился приём, который режет галлюцинации у ИИ примерно на 50%.
Называется Model-First Reasoning.
Смысл простой. Вместо привычного «как решить задачу [xxx]?»
Сначала заставляем модель перечислить:
- что в задаче участвует
- что может меняться
- какие действия вообще допустимы
- что под запретом
И только потом просим решить, опираясь только на этот список.
Чем отличается от Chain-of-Thought?
CoT — модель «думает и решает одновременно». Звучит плавно и умно, но по пути нередко додумывает лишнее.
Model-First Reasoning ставит жёсткую стенку:
сначала определяем правила,
потом решаем.
Без смешивания.
ИИ обязан использовать только то, что сам записал на первом шаге — в этом и фокус.
Тестили на медицинском планировании, маршрутах, распределении ресурсов и логических задачах.
Результат стабилен: меньше нарушений правил, чище ответы.
Почему работает:
• LLM выдумывает детали, потому что предполагает то, чего ты не говорил.
• Когда заставляешь сначала всё выписать, прятаться некуда.
• Это лишний аргумент в пользу «Human-in-the-loop»: проверяем шаги по ходу, не даём модели уехать в фантазии.
Статья тут: https://arxiv.org/pdf/2512.14474
👉 @DataSciencegx
Называется Model-First Reasoning.
Смысл простой. Вместо привычного «как решить задачу [xxx]?»
Сначала заставляем модель перечислить:
- что в задаче участвует
- что может меняться
- какие действия вообще допустимы
- что под запретом
И только потом просим решить, опираясь только на этот список.
Чем отличается от Chain-of-Thought?
CoT — модель «думает и решает одновременно». Звучит плавно и умно, но по пути нередко додумывает лишнее.
Model-First Reasoning ставит жёсткую стенку:
сначала определяем правила,
потом решаем.
Без смешивания.
ИИ обязан использовать только то, что сам записал на первом шаге — в этом и фокус.
Тестили на медицинском планировании, маршрутах, распределении ресурсов и логических задачах.
Результат стабилен: меньше нарушений правил, чище ответы.
Почему работает:
• LLM выдумывает детали, потому что предполагает то, чего ты не говорил.
• Когда заставляешь сначала всё выписать, прятаться некуда.
• Это лишний аргумент в пользу «Human-in-the-loop»: проверяем шаги по ходу, не даём модели уехать в фантазии.
Статья тут: https://arxiv.org/pdf/2512.14474
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11
Парень написал GPU-ускоренный решатель задач линейного программирования на PyTorch, который масштабируется до 100k+ переменных и ограничений и по скорости/качеству конкурирует с современными state-of-the-art солверами.
Вся реализация занимает примерно 350 строк кода (без документации и логирования) и сделана максимально простой.
Там реализован алгоритм PDLP, вариант PDHG (primal-dual hybrid gradient). Имплементация довольно близко следует свежим статьям по PDLP. Весь решатель собран в одной функции solve(), в которую ты просто передаешь данные своей задачи.
👉 @DataSciencegx
Вся реализация занимает примерно 350 строк кода (без документации и логирования) и сделана максимально простой.
Там реализован алгоритм PDLP, вариант PDHG (primal-dual hybrid gradient). Имплементация довольно близко следует свежим статьям по PDLP. Весь решатель собран в одной функции solve(), в которую ты просто передаешь данные своей задачи.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6🤔3👎1🔥1
Новый блог про оптимизацию политик в RL вышел. Автор собрал техники, которые идут дальше PPO: GRPO, DR.GRPO, GSPO, DAPO, CISPO, GMPO, RSPO и SAPO. По сути, это способы сделать обучение агентов стабильнее и результативнее на сложных задачах
👉 @DataSciencegx
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Please open Telegram to view this post
VIEW IN TELEGRAM
Claude Scientific Skills — это набор навыков, который превращает Claude в исследовательского ассистента для сложных научных задач: многошаговые расчёты, математика, биология, химия, медицина и другие области, где нужен последовательный анализ и аккуратная логика.
Открытый проект, полный доступ к коду. Внутри больше 123 готовых навыков.
👉 @DataSciencegx
Открытый проект, полный доступ к коду. Внутри больше 123 готовых навыков.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5
This media is not supported in your browser
VIEW IN TELEGRAM
Автор собрал все свои посты про AI-инжиниринг в один PDF.
Внутри:
375+ страниц. Скачать бесплатно
👉 @DataSciencegx
Внутри:
основы LLM
prompt engineering
дообучение
RAG
работа с контекстом
AI-агенты
MCP
оптимизация
деплой
оценка и наблюдаемость
375+ страниц. Скачать бесплатно
Please open Telegram to view this post
VIEW IN TELEGRAM
А что если просто смена библиотеки разблокировала бы все ядра процессора без переписывания кода?
pandas гоняет join’ы на одном ядре, оставляя остальные простаивать при работе с большими таблицами.
Polars раскидывает операции join по всем доступным ядрам и за счёт этого ощутимо быстрее pandas на крупных данных.
Почему Polars такой быстрый:
• Обрабатывает строки батчами в параллель
• Использует все CPU-ядра
• Не требует никакой настройки
Статья — pandas vs polars vs DuckDB
Запустите этот код
👉 @DataSciencegx
pandas гоняет join’ы на одном ядре, оставляя остальные простаивать при работе с большими таблицами.
Polars раскидывает операции join по всем доступным ядрам и за счёт этого ощутимо быстрее pandas на крупных данных.
Почему Polars такой быстрый:
• Обрабатывает строки батчами в параллель
• Использует все CPU-ядра
• Не требует никакой настройки
Статья — pandas vs polars vs DuckDB
Запустите этот код
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5
Открыли исходники DeepTutor — AI-ассистента для персонализированного обучения.
Основные возможности DeepTutor:
» Умный Q&A по документам
Загружаешь учебники, статьи, техдоки — задаёшь вопросы и получаешь развернутые ответы с корректными ссылками на источники.
» Визуализация и объяснения знаний
Превращает сложные темы в наглядные диаграммы и интерактивные страницы, подстраиваясь под темп изучения.
» Генерация практических задач
Создаёт вопросы и мини-тесты на основе твоих материалов. Может подражать формату реальных экзаменов, если загрузить примеры.
» Глубокий ресёрч и генерация идей
Помогает в исследовательской работе, отчётах и брейнстормах. Тянет несколько тем параллельно, не теряя контекст.
👉 @DataSciencegx
Мы экспериментируем с агентными ИИ, которые могут помогать студентам и исследователям на всём пути обучения. DeepTutor объединяет работу с материалами, решение задач, генерацию практики и управление знаниями в одну систему, которая реально понимает твой контекст обучения.
Основные возможности DeepTutor:
» Умный Q&A по документам
Загружаешь учебники, статьи, техдоки — задаёшь вопросы и получаешь развернутые ответы с корректными ссылками на источники.
» Визуализация и объяснения знаний
Превращает сложные темы в наглядные диаграммы и интерактивные страницы, подстраиваясь под темп изучения.
» Генерация практических задач
Создаёт вопросы и мини-тесты на основе твоих материалов. Может подражать формату реальных экзаменов, если загрузить примеры.
» Глубокий ресёрч и генерация идей
Помогает в исследовательской работе, отчётах и брейнстормах. Тянет несколько тем параллельно, не теряя контекст.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7
А что если можно было бы точно увидеть момент, когда модель начинает переобучаться при подборе гиперпараметров?
Тюнинг гиперпараметров — это поиск баланса между недообучением (модель слишком примитивная) и переобучением (модель запоминает датасет вместо того, чтобы учиться обобщать).
Конечно, можно самому писать цикл, гонять кросс-валидацию по каждому значению, собирать метрики и строить графики. Но это рутинщина, которую придётся повторять из проекта в проект.
Yellowbrick — библиотека визуализации для машинного обучения, которая как раз решает эту задачу.
ValidationCurve показывает, где всё ок, где начинает разваливаться и что стоит поправить, без шаблонного кода и кривых графиков.
Как читать график из примера:
• Метрика на train (синяя) остаётся высокой при росте max_depth
• Метрика на validation (зелёная) падает после глубины 4
• Разрыв между ними растёт — модель запоминает тренировочные данные и плохо обобщает на новых
Что делать: выбрать max_depth примерно 3–4, пока валидационная метрика на пике и разрыв ещё не ушёл в космос.
Полная статья: https://bit.ly/44CBQ62
Запустите этот код: https://bit.ly/48RanQp
👉 @DataSciencegx
Тюнинг гиперпараметров — это поиск баланса между недообучением (модель слишком примитивная) и переобучением (модель запоминает датасет вместо того, чтобы учиться обобщать).
Конечно, можно самому писать цикл, гонять кросс-валидацию по каждому значению, собирать метрики и строить графики. Но это рутинщина, которую придётся повторять из проекта в проект.
Yellowbrick — библиотека визуализации для машинного обучения, которая как раз решает эту задачу.
ValidationCurve показывает, где всё ок, где начинает разваливаться и что стоит поправить, без шаблонного кода и кривых графиков.
Как читать график из примера:
• Метрика на train (синяя) остаётся высокой при росте max_depth
• Метрика на validation (зелёная) падает после глубины 4
• Разрыв между ними растёт — модель запоминает тренировочные данные и плохо обобщает на новых
Что делать: выбрать max_depth примерно 3–4, пока валидационная метрика на пике и разрыв ещё не ушёл в космос.
Полная статья: https://bit.ly/44CBQ62
Запустите этот код: https://bit.ly/48RanQp
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10❤1
Media is too big
VIEW IN TELEGRAM
Открытый релиз первой единой библиотеки для роутинга LLM
☝️ Встречайте LLMRouter
16+ роутеров в одном фреймворке. Хватит заново переписывать научные работы про роутинг. Просто ставите:
и сразу поднимаете SOTA-роутинг под свои задачи.
Быстрый старт с LLMRouter
Код: [https://github.com/ulab-uiuc/LLMRouter]
Проект: [https://ulab-uiuc.github.io/LLMRouter/]
Зачем это нужно?
Зачем платить тарифы GPT-5 за вопрос уровня "какая погода"
Умный роутинг экономит деньги
Простой запрос → дешёвая модель
Сложный запрос → мощная модель
Экономия 30–50% на инференсе без потери качества
Арсенал из 16+ роутеров
Переключение между SOTA-методами одной флажковой настройкой. Закрыты все подходы:
» Single-Round: от классических ML (KNN, SVM) до нейросетевых (Graph, Contrastive)
» Multi-Round: RL-логика, которая думает перед маршрутизацией
» Agentic: разбивает задачу на шаги и раскидывает по моделям
» Personalized: адаптируется под историю пользователя и его запросы
Полный набор из коробки:
Не просто код, а вся инфраструктура.
» Единый CLI: обучение, инференс и чат на любом роутере
» UI на Gradio: интерактивный интерфейс сразу доступен
» Бенчмарки: 11 готовых датасетов + пайплайн генерации данных
От ресерча по роутингу LLM до продакшена за пару минут
👉 @DataSciencegx
16+ роутеров в одном фреймворке. Хватит заново переписывать научные работы про роутинг. Просто ставите:
pip install llmrouter-lib
и сразу поднимаете SOTA-роутинг под свои задачи.
Быстрый старт с LLMRouter
Код: [https://github.com/ulab-uiuc/LLMRouter]
Проект: [https://ulab-uiuc.github.io/LLMRouter/]
Зачем это нужно?
Зачем платить тарифы GPT-5 за вопрос уровня "какая погода"
Умный роутинг экономит деньги
Простой запрос → дешёвая модель
Сложный запрос → мощная модель
Экономия 30–50% на инференсе без потери качества
Арсенал из 16+ роутеров
Переключение между SOTA-методами одной флажковой настройкой. Закрыты все подходы:
» Single-Round: от классических ML (KNN, SVM) до нейросетевых (Graph, Contrastive)
» Multi-Round: RL-логика, которая думает перед маршрутизацией
» Agentic: разбивает задачу на шаги и раскидывает по моделям
» Personalized: адаптируется под историю пользователя и его запросы
Полный набор из коробки:
Не просто код, а вся инфраструктура.
» Единый CLI: обучение, инференс и чат на любом роутере
» UI на Gradio: интерактивный интерфейс сразу доступен
» Бенчмарки: 11 готовых датасетов + пайплайн генерации данных
От ресерча по роутингу LLM до продакшена за пару минут
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5