🏛️ AI Engineer World's Fair 2026 ⏱️ 01:00:47 (3647 сек) 👤 Ignacio Martinez (Oracle) ▶️ YouTube

Total Recall: Память агентов и Harness Engineering

Главный тезис: Языковая модель — это застывшее ядро рассуждений, которое мы арендуем у лабораторий. Её веса зафиксированы. Всё, чем разработчик реально управляет и что превращает недетерминированную генерацию в предсказуемый и надежный результат, находится в обвязке (Harness). Агент — это модель плюс обвязка.

Постер воркшопа Total Recall: Agent Memory and Harness Engineering
Смотреть оригинал на YouTube ⏱️ [13:43] Перейти сразу к 7 слоям Harness
7
архитектурных слоев инженерной обвязки
O(N²)
масштабирование матрицы внимания при Context Rot
Краткая выжимка

TL;DR: Ключевые идеи доклада за 2 минуты

Что нужно знать о современной архитектуре автономных систем и долгосрочной памяти LLM-агентов.

01 / ФОРМУЛА

Агент = Модель + Обвязка

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

02 / ХРАНИЛИЩЕ

Файлы против Баз данных

Файлы привычны моделям, но лишены транзакционности. При параллельной работе 8–32 агентов возникает перезапись данных. Сообщество обходит это через Git Worktrees, хотя реляционные БД решили проблему изоляции (ACID) десятилетия назад. Оптимален гибрид: кратковременная память в файлах, долговременная — в БД.

03 / ДЕГРАДАЦИЯ

Окно контекста не решит проблему

Увеличение контекста до миллионов токенов ведёт к Context Rot: внимание рассеивается квадратично. Решение — упреждающее сжатие (Compaction в Context Card) и выгрузка тяжелых артефактов (Offloading) наружу с сохранением указателей.

04 / UMWELT

Семантический слой как линза

По концепции биолога Якоба фон Икскюля каждый организм видит мир только через доступные рецепторы. Для агента семантический слой — это линза, выражающая скрытое невысказанное знание (tribal knowledge) компании: схемы, бизнес-правила и термины.

05 / ИЕРАРХИЯ

Навыки живут на системном уровне

Инструкции системного уровня обладают наивысшим приоритетом над сообщениями пользователя и выдачей инструментов. Продвижение навыков (Skill Promotion) позволяет дистиллировать успешные многочасовые трассы в постоянные регламенты SKILL.md.

06 / НАДЁЖНОСТЬ

Переменная гистерезиса (Hysteresis)

Обвязка должна задавать точный лимит терпения (обычно 8–12 шагов цикла для frontier-моделей). Если задача не сходится, агент не должен тратить бесконечный бюджет на галлюцинации: управление передается человеку или маршрутизатору моделей.

Архитектурный фундамент

Компоненты надёжной системы: Модель против Обвязки

Разделение зон ответственности между фронтирной моделью и инженерным каркасом.

📐 Архитектурная схема Концепт разделения
Agent = Model + Harness 🧠 Reasoning rented weights 💾 Mem 🛠️ Tools 👁️ Percep Вывод Игнасио Мартинеса: «Рассуждения вы арендуете у лабораторий. Память, инструменты и восприятие — это ваша собственная обвязка».

Модель недетерминирована по своей природе: один и тот же запрос может дать разные результаты. Задача инженерии обвязки — превратить недетерминированное ядро в воспроизводимую и надёжную бизнес-систему.

📺 Как это показано в видео Слайд автора
Кадр 13:54: Components of a Dependable System 🔍 клик для зума
Слайд [13:54]: Архитектурная формула надёжности. Граница ответственности чётко разделяет арендуемый интеллектуальный сервис (frontier AI labs) и программную инфраструктуру разработчика.
Анатомия обвязки

7 слоев Harness Engineering

Пошаговый разбор инженерных слоев, превращающих модель в автономного агента.

СЛОЙ 1

Model Layer (Слой модели)

Застывшее ядро рассуждений (Frozen reasoning core). Сетевой вызов чат-модели взаимозаменяем через стандартные протоколы (OpenAI/Anthropic API). Внутренние модели (эмбеддеры и кросс-энкодеры) работают внутри СУБД на ONNX.

СЛОЙ 2

Storage Layer (Слой хранения)

Физическое размещение памяти: файлы и базы данных. Файлы удобны модели для дозаписи, но не обладают транзакционностью. База данных даёт ACID, изоляцию параллельных агентов и векторные индексы.

СЛОЙ 3

Encoding & Retrieval (Поиск)

Превращение сырого текста в смысловые векторы и извлечение срезов. Двухэтапный пайплайн: bi-encoder для первичного векторного отбора (top-k через HNSW) + cross-encoder для точного переранжирования (rerank).

СЛОЙ 4

Memory Layer (Слой памяти)

Четыре типа памяти агента: эпизодическая (события и тред), семантическая (факты и правила), процедурная (проверенные навыки) и рабочая (кратковременный scratchpad / to-do лист).

СЛОЙ 5

Semantic Layer (Семантический слой)

Обучение агента смыслу корпоративных данных (Umwelt). Задает структуру таблиц, негласные правила компании и скрытый словарь терминов, который не проговаривается явно в диалоге.

СЛОЙ 6

Agent Loop (Агентный цикл)

Типизированный граф управления всеми верхними слоями. Реализует цикл Observe → Reason → Act. Обеспечивает отказоустойчивость: ошибки выполнения инструментов перехватываются и возвращаются модели на доработку.

СЛОЙ 7

Context Engineering (Контекст)

Поддержание высокой плотности и актуальности окна контекста по мере роста сессии. Предотвращение деградации внимания через динамическое сжатие (Compaction) и выгрузку данных (Offloading).

Инфраструктура памяти

Дилемма хранения: Файлы против Баз данных

Почему современные AI-инженеры переизобретают транзакции через Git Worktrees.

📁 Файловый подход

  • Плюсы: Идеально соответствует природе модели; низкий порог входа; POSIX-совместимость с любой ОС; дешёвая дозапись логов (append-only).
  • Критический изъян: Полное отсутствие транзакционной согласованности (ACID).
  • Проблема мультиагентности: Если 8–32 агента одновременно пишут в файл (например, обновляют общий счётчик или файл состояния), они неизбежно перезаписывают результаты друг друга.
  • Костыль индустрии: Использование отдельных git worktree на каждого агента с последующим ручным слиянием (merge) в main.

🗄️ Базы данных (СУБД)

  • Плюсы: ACID-транзакции; строгая изоляция параллельных процессов; Row Level Security (RLS) по пользователям/агентам; встроенные векторные индексы (HNSW); надёжные бэкапы.
  • Почему про них забыли: Считаются избыточно структурированными для неструктурированных рассуждений модели.
  • Решение Oracle: DBFS (Database File System) и конвергентная БД — файлы и векторные коллекции живут внутри СУБД с транзакционной гарантией.
  • Гибридная стратегия: Кратковременная рабочая память живёт в файлах, а проверенные знания и профили продвигаются в БД.
Архитектурный тупик

Фрагментация данных в RAG и Data Sync Logic

Как разделение хранилищ на 5 узкоспециализированных систем создаёт ад синхронизации.

⚠️ Проблема: Зверинец баз данных Data Ingestion Sprawl

Типичный RAG-пайплайн разбивает документы на куски и раскладывает их по отдельным хранилищам:

  • Реляционные данные: PostgreSQL / MySQL
  • Метаданные документов: JSON в MongoDB / DocumentDB
  • Векторы эмбеддингов: Pinecone / Milvus / Qdrant
  • Связи и сущности: Графовая база (Neo4j)
  • Географические метки: Пространственные индексы (GIS)

Результат: Инженер тратит 80% времени на логику синхронизации данных (Data Sync Logic), решая проблемы расхождения версий, двойной записи и множественных точек отказа.

📺 Как это показано в видео Слайд [23:26]
Кадр 23:26: Data Ingestion Sprawl 🔍 клик для зума
Слайд [23:26]: Подробная схема Data Ingestion. Показан путь от сырых источников через чанкинг и PII Redaction к 4 типам представлений и 5 разным базам данных. Вся нагрузка ложится на гигантский блок Data Sync Logic.
Математика внимания

Context Rot и квадратичное внимание: почему окно контекста не спасёт

Почему гигантское окно контекста — это ловушка, снижающая качество рассуждений.

📈 График: Взрыв токенов против плоского контекста Compaction vs Blow-up
180k 120k 60k 0 1 3 5 7 9 10 Итерации агента (turns) Без обвязки (~170k) С Context Card (~15k)

Суть проблемы: Матрица внимания трансформера сопоставляет каждый токен со всеми остальными. При росте окна матрица растёт по закону $O(N^2)$ по строкам и столбцам. Внимание размывается, модель пропускает ключевые факты и начинает галлюцинировать.

📺 Как это показано в видео Слайд [28:24]
Кадр 28:24: A bigger window is not the fix 🔍 клик для зума
Слайд [28:24]: «Attention, not capacity, is the budget». Две стратегии решения: Compaction (сжатие истории в Context Card до достижения лимита) и Offloading (вынос данных наружу с оставлением указателя).
Структура промпта

Context Card: что агент реально читает на каждом шаге

Стандартизованный XML-формат контекстной карточки из пакета Oracle Agent Memory (OAMP).

📝 Формат карточки контекста OAMP Schema
<context_card> <topics>q3 growth · outdoors · business risk</topics> <summary> Reviewing Q3 performance. Growth driven by Outdoors, +12% QoQ. User now asks the main risk to that driver. </summary> <relevant_information> <fact>Outdoors drove Q3, +12% QoQ</fact> <preference>prefers metric units</preference> <memory>risk question asked, unanswered</memory> </relevant_information> <recent_messages> user: What drove Q3 growth? assistant: The Outdoors category, +12% QoQ. user: What is the main risk to that? </recent_messages> </context_card>

Карточка собирается в один вызов библиотеки oracleagentmemory и передается в модель в начале каждого хода вместо раздутой истории из сотен реплик.

📺 Как это показано в видео Слайд [32:16]
Кадр 32:16: What the agent actually reads 🔍 клик для зума
Слайд [32:16]: Разбор назначения каждого блока: <topics> — семантический отпечаток треда для маршрутизации; <summary> — сжатие текущего намерения; <relevant_information> — факты, предпочтения и незакрытые вопросы; <recent_messages> — локальная связность диалога.
Философия восприятия

Umwelt и семантический слой: невысказанное знание

Как заложить в агента контекст, который коллеги понимают без слов.

БИОЛОГИЧЕСКАЯ АНАЛОГИЯ

Концепция Umwelt (Якоб фон Икскюль)

Биолог Якоб фон Икскюль показал, что каждое живое существо воспринимает реальность исключительно через призму своих органов чувств. Клещ реагирует только на температуру и масляную кислоту; летучая мышь — на эхолокацию. У агента нет человеческих чувств — его Umwelt формируется исключительно тем, что мы положили в семантический слой.

TRIBAL KNOWLEDGE

Скрытый корпоративный словарь

Когда опытные инженеры общаются между собой, они опускают 80% контекста: названия сервисов, логику связей таблиц, форматы дат и регламенты развертывания. Для нового стажёра всё это нужно расписывать подробно. Семантический слой фиксирует именно это институциональное знание (tribal knowledge) компании.

ПАТТЕРН TOOLBOX

Масштабирование инструментов через HNSW

Что делать, если в корпоративной системе тысячи инструментов? Их нельзя засунуть в один промпт. Решение: векторный граф HNSW, где описания функций дополняются моделью (LLM-enhanced docstrings) для высокой сепарабельности при семантическом поиске нужного инструмента на каждом шаге.

Непрерывное обучение

Продвижение навыков (Skill Promotion) и Иерархия инструкций

Как агент обучается на собственном опыте без дообучения весов модели.

📺 Как это показано в видео Слайд [39:08]
Кадр 39:08: Continual learning branches three ways 🔍 клик для зума
Слайд [39:08]: Три ветви непрерывного обучения: Weight space (параметрическая память: LoRA, fine-tuning — дорого, риск катастрофического забывания); Latent space (пространство эмбеддингов); Context/token space (непараметрическая память — добавление токенов, аудит, доступно каждому).
📺 Как это показано в видео Слайд [41:01]
Кадр 41:01: Skills sit in the system layer 🔍 клик для зума
Слайд [41:01]: Иерархия инструкций (Instruction Hierarchy). Навыки (SKILL.md) помещаются на уровень System/Platform — высший авторитет перед инструкциями разработчика, пользователя и выдачей инструментов.

Механизм Skill Promotion (Продвижение навыка)

Если решение нестандартной инженерной задачи заняло у агента 4 часа и потребовало 15 шагов проб и ошибок, обвязка запускает процесс дистилляции. Успешная траектория очищается от тупиковых путей и оформляется в обновленный файл SKILL.md. Старая версия навыка выводится из эксплуатации. При следующем столкновении с похожей задачей агент решает её по готовому регламенту за 2 минуты.

Навигация по таймкодам

Хронологический таймлайн доклада

Ключевые вехи воркшопа с прямыми ссылками на видео и миниатюрами слайдов.

00:00
Открытие воркшопа и подготовка окружения

Игнасио Мартинес открывает воркшоп, рассказывает о регистрации домена за два дня до события и просит участников не запрашивать самые мощные инстансы GitHub Codespaces, так как оплачивает их из своего кармана.

03:22
Что участники должны вынести из воркшопа

Главная цель занятия: понять практическую инженерию памяти агентов и научиться собирать собственную минимальную обвязку, не зависящую от конкретного поставщика моделей.

04:02
Застывшее ядро рассуждений (The Frozen Core)

Веса модели зафиксированы. Мы не можем дообучать их во время выполнения запроса без миллионов долларов и кластеров GPU. Поэтому всё обучение в реальном времени переносится в обвязку.

06:09
5 слоев агентного стека и коммодитизация

Стек состоит из Application, Data, Model, Infrastructure и Compute. Все слои, кроме Data, стремительно коммодитизируются крупными облачными провайдерами. Слой данных и памяти — главная точка контроля инженера.

13:54
Формула надёжности: Agent = Model + Harness

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

Превью кадра 13:54
📺 Слайд: Components of a Dependable System 13:54 · Разделение зон ответственности
16:26
Файлы против Баз данных и парадокс Worktrees

Разбор максимализма: почему разработчики предпочитают файлы для промптов, но спотыкаются о параллельную запись нескольких агентов. Зал отвечает: изоляция через Git Worktrees. Мартинес напоминает, что базы данных решили проблему ACID ещё 40 лет назад.

23:26
Data Sprawl: разрастание специализированных баз в RAG

Демонстрация переусложненных пайплайнов извлечения, где текст, векторы, метаданные и графы раскладываются по разным СУБД. Решение Oracle: единая конвергентная база данных (Converged Database) с общим интерфейсом запросов.

Превью кадра 23:26
📺 Слайд: Data Ingestion Pipeline & Sprawl 23:26 · Data Sync Logic overhead
28:24
Context Rot: почему окно контекста не лечит забывание

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

Превью кадра 28:24
📺 Слайд: График Context Rot & Compaction 28:24 · Квадратичный взрыв внимания
32:16
Что агент реально читает: Context Card

Представление реальной структуры Context Card из библиотеки Oracle Agent Memory Package. Разбор блоков topics, summary, relevant_information и recent_messages.

Превью кадра 32:16
📺 Слайд: Context Card XML Structure 32:16 · Реальный промпт агента
34:23
Umwelt и семантический слой: невысказанное знание

Введение понятия Umwelt биолога Якоба фон Икскюля. Семантический слой фиксирует институциональное знание компании — скрытый словарь, не проговариваемый инженерами вслух.

39:08
Три пространства памяти: Weight, Latent, Token space

Сравнение трех подходов к непрерывному обучению: параметрическая память (веса), репрезентативная память (эмбеддинги) и непараметрическая контекстная память (токены). Обоснование фокуса на контекстном пространстве.

Превью кадра 39:08
📺 Слайд: Continual Learning Branches 39:08 · Три типа хранилища знаний
41:01
Skills sit in the system layer: Иерархия инструкций

Почему навыки и спецификации SKILL.md должны загружаться в системный промпт. Принцип приоритета инструкций: System > Developer > User > Tool outputs.

Превью кадра 41:01
📺 Слайд: Instruction Hierarchy 41:01 · Приоритет системного уровня
51:58
Вопрос из зала: тысячи инструментов и Toolbox Pattern

Ответ на проблему тысяч API в enterprise: использование HNSW-графов в базе данных и автоматическая генерация LLM-обогащенных описаний функций для повышения различимости (separability) векторов инструментов.

56:41
Переменная гистерезиса: настройка терпения обвязки

Введение концепции переменной гистерезиса (Hysteresis variable). Определение оптимального лимита шагов (8–12 вызовов для Grok 4.1 Fast Reasoning) до принудительного прерывания цикла и эскалации.

Прямая речь

Ключевые цитаты спикера

Формулировки, определяющие инженерный подход к памяти и архитектуре агентов.

«A language model is the frozen part of the reasoning. The weights do not change, you rent them, and you have no say in what you are offered. Everything you control lives in the layer around it.»
Игнасио Мартинес ⏱️ [04:02]
«Attention, not capacity, is the budget, so you compact ahead of the limit, not at it. A bigger window is not the fix.»
Игнасио Мартинес ⏱️ [28:24]
«If you work with 8, 16, 32 agents at a time, files cannot be modified concurrently. The room's answer is work trees. Databases solved that 40 years ago with ACID, and everyone forgot.»
Игнасио Мартинес ⏱️ [18:30]
«An agent is an autonomous entity whose cognitive functions are powered by an LLM for reasoning, augmented by a database or files for memory, extended through tools, and grounded in inputs.»
Игнасио Мартинес ⏱️ [13:54]
План внедрения

Рекомендации для AI-инженера: Чек-лист проектирования обвязки

Практические шаги по построению отказоустойчивой обвязки для ваших агентов.