Автор: Денис Матаков

  • Первый опыт с Claude Code: зачем мне консольный ИИ-ассистент разработчика

    Первый опыт с Claude Code: зачем мне консольный ИИ-ассистент разработчика

    Недавно подключил Claude Code и провёл с ним несколько часов в реальном проекте. Ниже — мой практический разбор: чем он отличается от Copilot и Cursor, где оказался сильнее, какие есть ограничения по тарифам и как это можно внедрять в команду. 

    Что это и чем отличается от привычных ассистентов в IDE

    Claude Code — не «ещё одна вкладка» в редакторе, а консольное приложение. Это одновременно минус и плюс. Минус — меньше «визуального» взаимодействия: не выделишь мышкой фрагмент, не перетащишь картинку. Плюс — независимость от конкретной IDE и даже от графической ОС: можно подключаться к любому серверу и работать через терминал с файлами, коммитами и проверками в реальном времени. Для конфигов на сервере это особенно удобно: формулируешь задачу по-человечески — получаешь результат, не ковыряясь в Vim или nano. 

    (далее…)
  • CTO без хаоса: создаем адаптивный плейбук за 7 шагов

    CTO без хаоса: создаем адаптивный плейбук за 7 шагов

    Когда технический директор приходит в компанию без базовых процессов, продукт превращается в череду хаотичных «подвигов». Чтобы вернуть предсказуемость, сначала наденьте шляпу директора по трансформации и выстройте фундамент.

    Что важно включить в адаптивный плейбук?

    • Спринты и ритуалы. Определяем продолжительность, частоту встреч и четкое расписание: планирование, ежедневные стендапы, ревью, ретро.
    • Метрики ценности. Фокус не на закрытых задачах, а на том, сколько пользы получает клиент.
    • Автономность команд. Полномочия + ответственность = скорость без микроменеджмента.
    • Прозрачность. Общий календарь релизов, открытые доски задач, видимые цели.
    • Устойчивая скорость. Откажитесь от «геройских» овертаймов — выигрыш в долгую даёт именно стабильный темп.
    • Постоянное улучшение. Каждая ретроспектива — не отчёт о неудачах, а план апгрейда процессов.
    • Живая документация. 24-страничный плейбук должен обновляться по эволюции команды, а не пылиться в Wiki.
    (далее…)
  • Как работает MCP: внешний разум для вашей LLM

    Как работает MCP: внешний разум для вашей LLM

    Когда мы говорим о современных языковых моделях вроде GPT или Claude, легко забыть, что всё, что они знают — это текст, который они когда-то прочитали. А значит, всё, чего они не знают, остаётся за пределами их внимания. И вот тут появляется MCP — Model Context Protocol. Это способ «расширить сознание» модели, подключив её к живым данным, инструментам и действиям.

    Эта статья отвечает на важные вопросы, которые возникают, когда ты впервые сталкиваешься с MCP:

    • Что именно он делает?
    • Чем он отличается от API?
    • Как модель узнаёт, какие инструменты есть?
    • Где лежат адреса, авторизация и прочее?
    • Можно ли через MCP совершать не только запросы, но и действия?
    (далее…)
  • Как я писал MVP с AI-ассистентами: опыт, грабли и тактика

    Как я писал MVP с AI-ассистентами: опыт, грабли и тактика

    Недавно я делал мобильное приложение на Flutter, с FastAPI на бэкенде и Streamlit для административной панели. Всё это — в рамках подхода “AI-first”, когда почти весь код пишется с помощью копайлот-ассистентов: Gemini, ChatGPT, Claude.

    И вот что я понял из такого долгосрочного программирования…


    Умные, но забывчивые

    Современные копайлот-ассистенты — это не команда, а стажёры. Они пишут быстро, но:

    • забывают, что делали в предыдущем файле;
    • не держат в голове структуру проекта;
    • путаются, если вы перескакиваете между фронтом, мобилкой и бэком.

    Мораль: не стоит надеяться, что AI вспомнит, как вы называли переменную три дня назад в другом микросервисе. Но выход есть.

    (далее…)
  • Как настроить мультиязычную встречу в Google Meet с автопереводом

    Как настроить мультиязычную встречу в Google Meet с автопереводом


    Команды становятся всё более интернациональными — участники говорят на английском, русском, французском, испанском и даже китайском. Но как провести созвон, если не все владеют одним общим языком? Удивительно, но Google Meet уже умеет помогать в таких ситуациях: автоматически распознавать речь и переводить её в субтитры.

    Звучит как магия, и — спойлер — работает это действительно хорошо. Особенно если на встрече используется два языка. Когда больше — потребуется чуть больше внимания к настройке, но и это вполне реально.


    Что нужно для работы

    Google Meet умеет автоперевод только в платных версиях (Google Workspace Business/Enterprise). Также потребуется:

    • компьютер (на мобильных устройствах есть ограничения),
    • браузер Google Chrome (он самый стабильный для этой функции),
    • и немного терпения на начальной настройке.
    (далее…)
  • Эпохи и переобучение: как понять, когда модель уже научилась

    Эпохи и переобучение: как понять, когда модель уже научилась

    При обучении моделей машинного обучения часто возникает вопрос: сколько эпох нужно? Когда модель уже «поняла» данные, а когда она начинает запоминать их слишком точно (то есть переобучаться)?

    В этой статье:

    • Что такое эпоха
    • Как понять, что модель переобучается
    • Сколько эпох нужно
    • Как выбрать и настроить обучение правильно

    Что такое эпоха

    Эпоха — это один полный проход по всему обучающему набору данных.

    Допустим, у вас есть 10 000 примеров, и вы обучаете модель с batch_size=100. Это значит, за одну эпоху модель увидит все примеры по 100 штук за раз — всего 100 шагов.

    Когда эпох несколько, модель повторно видит одни и те же данные, чтобы «отточить» предсказания.

    (далее…)
  • Обзор методов квантования языковых моделей: GPTQ, GGUF, QLoRA

    Обзор методов квантования языковых моделей: GPTQ, GGUF, QLoRA

    Большие языковые модели (LLM) часто требуют десятки гигабайт видеопамяти и мощные серверы для запуска и обучения. Квантование — это способ уменьшить объём модели и ускорить её работу, с минимальной потерей качества.

    В этой статье:

    • Что такое квантование
    • Какие есть методы: GPTQ, GGUF, QLoRA
    • Чем они отличаются
    • Когда и как их применять

    Что такое квантование

    Квантование — это перевод весов модели из 32-битного формата (float32) в более компактные форматы: float16, int8, int4 и т. д.

    Цель:

    • уменьшить размер модели (в 2–8 раз)
    • сократить использование VRAM
    • ускорить инференс

    Пример: модель в fp32 весит 13 ГБ, а в int4 — 3–4 ГБ.

    (далее…)
  • Базовая инфраструктура для запуска LLM: Triton, ONNX, TorchScript и другие

    Базовая инфраструктура для запуска LLM: Triton, ONNX, TorchScript и другие

    Когда модель готова, важно не только её обучить, но и запустить эффективно, особенно если она используется в проде. Большие языковые модели (LLM) требуют особого подхода к инференсу — и тут приходят на помощь оптимизированные форматы и инференс-серверы.


    Что нужно для продакшен-инференса

    • Высокая скорость обработки запросов
    • Эффективное использование GPU
    • Поддержка большого числа одновременных пользователей
    • Гибкость и переносимость модели

    Обычный pipeline() из Hugging Face удобен, но не масштабируется. Для продакшена нужны другие инструменты.

    (далее…)
  • Метрики оценки качества моделей

    Метрики оценки качества моделей

    Когда вы обучаете или используете модели машинного обучения и большие языковые модели (LLM), важно измерять их качество. Без метрик невозможно понять, стала ли модель лучше, хуже или осталась такой же.

    В этой статье мы рассмотрим:

    • Метрики для классификации
    • Метрики для генерации текста
    • Специальные бенчмарки для LLM
    • Как и когда их применять

    Классификация: accuracy, F1 и другие

    Если модель должна выбрать правильный вариант ответа (например, категорию объявления), используются классические метрики:

    • Accuracy — доля правильных ответов
    • Precision — точность (насколько предсказанные метки действительно верные)
    • Recall — полнота (насколько хорошо модель нашла все правильные ответы)
    • F1-score — среднее между precision и recall
    (далее…)
  • RAG: Ответы на основе поиска в базе знаний

    RAG: Ответы на основе поиска в базе знаний

    RAG (Retrieval-Augmented Generation) — это подход, при котором большая языковая модель (LLM) получает не только сам вопрос, но и дополнительную информацию из базы знаний. Модель не «вспоминает» ответ из своей памяти, а «читает» найденный текст и отвечает на основе него.


    Зачем нужен RAG

    LLM не знает ничего о ваших внутренних документах, продуктах или инструкциях. Она может галлюцинировать — выдумывать ответы.

    RAG позволяет использовать актуальные и точные данные:

    • Вы передаёте в модель текст, найденный по запросу
    • Модель отвечает с опорой на этот текст

    Как работает RAG

    1. Получаем вопрос от пользователя
    2. Кодируем его в вектор (эмбеддинг)
    3. Ищем похожие документы в базе (векторный поиск)
    4. Склеиваем найденные тексты и добавляем к вопросу
    5. Передаём всё это в LLM как prompt
    6. Модель отвечает
    (далее…)