Если вы когда-нибудь переносили сложную математику из Python-кода в документацию, Javadoc или научную статью, вы знаете эту боль. Верстать трёхэтажные формулы на LaTeX руками — это отдельный вид мазохизма, где одна забытая } отнимает двадцать минут на дебаг.
Пакет latexify делает ровно одну вещь: транслирует Python-функции в математические формулы LaTeX.
Это не очередная LLM-обертка. Библиотека работает максимально детерминированно: она использует встроенный модуль ast, чтобы распарсить абстрактное синтаксическое дерево вашей Python-функции, и по жестким правилам транслирует узлы AST прямо в LaTeX-разметку.
Что она умеет на уровне AST: 🟢Распознает и конвертирует модули math и numpy (math.sqrt станет \sqrt, math.gamma — \Gamma). 🟢Разворачивает if/elif/else в красивые кусочно-заданные функции (piecewise). 🟢 Рендерит NumPy-матрицы. 🟢 Понимает операции над множествами (&, | превращаются в \cap, \cup, если включить флаг use_set_symbols=True). 🟢 Умеет генерировать не только формулы, но и псевдокод (декоратор @latexify.algorithmic).
В Jupyter Notebook или Colab декоратор @latexify.function автоматически заставит ячейку отрендерить красивую формулу. Не нужно даже вызывать print().
Работает далеко не идеально, данные выдергивает с искажениями, да и описание не прямо "вау", но почитать забавно.
Меня вот уже почти заменили, 74/100 🌝
Частичка моего IDENTITY ID:
- Name: Олег Булыгин - Creature: едтеховый дата-шаман из России: корпоративный менеджер, которого жизнь аккуратно протащила через системную аналитику в data science и посадила объяснять это другим в Нетологии, Практикуме, Skillfactory и Mathshub. Выносливый преподаватель-консультант, который слишком много раз видел, как люди путают BI, ML и "нам просто нужен дашборд". - Vibe: Друг на ужине, который спокойно разложит ваш модный ИИ-проект на три скучных таблицы, один KPI и неприятный вопрос: кто это вообще будет поддерживать? Это человек, который пережил достаточно созвонов с джунами и продактами, чтобы разговаривать без иллюзий. Не романтик науки, а менеджерский реалист, научившийся говорить на языке данных лучше половины тех, кто сразу назвал себя AI-экспертом.
И SOUL:
Я дата-сайентист и аналитик, но в той скучной, полезной версии, где нужно не impress investors, а объяснить, почему у вас грязные данные, сломанная постановка задачи и лишние ожидания от слова "AI". Существенную часть карьеры я снова и снова переводил технические вещи на человеческий язык для людей, которые вчера хотели "войти в айти", а сегодня уже хотят в продакшен. Я не загадочный визионер. Я тот человек, который вежливо портит настроение реальностью и обычно оказывается прав чуть раньше, чем всем хотелось бы.
## Vibe - Сухой, ироничный, терпеливый до определённого предела. - Объясняю сложное без позы преподавателя-спасителя. - Склонен сначала структурировать хаос, потом уже вдохновлять. - Чуть мрачноватый реалист: лучше неприятная ясность, чем красивая ерунда.
Почему ваш ИИ-агент пишет мусор, а у Карпаты — работает 🤖
Я уже писал о посте Андрея Карпаты, где он утверждает, что он перешел от 80% ручного написания кода к 80% делегирования ИИ-агентам.
И чтобы заставить нейронки работать лучше, он собрал репозиторий с набором правил для агентных инструментов.
Там формализованы такие принципы:
1️⃣ Think Before Coding Запрет на фантазии. Если LLM не уверена — она обязана остановиться и спросить. Никаких скрытых допущений и выбора формата "по умолчанию".
2️⃣ Simplicity First LLM обожают дизайн-паттерны ради паттернов. Правило простое: просили скидку — напиши функцию на 5 строк. Не надо строить AbstractDiscountStrategyFactory с заделом на будущее, которого не будет.
3️⃣ Surgical Changes Хирургическая точность. Трогай только то, что сказали. Нейронке строго запрещается форматировать соседние функции, дописывать type hints там, где их не было, и переписывать чужие комменты просто потому, что ей так захотелось.
4️⃣ Goal-Driven Execution Хватит писать промпты в духе "сделай так, чтобы работало". Нужно переходить от императивного управления к декларативному и ставить четкие критерии хорошего результата: "Сначала напиши тест, который воспроизводит баг. Убедись, что он падает. Почини код. Убедись, что тест прошел".
Интегрируйте .md-правила Карпаты в свои проекты ☕️
Из каждого утюга сейчас вещают, что если ты не обучаешь LLM с миллиардами параметров, то ты не в профессии, а линейные регрессии пора сдать в музей.
А теперь открываем аналитику от airesearchtrends по инструментам, которые реально используются в современных ML-пайплайнах: 🟢 Classical ML — 47% 🟢 Neural Networks — 36% 🟢 Ensemble Methods — 26% 🟢 Clustering — 4%
Почти половина реального ресерча и продакшена строится на классическом ML. Потому что там, где нужна интерпретируемость, предсказуемость и надежность, раздутые нейронки проигрывают грамотно настроенной модели. А вот массовый рынок почему-то решил, что если ты научился дергать API OpenAI, то математику под капотом можно уже не понимать. Спойлер: нельзя.
Собственно, именно поэтому следующий сезон Мастер-группы мы посвящаем фундаментальной базе. Переходим от анализа данных к построению моделей.
🗓 Стартуем 25 апреля. Эфиры будут проходить по субботам в 11:00 по МСК.
Что в меню: 🟢 5 эфиров: от самых азов машинного обучения до построения и валидации базовых линейных моделей. 🟢 1 эфир — командная практика. Хватит просто смотреть лекции. Будете в командах решать практическую задачу, а потом мы все вместе будем разбирать результаты (и смотреть, кто где накосячил). 🟢 Записи и мои файлы с кодом, естественно, остаются у вас. Забираете и используете как шпаргалку в работе.
Так как Телеграму в последнее время, к сожалению, плохо, то закрытая группа будет в ВК.
🐍 Важный фильтр: Это не курс "с нуля до сеньора за два дня". Вы уже должны адекватно писать на Python, крутить датафреймы в pandas и уметь в базовый анализ данных (всё то, что мы выстрадали на первых двух сезонах).
👉 Кому актуально запрыгнуть в этот вагон и узнать условия, пишите в личку: @obulygin91
Файнтюн мультимодальных LLM для тех, у кого нет кластера A100 🦥
Ребята из Unsloth выкатили бету Unsloth Studio— локальной UI-тулзы для инференса и тренировки (Mac, Windows, Linux). Кроме того, они полноценно реализовали поддержку Gemma 4 от Google. И не просто обернули API, а руками починили критичные баги оригинальной архитектуры.
Чтобы завести LoRA для Gemma 4 E2B, вам хватит 8 Гб VRAM. Версия E4B влезет в 10 Гб. Если замахнулись на 31B — готовьте 22 Гб под QLoRA.
И да, если у вас вместо нормальной видеокарты затычка или макбук без MLX, Unsloth собрали готовый Colab-ноутбук. Процесс максимально простой: 1️⃣Запускаем блоки и сам Unsloth Studio. 2️⃣ Выбираем модель, датасет . Просто закидываете свой датасет, выбираете нужные слои для обучения (у Gemma 4 теперь можно отдельно тюнить text, vision и audio слои) и идете пить кофе. 3️⃣ Жмём «Start Training» и наблюдаем за прогрессом в реальном времени. 4️⃣Всё готово - обычную и файн-тюн версию модели можно сразу сравнить в чате.
Выкатывается очередной чат-бот техподдержки, юзер распинается о своей проблеме, а на третьем сообщении нейронка спрашивает: «Как вас зовут и чем могу помочь?».
Причина банальна: LLM по своей природе stateless. «Память» модели — это просто архитектурный костыль, и обычно проблему решают «в лоб»: берут LangChain, собирают все предыдущие сообщения и кидают в промпт.
🗓 Сегодня в 18:00 по мск в «Точке Сборки» будем разбирать архитектуру памяти для LLM-ассистентов и методы адекватного управления контекстом.
Необходимая база для понимания материала: 🔵Базовый синтаксис Python (классы, словари, функции). 🔵Понимание работы HTTP API и базовой концепции LLM (что такое промпт и токен). 🔵 Поверхностное знакомство с абстракциями LangChain.
Git пора на пенсию? Кофаундер GitHub пилит ему замену на $17M 💸
Узнали про ресурсы для изучения Git в предыдущем посте, а тут Скотт Чакон, человек, который полтора десятилетия назад продал всему миру концепцию Pull Requests через GitHub, теперь утверждает, что наши текущие процессы разработки — это костыль на костыле. Под это дело его проект GitButler поднял $17M Series A от a16z.
Да, Git создавался Линусом 20 лет назад для перекидывания патчей в email-рассылках ядра Linux, а мы до сих пор натягиваем эту концепцию на trunk-based разработку, CI/CD и стаи ИИ-агентов.
Главный тезис Чакона: сейчас написать код — вообще не проблема. Проблема — это интеграция, ревью и удержание контекста. Мы заставляем нейросетки и людей взаимодействовать через инструмент, спроектированный для одного разработчика с одним терминалом и линейным флоу. Контекст теряется между таск-трекерами, чатами и коммитами.
GitButler обещает новую инфраструктуру с такими фишками: 🔵Stacked branches из коробки. Зависимые ветки (когда одна фича опирается на другую не влитую) больше не будут доставлять боль. 🔵Адекватный мультитаскинг. Можно пилить несколько фич в одном рабочем дереве без постоянного жонглирования git stash и переключения веток. 🔵Раннее обнаружение конфликтов. Инфраструктура знает, что делают ваши коллеги прямо сейчас, а не когда вы оба пытаетесь протолкнуть изменения в main. 🔵Контекст для агентов. Сохранение метаданных, промптов и обсуждений прямо в истории изменений.
Подборка инструментов для изучения Git 🧠 У большинства сценарий использования git сводится к add-commit-push. Шаг в сторону — и все, паника. Держите ресурсы, которые помогут разобраться во всём на нормальном уровне 👇
1️⃣ Чёрт побери, Git!?! и Ёбаный Git!!! На сайте (их 2, чуть более и чуть менее приличная версии) изложены несколько распространенных операций, с которыми вам скорее всего придется столкнуться при работе с Git. Например: – где у git волшебная машина времени!?! – я закоммитил и вспомнил, что кое-что забыл! – я случайно закоммитил что-то в мастер, хотя это должно быть в новой ветке!
2️⃣ Oh, my Git! Опенсорс карточная (буквально!) игра. По ходу выполнения команд визуализируется внутренняя Git-репозиториев в режиме реального времени, что позволяет сразу увидеть результаты своих действий. А для более продвинутых и встроенный терминал есть, если все команды хочется писать в нём.
3️⃣ Pro Git Довольно обширная обучающая книга о Git от Скотта Шакона — активного участника разработки самого Git и GitHub. Материал довольно обширный, от самых азов до довольно специфических тем. При этом книга написана довольно простым языком, содержит массу примеров и иллюстраций. И есть перевод на русский!
4️⃣ Git - the simple guide Очень лаконичное, простое и понятное руководство по базовым операциям в Git. Только самые нужные операций, никаких путешествий в дебри. Хороший вариант для самых начинающих, кому надо очень быстро освоить азы.
5️⃣ Learn Git Branching Интерактивный учебник по командам Git с лаконичной теорией и последущим её закреплением на упражнениях с пошаговыми инструкциями. Плавное нарастание сложности и хороший визуал для демонстрации состояния репозиториев и их веток в комплекте.
6️⃣ GitByBit Главная фишка: ты учишься прямо в VS Code или Cursor. Никаких «сферических репозиториев в вакууме» — курс интегрируется в твой редактор, проверяет реальные команды в терминале и бьет по рукам, если ты косячишь. Идеально для наработки мышечной памяти. База — бесплатно.
7️⃣ GitHowTo Пошаговый курс на русском языке. Проводит за руку от установки до базовых операций. Минимум воды, максимум «сделай это руками прямо сейчас».
Признавайтесь, кто из вас хоть раз удалял папку с проектом и клонировал репозиторий заново, просто чтобы не разбираться с конфликтами в мерже? 🌝
В пятницу мы обсуждали плоскую карту PyPI. Но сегодня 12 апреля, так что давайте смотреть на пакетные менеджеры в масштабах космоса.
Проект Software Galaxies представляет разные пакетные менеджеры (в том числе PyPI) в виде 3D-галактики 🌌
Галактики устроены так: ✨Каждая точка (звезда) – это пакет. 🌟Чем больше звезда, тем больше других пакетов от неё зависит. Сразу видно "тяжеловесов" экосистемы. 🕸Пакеты не абы как раскиданы. Силовой граф старается сгруппировать рядом те пакеты, которые часто используются вместе или зависят друг от друга. Получаются такие "кластеры" или "туманности". А линии показывают прямые зависимости.
Если врубить все линии зависимостей, то получится красивый, но абсолютно нечитаемый "волосатый монстр" 🤯 (серьёзно, так в доках и пишут!). Поэтому по дефолту видно только самые короткие связи – между близко расположенными пакетами. Но можно и все включить (клавиша L), если хочется ужаснуться полюбоваться.
Самое прикольное – это интерактивность. Можно буквально летать по этой 3D-галактике пакетов: На компе: Мышь + клавиатура (WASD + Q/E для стрейфа/вращения, R/F для взлёта/падения, Shift для ускорения). Особенно рекомендуют режим "следования за курсором" (включается пробелом) – прям космический корабль! 🖱⌨️ На смартфоне: Один палец – лететь вперёд, два пальца – назад, поворот устройства – смотреть по сторонам. 📱
Можно найти конкретный пакет по имени (поддерживаются регулярки). Правда, авторы честно предупреждают, что на ооочень больших графах (миллионы пакетов) поиск может тупить.