Свой цикл против LangChain и LlamaIndex

Вы написали петлю, инструменты и сжатие истории — примерно 150 строк питона. Теперь честный разговор, который обещали с первой недели: в мире существуют фреймворки, где всё это уже есть. Зачем тогда мы тратили модуль? И когда всё-таки стоит брать готовое?

Что вы теперь знаете изнутри

Ваш devbuddy умеет: петлю с текстовым протоколом, диспетчер инструментов с песочницей, бюджет истории, стоп-условия, детерминированные тесты через ScriptedLLM. Это не «игрушечная версия агента» — это агент. В нём нет только двух вещей: причудливых интеграций на все случаи жизни и чужих решений, принятых за вас.

Последнее — не достоинство и не недостаток, а цена вопроса. Чужой код — это чужие дефолты: какой промпт уходит модели, как режется история, что происходит при ошибке инструмента, сколько ретраев. Пока вы понимаете каждую строку своей петли, поведение агента для вас предсказуемо. Когда поведение начинает диктовать changelog библиотеки — вы это почувствуете в 3 часа ночи рядом с красным CI.

Что дают фреймворки

LangChain (и его собратья — LlamaIndex, CrewAI, smolagents и десяток других) решают четыре реальные проблемы:

Интеграции. Готовые обвязки к GitHub, Slack, базам, поиску — «инструмент» в две строки. Ваш tools.py писался час; обвязка к GraphQL-API незнакомого сервиса руками — день.

Стандартные сценарии. RAG («поищи по базе и ответь с цитатами») в фреймворке собирается из кубиков. Это самый накатанный паттерн индустрии, и спорить с его готовностью незачем.

Обвязка цикла. Ретраи, параллельные вызовы инструментов, трассировка шагов — то, что в devbuddy появится по мере надобности, там есть сразу.

Экосистема. Примеры, доки, ответы на Stack Overflow на ваши вопросы.

Чего они не дают — понимания. Фреймворк, поставленный человеком, не написавшим петлю, превращается в чёрный ящик: когда агент ведёт себя странно, отлаживать нечего, можно только переставлять кубики и молиться. Отсюда и порядок курса: сначала свой цикл, потом (может быть) кубики.

Когда что брать

Мой ориентир, не догма:

  • Учиться — свой цикл. Вы здесь.

  • Прототип на выходные — фреймворк: скорость сборки важнее контроля.

  • Стандартный сценарий (RAG-бот по базе знаний) — фреймворк, но с пониманием, что внутри.

  • Прод с деньгами и доверием команды — свой цикл или фреймворк, вписанный в ваши тесты: ключевое не «чем», а «предсказуемо ли и тестируемо ли».

Курс до конца идёт на своём цикле — по двум причинам. Первая уже названа: учебная. Вторая практическая: ревьюер из следующих модулей должен работать у каждого студента на любом OpenAI-совместимом провайдере, включая локальные модели, где поддержка tool calling у фреймворков бывает капризной. Сто строк, которые зависят только от вас, — самая переносимая вещь в мире.

Если после курса возьмёте LangChain — вы будете тем редким пользователем, который читает его исходники с пониманием, а не с трепетом. Это и была цель модуля.

Что запомнить:

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

  • Чужие дефолты — чужое поведение: промпты, история, ретраи где-то решены за вас.

  • Ориентир: учимся — свой; прототип — фреймворк; прод — что угодно тестируемое и предсказуемое.

  • devbuddy до конца курса остаётся на своём цикле: переносимость и контроль.

Модуль закрывается проектом: петля, инструменты и память собираются в «Разведчика» — агента, который отвечает на вопросы по вашему репозиторию.

  • theory icon

    Петля агента: решить → сделать → посмотреть

    5 мин

  • homework icon

    Домашка: агент с одним инструментом

    3 мин

  • quiz icon

    Квиз: Петля агента: решить → сделать → посмотреть

    6 мин

  • theory icon

    Инструменты: руки агента

    5 мин

  • homework icon

    Домашка: набор разведчика

    3 мин

  • quiz icon

    Квиз: Инструменты: руки агента

    5 мин

  • theory icon

    Память и контекст: что тащим, что выбрасываем

    5 мин

  • homework icon

    Домашка: сжатие истории

    3 мин

  • quiz icon

    Квиз: Память и контекст: что тащим, что выбрасываем

    6 мин

  • theory icon

    Свой цикл против LangChain и LlamaIndex

    4 мин

  • homework icon

    HARD-задача: прятки в репозитории

    3 мин

  • quiz icon

    Квиз: Свой цикл против LangChain и LlamaIndex

    5 мин

  • project icon

    Проект «Разведчик»: агент, который знает ваш репозиторий

    3 мин

🎯
Тренажёр собеседованияЗакрепите знания перед интервью