Forwarded from Yandex for Developers
Мы спросили об этом у Данилы Урванцева, инженера по информационной безопасности в Городских сервисах Яндекса. В карточках собрали его мысли про точки входа в сообщество, интересные задачи, OSCP и профессиональный рост.
Ссылки, упомянутые в карточках:
Подписывайтесь:
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Заметки LLM-энтузиаста
Media is too big
VIEW IN TELEGRAM
🧠 Контекст-инжиниринг для AI-агентов: 5 ключевых принципов
На выходных посмотрел очень интересный видео-подкаст с участием Лэнса Мартина из LangChain (автора самой популярной открытой версии Deep Research), в котором обсуждались вопросы управления контекстом в агентах - искусство давать LLM ровно тот контекст, который нужен для следующего агентного шага 🎯 Не обошлось и без сравнения моно- и мульти-агентных подходов (см. заметку)
Ниже привожу краткие тезисы, а на скрепке подготовил видео-нарезку основных тезисов с субтитрами на русском языке (8 минут).
Более полная интерактивная версия конспекта доступна по ссылке (а классический вариант конспекта здесь)
🔧 Пять столпов контекст-инжиниринга:
1️⃣ Offloading (Выгрузка)
• Не тащить всё в контекст — сохранять данные отдельно
• В историю записывать краткие сводки с возможностью подгрузки
• Экономия токенов и денег 💰
2️⃣ Context Isolation (Изоляция)
• Мультиагенты хороши для "чтения", один агент — для "письма"
• Параллельные задачи изолировать, связанные — объединять
3️⃣ Retrieval (Извлечение)
• llm.txt с качественными описаниями часто лучше сложного RAG
• Агентный поиск без индексации может превосходить векторный поиск
• Ключ успеха — хорошие описания файлов 📝
4️⃣ Reducing Context (Сжатие)
• Суммаризация на границах инструментов
• Баланс между экономией токенов и потерей информации
• Сохранять возможность восстановить исходник
5️⃣ Caching (Кеширование)
• Снижает стоимость и задержки
• Не решает проблему "context rot" от длинного контекста ⚠️
🔍 Context rot — деградация качества ответов LLM при слишком длинном контексте. Модель "теряется" в большом объёме информации и хуже понимает, что важно для текущей задачи 📉
💡 Практические инсайты:
• Работа с памятью через человека — пользователь явно сохраняет важное, система учится предпочтениям
• Горький урок AI — используй структурный подход сегодня, но будь готов отказаться от него завтра
• MCP-стандарты снижают когнитивную нагрузку
⚡️ Золотые правила:
• Избегай наивного накопления всего контекста
• Качественная суммаризация лучше агрессивного сжатия
• Простые решения часто превосходят сложные
• Фреймворки должны легко "разбираться"
Философия: "Добавляй структуру, чтобы работало сегодня, и будь готов отказаться от нее завтра" 🚀
P.S. мне также очень понравились ссылки на дополнительные материалы в описании к ролику, некоторы из них я включил в эту заметку
@llm_notes
#context_engineering #agents #langchain #langgraph #llm_optimization
На выходных посмотрел очень интересный видео-подкаст с участием Лэнса Мартина из LangChain (автора самой популярной открытой версии Deep Research), в котором обсуждались вопросы управления контекстом в агентах - искусство давать LLM ровно тот контекст, который нужен для следующего агентного шага 🎯 Не обошлось и без сравнения моно- и мульти-агентных подходов (см. заметку)
Ниже привожу краткие тезисы, а на скрепке подготовил видео-нарезку основных тезисов с субтитрами на русском языке (8 минут).
Более полная интерактивная версия конспекта доступна по ссылке (а классический вариант конспекта здесь)
🔧 Пять столпов контекст-инжиниринга:
1️⃣ Offloading (Выгрузка)
• Не тащить всё в контекст — сохранять данные отдельно
• В историю записывать краткие сводки с возможностью подгрузки
• Экономия токенов и денег 💰
2️⃣ Context Isolation (Изоляция)
• Мультиагенты хороши для "чтения", один агент — для "письма"
• Параллельные задачи изолировать, связанные — объединять
3️⃣ Retrieval (Извлечение)
• llm.txt с качественными описаниями часто лучше сложного RAG
• Агентный поиск без индексации может превосходить векторный поиск
• Ключ успеха — хорошие описания файлов 📝
4️⃣ Reducing Context (Сжатие)
• Суммаризация на границах инструментов
• Баланс между экономией токенов и потерей информации
• Сохранять возможность восстановить исходник
5️⃣ Caching (Кеширование)
• Снижает стоимость и задержки
• Не решает проблему "context rot" от длинного контекста ⚠️
🔍 Context rot — деградация качества ответов LLM при слишком длинном контексте. Модель "теряется" в большом объёме информации и хуже понимает, что важно для текущей задачи 📉
💡 Практические инсайты:
• Работа с памятью через человека — пользователь явно сохраняет важное, система учится предпочтениям
• Горький урок AI — используй структурный подход сегодня, но будь готов отказаться от него завтра
• MCP-стандарты снижают когнитивную нагрузку
⚡️ Золотые правила:
• Избегай наивного накопления всего контекста
• Качественная суммаризация лучше агрессивного сжатия
• Простые решения часто превосходят сложные
• Фреймворки должны легко "разбираться"
Философия: "Добавляй структуру, чтобы работало сегодня, и будь готов отказаться от нее завтра" 🚀
P.S. мне также очень понравились ссылки на дополнительные материалы в описании к ролику, некоторы из них я включил в эту заметку
@llm_notes
#context_engineering #agents #langchain #langgraph #llm_optimization
Forwarded from ML Baldini • Nikita Boyandin (Nikita Boyandin)
Пособесимся?)🥵
Пока ваш любимый матрос галер пытается понять как из 24 часов сделать 40, чтобы успеть все сделать, ему предложили пособесится в AI стартапэксортницей в Дубайск part-time . На самом деле, middle ml разраб позиция с 2 годами опыта.
Условия🍟
Полный remote в Дубай или Грузию, команда из 40 человек, делают что-то по безопасности с помощью ИИ. По зп-5к вечно зеленых, ну и какие то опционы при очень хорошей работе(блиииииин, без печенек в офисе).
Задачи на собесе🪥
Поскольку интервью было вводное, ни кодинга, ни MLSD, не было. Первый вопрос был классическим: Чем LSTM отличается от трансформера? Я ответил просто - механизмом внимания и немного добавил архитектуры. В фото более полноценный ответ.
А вот вторая задача оказалась нетривиальной: требовалось классифицировать тип приложения по зашифрованному трафику, проходящему через VPN. Сначала я рассматривал два подхода — либо извлекать признаки и обучать классические модели машинного обучения, либо пытаться решать задачу end-to-end с помощью трансформеров. На практике оказалось, что решение проще: достаточно было применить нейронную сеть и позволить ей автоматически выявлять зависимости в представлении трафика — в результате модель на сыром или слегка предобработанном представлении трафика успешно выделяла информативные паттерны для классификации.
Что думаю?🤨
Очень интересно понимать свою вилку в стартапах и что я могу получить в валюте, так что если вам зайдет такой формат и будет много реакций и комментов, то я расчехлю свой OPEN_TO_WORK, а пока буду оптимизировать лишний час между работой, учебой и туалетом💗
Пока ваш любимый матрос галер пытается понять как из 24 часов сделать 40, чтобы успеть все сделать, ему предложили пособесится в AI стартап
Условия
Полный remote в Дубай или Грузию, команда из 40 человек, делают что-то по безопасности с помощью ИИ. По зп-5к вечно зеленых, ну и какие то опционы при очень хорошей работе(блиииииин, без печенек в офисе).
Задачи на собесе
Поскольку интервью было вводное, ни кодинга, ни MLSD, не было. Первый вопрос был классическим: Чем LSTM отличается от трансформера? Я ответил просто - механизмом внимания и немного добавил архитектуры. В фото более полноценный ответ.
А вот вторая задача оказалась нетривиальной: требовалось классифицировать тип приложения по зашифрованному трафику, проходящему через VPN. Сначала я рассматривал два подхода — либо извлекать признаки и обучать классические модели машинного обучения, либо пытаться решать задачу end-to-end с помощью трансформеров. На практике оказалось, что решение проще: достаточно было применить нейронную сеть и позволить ей автоматически выявлять зависимости в представлении трафика — в результате модель на сыром или слегка предобработанном представлении трафика успешно выделяла информативные паттерны для классификации.
Что думаю?
Очень интересно понимать свою вилку в стартапах и что я могу получить в валюте, так что если вам зайдет такой формат и будет много реакций и комментов, то я расчехлю свой OPEN_TO_WORK, а пока буду оптимизировать лишний час между работой, учебой и туалетом
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from ML Baldini • Nikita Boyandin (Nikita Boyandin)
Материалы к стажкам по машинному обучению😀
В этом посте я попытался собрать все учебные материалы, по которым я когда либо учился и которые как-то мне помогли в получении работы и опыта.💪
Статистика
Курсы Карпова на stepik
Часть1, Часть2
Книжка "Статистика и котики"
Основы Python
"Поколение Python": курс для начинающих
Хендбук по Python от Яндекса
"Поколение Python": курс для продвинутых
"Поколение Python": ООП (нужен далее для глубокого обучения)
Библиотеки по Python
Курс kaggle по Pandas
Курс по matplotlib и seaborn
Основные алгоритмы по машинному обучению
Учебник по машинному обучению
Intro to Machine Learning
Intermediate Machine Learning
Машинное обучение(полноценные курсы)
Deep Learning School
Введение в соревновательный Data Science
Курс вышки по мл
SQL
SQLbolt
Курс sql на степик
Sql academy
Курс Карпова по sql
Алгоритмы
Основы алгоритмов
Курс ИТМО по алгоритмам на codeforces
Алгоритмы и структуры данных от ИТМО
A/B и uplift тестирование
Курс по a/b тестированию от вышки
Курс по uplift-моделированию
MLOps (для стажки на ml-engineer могут спросить)
Окончательная подготовка перед собеседованием
Конспекты по каждому модулю от karpov.courses
Надеюсь на вашу поддержку и очень верю, что этот пост для вас будет очень полезен💗
В этом посте я попытался собрать все учебные материалы, по которым я когда либо учился и которые как-то мне помогли в получении работы и опыта.
Статистика
Курсы Карпова на stepik
Часть1, Часть2
Книжка "Статистика и котики"
Основы Python
"Поколение Python": курс для начинающих
Хендбук по Python от Яндекса
"Поколение Python": курс для продвинутых
"Поколение Python": ООП (нужен далее для глубокого обучения)
Библиотеки по Python
Курс kaggle по Pandas
Курс по matplotlib и seaborn
Основные алгоритмы по машинному обучению
Учебник по машинному обучению
Intro to Machine Learning
Intermediate Machine Learning
Машинное обучение(полноценные курсы)
Deep Learning School
Введение в соревновательный Data Science
Курс вышки по мл
SQL
SQLbolt
Курс sql на степик
Sql academy
Курс Карпова по sql
Алгоритмы
Основы алгоритмов
Курс ИТМО по алгоритмам на codeforces
Алгоритмы и структуры данных от ИТМО
A/B и uplift тестирование
Курс по a/b тестированию от вышки
Курс по uplift-моделированию
MLOps (для стажки на ml-engineer могут спросить)
Окончательная подготовка перед собеседованием
Конспекты по каждому модулю от karpov.courses
Надеюсь на вашу поддержку и очень верю, что этот пост для вас будет очень полезен
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Заметки LLM-энтузиаста
ByteRover 2.0: Git для памяти ИИ-агентов и 15 новых MCP-инструментов 🚀
Команда ByteRover выпустила обновление версии 2.0 своего решения для управления памятью ИИ-агентов по разработке. Систему можно использовать со всеми популярными coding-агентами: Claude Code, Cursor, Codex, GitHub Copilot и т.д. (см. скрин)
Сейчас, например, очень популярна комбинация Codex (планирование и основной кодинг с GPT-5 Codex в режиме High-Reasoning) + Claude Code (Sonnet 4.0 или Opus 4.1 для devops и mcp части кодинга) и данный инструмент позволяет "шарить" контекст между Codex и Claude Code, что очень удобно.
Ключевые нововведения:
🔄 Git для памяти ИИ
• Версионный контроль для памяти агентов
• Полная история изменений с временными метками
• Возможность отката к предыдущим версиям
• Функция форкинга баз памяти для экспериментов
• Детекция конфликтов в памяти при дублировании
• Совместная работа команды с отслеживанием авторства изменений
📝 Context Composer
Новый инструмент для создания контекста агентов:
• Загрузка документов, PDF, изображений
• Чат-интерфейс для взаимодействия с агентом
• Парсинг файлов в переиспользуемые воспоминания
• Интеграция со Slack, Jira, Figma, Google Drive
🛠 15 специализированных MCP-инструментов:
1️⃣ Knowledge Management - хранение паттернов кода и знаний с релевантным скорингом
2️⃣ Onboarding Tools - генерация и обновление справочников проектов
3️⃣ Plan Management - структурированные планы реализации с отслеживанием задач
4️⃣ Module Management - документирование модулей кодовой базы с техническими деталями
5️⃣ Reflection Tools - самооценка качества контекста агентом
Простая настройка ⚙️
• Создание workspace памяти
• Установка расширения в Cursor, Windsurf или другие AI IDE
• Добавление ключа workspace и email
• Автоматическое сохранение и восстановление памяти между сессиями
Альтернатива: Cipher 🔓
Для тех, кто предпочитает open-source решения, доступен Cipher - открытый слой памяти для coding-агентов (про другой oss вариант на базе OpenMemory MCP писал в заметке)
Возможности Cipher:
• Единый слой памяти для всех coding-агентов
• Интеграция через MCP сервер
• Поддержка OpenAI, Anthropic, OpenRouter
• Векторные базы: Milvus, Quadrant
• Ручное создание детализированных воспоминаний для проектов
• Автоматическое извлечение спецификаций и правил проекта
Настройка Cipher:
• Клонирование репозитория с GitHub
• Конфигурация в cipher.yml (MCP серверы, LLM провайдер, API ключи)
• Запуск в MCP режиме (default или aggregator)
• Интеграция с Cursor, Claude Code и другими IDE
Cipher решает ту же проблему потери контекста, но предоставляет полный контроль над данными и возможность кастомизации под специфические нужды команды.
🔗 ByteRover: https://www.byterover.dev/
🔗 Cipher GitHub: https://github.com/cipherdevs/cipher
@llm_notes
#byterover #cipher #memory #agents #mcp
Команда ByteRover выпустила обновление версии 2.0 своего решения для управления памятью ИИ-агентов по разработке. Систему можно использовать со всеми популярными coding-агентами: Claude Code, Cursor, Codex, GitHub Copilot и т.д. (см. скрин)
Сейчас, например, очень популярна комбинация Codex (планирование и основной кодинг с GPT-5 Codex в режиме High-Reasoning) + Claude Code (Sonnet 4.0 или Opus 4.1 для devops и mcp части кодинга) и данный инструмент позволяет "шарить" контекст между Codex и Claude Code, что очень удобно.
Ключевые нововведения:
🔄 Git для памяти ИИ
• Версионный контроль для памяти агентов
• Полная история изменений с временными метками
• Возможность отката к предыдущим версиям
• Функция форкинга баз памяти для экспериментов
• Детекция конфликтов в памяти при дублировании
• Совместная работа команды с отслеживанием авторства изменений
📝 Context Composer
Новый инструмент для создания контекста агентов:
• Загрузка документов, PDF, изображений
• Чат-интерфейс для взаимодействия с агентом
• Парсинг файлов в переиспользуемые воспоминания
• Интеграция со Slack, Jira, Figma, Google Drive
🛠 15 специализированных MCP-инструментов:
1️⃣ Knowledge Management - хранение паттернов кода и знаний с релевантным скорингом
2️⃣ Onboarding Tools - генерация и обновление справочников проектов
3️⃣ Plan Management - структурированные планы реализации с отслеживанием задач
4️⃣ Module Management - документирование модулей кодовой базы с техническими деталями
5️⃣ Reflection Tools - самооценка качества контекста агентом
Простая настройка ⚙️
• Создание workspace памяти
• Установка расширения в Cursor, Windsurf или другие AI IDE
• Добавление ключа workspace и email
• Автоматическое сохранение и восстановление памяти между сессиями
Альтернатива: Cipher 🔓
Для тех, кто предпочитает open-source решения, доступен Cipher - открытый слой памяти для coding-агентов (про другой oss вариант на базе OpenMemory MCP писал в заметке)
Возможности Cipher:
• Единый слой памяти для всех coding-агентов
• Интеграция через MCP сервер
• Поддержка OpenAI, Anthropic, OpenRouter
• Векторные базы: Milvus, Quadrant
• Ручное создание детализированных воспоминаний для проектов
• Автоматическое извлечение спецификаций и правил проекта
Настройка Cipher:
• Клонирование репозитория с GitHub
• Конфигурация в cipher.yml (MCP серверы, LLM провайдер, API ключи)
• Запуск в MCP режиме (default или aggregator)
• Интеграция с Cursor, Claude Code и другими IDE
Cipher решает ту же проблему потери контекста, но предоставляет полный контроль над данными и возможность кастомизации под специфические нужды команды.
🔗 ByteRover: https://www.byterover.dev/
🔗 Cipher GitHub: https://github.com/cipherdevs/cipher
@llm_notes
#byterover #cipher #memory #agents #mcp
Forwarded from Всеволод Викулин | AI разбор
Как сделать LLM лучше OpenAI, потратив всего 8 долларов
У вас есть невероятное преимущество по сравнению с Сэмом Альтманом. Сэм делает AI, чтобы сразу решать все задачи мира. Вам же нужно решить только одну конкретную задачу. И это позволит вам его обыграть. Сегодня разберем, как это можно сделать с помощью дообучения.
Статья, как дешево и сердито дообучать опенсорс
В статье коллеги взяли 31 NLP задач, в которых есть обучающая и тестовая выборки. Взяли 10 опенсорс LLM. Дообучили эти модели под все задачи, получили 310 новых LLM.
В итоге эти модели оказались в среднем на 10% лучше, чем GPT-4. При этом по числу параметров они в 1000 раз меньше. Обучали модели с помощью LORA, но это неважно, аналогичный эффект получился бы с чем угодно.
Такое дообучение еще и очень дешевое, потому что обновляет не модель целиком, а обучает только адаптер. Одна модель авторам обходилась примерно в 8 долларов.
Как это возможно?
Самое важное разобраться, в каких задачах авторам было легко побить GPT-4, а в каких не получилось.
Невозможно победить на широких задачах. На задачах, где надо одновременно много всего знать и уметь. Например, чтобы решать бенчмарк MMLU, своеобразный ЕГЭ для LLM, надо знать кучу фактов. Или для генерации кода надо знать синтаксис и уметь им оперировать для кучи различных ситуаций.
Наоборот, просто победить, когда задача узкая. Нам нужно сфокусировать модель на одной конкретной зависимости с помощью дообучения. Например, легко научить находить токсичные комментарии в тексте. Или отвечать на вопросы клиентов об одном конкретном продукте. И чем уже ваша задача, чем она конкретнее, тем проще будет сфокусироваться.
Сэм Альтман хорошо понял законы масштабирования. Теперь он поднимает раунды, чтобы делать мега-модели, которые сразу хороши для всех.
Но вы то не все.
Алгоритм, как правильно дообучать опенсорс
1) Проверьте, точно ли вам не нравится жить на промпте к чужой модели. Например, дорого или не хочется отправлять данные в чужую API.
2) Подумайте, широкая или узкая ваша задача. Если широкая — не надо ничего обучать, берите просто самый большой опенсорс и не думайте. Если к узким — можно дообучать. Как выбрать размер модели написано в моем гайде.
3) Первая итерация — Supervised Fine Tuning (SFT). Модель учится воспроизводить правильный ответ. Возможно, этого хватит и дальше лезть не придется.
4) Вторая итерация — Reinforcement Learning (RL). Модель награждают за хорошие ответы и ругают за плохие.
Дообучать можно адаптеры (LORA и ее друзья) или полным дообучением. В зависимости от количества данных.
Важно: дообучение это рисковая операция, можно легко поднять галлюцинации. Вызывайте профессионалов.
Будьте рациональны.
Не надо дообучать модель в любом LLM-проекте. Проверьте, чаще всего все прекрасно работает на промпте + RAG. Тогда сильно сэкономите нервы.
Но и не надо тратить деньги за широту знаний, которая вам особо не нужна. Особенно, если у вас их не много.
У вас есть невероятное преимущество по сравнению с Сэмом Альтманом. Сэм делает AI, чтобы сразу решать все задачи мира. Вам же нужно решить только одну конкретную задачу. И это позволит вам его обыграть. Сегодня разберем, как это можно сделать с помощью дообучения.
Статья, как дешево и сердито дообучать опенсорс
В статье коллеги взяли 31 NLP задач, в которых есть обучающая и тестовая выборки. Взяли 10 опенсорс LLM. Дообучили эти модели под все задачи, получили 310 новых LLM.
В итоге эти модели оказались в среднем на 10% лучше, чем GPT-4. При этом по числу параметров они в 1000 раз меньше. Обучали модели с помощью LORA, но это неважно, аналогичный эффект получился бы с чем угодно.
Такое дообучение еще и очень дешевое, потому что обновляет не модель целиком, а обучает только адаптер. Одна модель авторам обходилась примерно в 8 долларов.
Как это возможно?
Самое важное разобраться, в каких задачах авторам было легко побить GPT-4, а в каких не получилось.
Невозможно победить на широких задачах. На задачах, где надо одновременно много всего знать и уметь. Например, чтобы решать бенчмарк MMLU, своеобразный ЕГЭ для LLM, надо знать кучу фактов. Или для генерации кода надо знать синтаксис и уметь им оперировать для кучи различных ситуаций.
Наоборот, просто победить, когда задача узкая. Нам нужно сфокусировать модель на одной конкретной зависимости с помощью дообучения. Например, легко научить находить токсичные комментарии в тексте. Или отвечать на вопросы клиентов об одном конкретном продукте. И чем уже ваша задача, чем она конкретнее, тем проще будет сфокусироваться.
Сэм Альтман хорошо понял законы масштабирования. Теперь он поднимает раунды, чтобы делать мега-модели, которые сразу хороши для всех.
Но вы то не все.
Алгоритм, как правильно дообучать опенсорс
1) Проверьте, точно ли вам не нравится жить на промпте к чужой модели. Например, дорого или не хочется отправлять данные в чужую API.
2) Подумайте, широкая или узкая ваша задача. Если широкая — не надо ничего обучать, берите просто самый большой опенсорс и не думайте. Если к узким — можно дообучать. Как выбрать размер модели написано в моем гайде.
3) Первая итерация — Supervised Fine Tuning (SFT). Модель учится воспроизводить правильный ответ. Возможно, этого хватит и дальше лезть не придется.
4) Вторая итерация — Reinforcement Learning (RL). Модель награждают за хорошие ответы и ругают за плохие.
Дообучать можно адаптеры (LORA и ее друзья) или полным дообучением. В зависимости от количества данных.
Важно: дообучение это рисковая операция, можно легко поднять галлюцинации. Вызывайте профессионалов.
Будьте рациональны.
Не надо дообучать модель в любом LLM-проекте. Проверьте, чаще всего все прекрасно работает на промпте + RAG. Тогда сильно сэкономите нервы.
Но и не надо тратить деньги за широту знаний, которая вам особо не нужна. Особенно, если у вас их не много.