Из одного большого фреймворка — в экосистему специализированных библиотек. Рассмотрим NeMo от NVIDIA
NeMo по умолчанию воспринимается как фреймворк для обучения LLM, мультимодальных и speech-моделей, а теперь NVIDIA делает ставку на модульную архитектуру (из-за монолитности там было тяжело что-то найти, да и контейнер разросся). Реструктуризация анонсирована официально, исходный репозиторий NeMo 2.0 теперь сфокусирован на speech-компонентах, а остальное выносится в отдельные библиотеки. Как следствие — чудные открытия, которыми я поделюсь!
Теперь NeMo — это набор отдельных проектов. Самые интересные (имхо) ☝️:
🥹 NeMo AutoModel — распределённое обучение LLM/VLM с Day-0 поддержкой моделей с HF (без конвертации, с сохранением исходного формата чекпоинта).
🥹 NeMo Megatron-Bridge — обучение и файнтюнинг больших моделей на параллелизме Megatron-Core. Вместе с AutoModel и RL переехал с PyTorch Lightning на нативный PyTorch-цикл — техническая суть всей реструктуризации.
🥹 NeMo RL — SFT и RL (DPO, GRPO и другие современные методы постобучения), от одной GPU до тысяч, на Ray.
🥹 NeMo Gym — инфраструктура RL-окружений (унифицированные интерфейсы к разнородным средам и сбор роллаутов для обучения через NeMo RL).
🥹 NeMo Evaluator — вот здесь как раз бенчмарки и харнессы.
🥹 NeMo Guardrails — один из самых популярных опенсорсов для добавления guardrails и контроля поведения LLM.
🥹 NeMo Curator — подготовка и очистка данных. Data Designer — синтетика. Anonymizer — PII. Safe-Synthesizer — генерация безопасных синтетических датасетов. Небезопасные сами умеете 🤥
🥹 🥹 Switchyard — маршрутизация запросов между LLM, совместимость с API OpenAI и Anthropic + observability. Написан на Rust и разбит на крейты (server, libsy, protocol, translation), то есть роутинг можно встроить в своё приложение (без прокси). NVIDIA официально пометила старый blueprint LLM Router как deprecated в его пользу. Отдельная история, это цена трансляции протоколов. Если оставить для Claude-моделей format: openai вместо явного format: anthropic, теряется cache_control. Запрос проходит, но prompt caching молча не включается, и платишь полную цену за входные токены. Конфигурация, о которую легко споткнуться. Как будто весь пост можно посвятить только Switchyard.
🥹 labs-OO-Agents (NOOA) — самое чудное открытие. Ресеч! Агент — это обычный Python-объект. Поля = состояние, docstring = промпт, аннотации типов = контракты. Метод, тело которого состоит из ..., во время выполнения дописывается LLM-циклом; методы с обычным телом остаются детерминированным кодом. ИДея классная, есть статья.
🥹 NeMo Platform — то, что всё это сшивает (Inference Gateway, оценка и тюнинг агентов, NeMo Agent Toolkit для сборки, общая инфраструктура (Secrets, Files, Entity Store, Jobs)).
Что забирать сейчас?
Switchyard — если у тебя зоопарк провайдеров и хочется роутинг без Python-прокси. Guardrails — он и так давно в проде у многих. Gym + RL — если ты занимаешься постобучением, а не «GRPO по гайду с клодом, кими, чатом гпт в девине». Остальное — читать по мере надобности, благо теперь оно наконец разложено по полкам, а не свалено в один репозиторий на 138920 гигабайт. NOOA разберём отдельно?
Все!
😆
NeMo по умолчанию воспринимается как фреймворк для обучения LLM, мультимодальных и speech-моделей, а теперь NVIDIA делает ставку на модульную архитектуру (из-за монолитности там было тяжело что-то найти, да и контейнер разросся). Реструктуризация анонсирована официально, исходный репозиторий NeMo 2.0 теперь сфокусирован на speech-компонентах, а остальное выносится в отдельные библиотеки. Как следствие — чудные открытия, которыми я поделюсь!
Теперь NeMo — это набор отдельных проектов. Самые интересные (имхо) ☝️:
🥹 NeMo AutoModel — распределённое обучение LLM/VLM с Day-0 поддержкой моделей с HF (без конвертации, с сохранением исходного формата чекпоинта).
🥹 NeMo Megatron-Bridge — обучение и файнтюнинг больших моделей на параллелизме Megatron-Core. Вместе с AutoModel и RL переехал с PyTorch Lightning на нативный PyTorch-цикл — техническая суть всей реструктуризации.
🥹 NeMo RL — SFT и RL (DPO, GRPO и другие современные методы постобучения), от одной GPU до тысяч, на Ray.
🥹 NeMo Gym — инфраструктура RL-окружений (унифицированные интерфейсы к разнородным средам и сбор роллаутов для обучения через NeMo RL).
🥹 NeMo Evaluator — вот здесь как раз бенчмарки и харнессы.
🥹 NeMo Guardrails — один из самых популярных опенсорсов для добавления guardrails и контроля поведения LLM.
🥹 NeMo Curator — подготовка и очистка данных. Data Designer — синтетика. Anonymizer — PII. Safe-Synthesizer — генерация безопасных синтетических датасетов. Небезопасные сами умеете 🤥
🥹 🥹 Switchyard — маршрутизация запросов между LLM, совместимость с API OpenAI и Anthropic + observability. Написан на Rust и разбит на крейты (server, libsy, protocol, translation), то есть роутинг можно встроить в своё приложение (без прокси). NVIDIA официально пометила старый blueprint LLM Router как deprecated в его пользу. Отдельная история, это цена трансляции протоколов. Если оставить для Claude-моделей format: openai вместо явного format: anthropic, теряется cache_control. Запрос проходит, но prompt caching молча не включается, и платишь полную цену за входные токены. Конфигурация, о которую легко споткнуться. Как будто весь пост можно посвятить только Switchyard.
🥹 labs-OO-Agents (NOOA) — самое чудное открытие. Ресеч! Агент — это обычный Python-объект. Поля = состояние, docstring = промпт, аннотации типов = контракты. Метод, тело которого состоит из ..., во время выполнения дописывается LLM-циклом; методы с обычным телом остаются детерминированным кодом. ИДея классная, есть статья.
🥹 NeMo Platform — то, что всё это сшивает (Inference Gateway, оценка и тюнинг агентов, NeMo Agent Toolkit для сборки, общая инфраструктура (Secrets, Files, Entity Store, Jobs)).
Что забирать сейчас?
Switchyard — если у тебя зоопарк провайдеров и хочется роутинг без Python-прокси. Guardrails — он и так давно в проде у многих. Gym + RL — если ты занимаешься постобучением, а не «GRPO по гайду с клодом, кими, чатом гпт в девине». Остальное — читать по мере надобности, благо теперь оно наконец разложено по полкам, а не свалено в один репозиторий на 138920 гигабайт. NOOA разберём отдельно?
Все!
😆