От RAG до автономных агентов: лекция Stanford CME295 о будущем LLM

Stanford Online 72,6 тыс. 1 ч 49 мин 5 мин 18.11.2025
Главное

Седьмая лекция курса Stanford CME295 посвящена переходу от изолированных языковых моделей к системам, активно взаимодействующим с внешним миром. Преподаватели Стэнфорда рассматривают три ключевых технологии: Retrieval Augmented Generation (RAG), вызов инструментов (Tool Calling) и создание автономных агентов. Основная цель — преодолеть ограничения «замороженных» знаний нейросетей и научить их выполнять сложные задачи в динамической среде.

🧠 Проблема «замороженных» знаний и концепция RAG 6:34

Основная проблема современных LLM заключается в том, что их знания ограничены датой отсечки обучающих данных (knowledge cutoff). Например, для модели GPT-5 (в контексте лекции) эта дата — 30 сентября 2024 года . Если спросить такую модель о событиях, произошедших позже, она либо признает свое неведение, либо галлюцинирует.

Афин (преподаватель курса) выделяет несколько причин, по которым простое дообучение (fine-tuning) для обновления знаний неэффективно:

По мнению лектора, даже при «безлимитном» контексте возникает проблема «иголки в стоге сена» (needle in a haystack). Тесты показывают, что LLM теряют точность, если нужный факт находится в середине длинного промпта . Кроме того, длинные промпты стоят дорого: при цене около $1 за миллион токенов затраты быстро растут .

Решением становится RAG (Retrieval Augmented Generation) — метод, при котором в промпт добавляется только самая релевантная информация, извлеченная из внешней базы данных в реальном времени .

🛠 Архитектура поиска: эмбеддинги и чанки 19:30

Процесс RAG состоит из трех этапов: поиск (Retrieve), дополнение (Augment) и генерация (Generate) . Ключевым этапом является эффективный поиск в базе знаний.

Для подготовки базы знаний документы разбиваются на «чанки» (chunks) — небольшие фрагменты текста. Афин называет типичные параметры для этой операции:

  1. Размер эмбеддинга: Обычно составляет около 1500 измерений .
  2. Размер чанка: Оптимально около 500 токенов, чтобы сохранить смысл, не перегружая память .
  3. Перекрытие (Overlap): Между чанками оставляют около 100 токенов, чтобы контекст не разрывался на границах .

Сам поиск проходит в две стадии :

📈 Метрики и продвинутые техники поиска 48:03

Для оценки качества работы поисковой системы в RAG лектор рекомендует использовать метрики, стандартные для поисковых систем и рекомендаций :

Афин также упоминает популярный бенчмарк MTEB (Massive Text Embedding Benchmark) для тестирования моделей эмбеддингов .

Среди продвинутых методов лектор выделяет HyDE (Hypothetical Document Embeddings). Вместо поиска по самому вопросу, LLM сначала генерирует «фиктивный» ответ, и уже по его эмбеддингу ищется реальный документ . Также важной техникой является контекстуализация чанков: к каждому фрагменту текста при поиске добавляется краткое саммари всего документа, чтобы модель понимала, о чем идет речь в отрыве от контекста .

Для экономии средств при частых вызовах лекторы советуют использовать Prompt Caching. Это позволяет не пересчитывать активации для повторяющихся префиксов промпта, что может снизить стоимость вычислений до 90% .

📞 Tool Calling: когда LLM начинает действовать 59:20

Переходя ко второй части лекции, Шервин (второй лектор) объясняет концепцию вызова инструментов (Tool Calling или Function Calling). Если RAG работает с неструктурированным текстом, то Tool Calling позволяет модели взаимодействовать со структурированными данными и API .

Процесс взаимодействия строится по схеме:

  1. Preamble: В промпт модели передается описание доступных функций (их имена, параметры и документация) без реализации .
  2. Execution: Если модель решает, что для ответа нужен инструмент, она выдает JSON с аргументами. Система выполняет этот код и возвращает результат модели .
  3. Response: Модель интерпретирует данные от API и выдает ответ пользователю на естественном языке .

Шервин утверждает, что обучение модели вызову инструментов можно проводить двумя путями: через классический SFT (Supervised Fine-Tuning) на парах «запрос-вызов» или через детальные инструкции в промпте . По мнению лектора, для современных мощных моделей предпочтительнее второй путь. Он советует не писать инструкции вручную, а попросить сильную модель (например, Claude или GPT) проанализировать ошибки текущей версии и итеративно улучшить объяснение правил работы с инструментом .

🤖 Агенты и фреймворк ReAct 1:32:05

Агент — это система, которая автономно преследует цель, используя циклы рассуждений и действий . В отличие от простого вызова инструментов, агенты работают итеративно.

Шервин подробно описывает классическую схему ReAct (Reason + Act) :

На примере холодного дома лектор показывает цикл работы агента: заметив жалобу «мишке холодно», агент сначала запрашивает температуру через API термостата (Observe), видит значение в 65°F (Plan) и принимает решение поднять её на 5 градусов (Act), после чего проверяет результат и закрывает цикл .

Для масштабирования таких систем индустрия движется к стандартизации. Лектор выделяет два важных протокола:

  1. MCP (Model Context Protocol): Разработан Anthropic для унификации того, как инструменты и ресурсы предоставляются моделям .
  2. Agent-to-Agent Protocol: Инициатива Google для организации общения между разными специализированными агентами .

🛡 Безопасность и риски автономности 1:42:19

С ростом возможностей агентов растут и риски. Шервин предупреждает о возможности кражи данных (exfiltration): если агент имеет доступ к паролям и инструменту отправки почты, злоумышленник может обманом заставить его переслать конфиденциальную информацию на внешний адрес .

В качестве примера реальной угрозы упоминается недавний отчет Anthropic о масштабной кибератаке, совершенной с помощью их модели Claude и её агентских способностей . (Anthropic опубликовала подробный разбор действий хакеров и мер защиты).

Для защиты рекомендуются:

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

💬 Цитаты

«Генерация кода стала дешевой, но суждение о том, правилен ли код и делает ли он то, что нужно — это самая сложная часть.»

«RAG — это способ дополнить промпт только релевантной информацией, превращая стог сена в одну иголку.»

👥 Спикеры
📚 Упомянутые книги
🔗 Упомянутые сайты и проекты
📖 Термины
Knowledge Cutoff
Дата, после которой обучающие данные модели заканчиваются, и она не знает о событиях мира.
NDCG
Метрика качества ранжирования, учитывающая позицию и релевантность документа.
ReAct
Метод построения работы агентов через циклы рассуждения (Reason) и действия (Act).
Prompt Caching
Технология сохранения промежуточных вычислений для повторяющихся частей запроса для снижения цены.
📊 Цифры
🗓 Хронология
  1. Сентябрь 2024 Knowledge cutoff для модели GPT-5.
  2. Начало 2025 Релиз протокола Agent-to-Agent от Google.
  3. Вчера (относительно лекции) Отчет Anthropic о кибератаке с использованием Claude.
⚖️ Другая сторона
Искусственный интеллект Stanford Online RAG Agentic LLMs MCP protocol ReAct framework