---
title: "Почему AI-агентам нужна память за пределами векторного поиска"
seoTitle: "Векторный поиск vs граф знаний как память AI-агента"
description: "Векторный поиск находит похожий текст. Памяти агента нужно больше: что верно, когда верно и как факты связаны — четыре задачи, с которыми чистое embedding-хранилище не справится."
date: "2026-06-22"
author: "INITE Brain Team"
category: "Архитектура"
tags: ["RAG", "векторный поиск", "граф знаний", "память", "AI-агенты"]
directAnswer: "Векторный поиск достаёт куски текста по косинусной похожести. Памяти агента нужно больше: типизированные факты вместо кусков, ось времени (чтобы спросить, что было верно и когда), разрешение конфликтов вместо тихой перезаписи и настоящее удаление ради приватности. Слой графа добавляет эти четыре вещи; эмбеддинги остаются одним сигналом внутри него, а не всей системой."
definitionSentence: "Память агента — это постоянное запрашиваемое хранилище, которое AI-агент читает и пишет по ходу работы; чтобы ей можно было доверять, она должна хранить типизированные факты со временем и источником, а не просто текст, ранжированный по похожести."
faqs:
  - question: "Векторный поиск — это плохо?"
    answer: "Нет — он отлично делает одно: находит текст, семантически близкий к запросу. Ошибка в том, чтобы считать этот один сигнал полной памятью. В слое графа эмбеддинги — одна нога retrieval рядом с keyword-поиском, обходом графа и reranking. Ты сохраняешь recall векторов и добавляешь структуру, которой им не хватает."
  - question: "Что граф знаний умеет, а векторное хранилище — нет?"
    answer: "Четыре вещи: хранить типизированные факты «субъект-предикат-объект» вместо непрозрачных кусков; отвечать на запросы со временем (что было верно в марте); разрешать конфликты, когда два источника спорят, а не давать последней записи молча победить; и удалять сущность по-настоящему, каскадом по фактам, рёбрам и эмбеддингам. Каждое — это возможность, а не настройка."
  - question: "Нужно ли выбирать между эмбеддингами и графом?"
    answer: "Нет. Правильная схема — граф фактов с привязанными к ним эмбеддингами. Retrieval смешивает векторную похожесть с keyword-совпадениями (BM25), расширяется по рёбрам графа, гоняет personalized PageRank и переранжирует. Эмбеддинги дают recall; граф даёт точность, структуру и жизненный цикл."
  - question: "Когда чистого векторного поиска достаточно?"
    answer: "Когда нужно только поднимать релевантные пассажи и никогда не требуется знать, когда факт был верен, мирить противоречия или удалять данные пользователя по запросу. Как только появляется что-то из этого — а для агента, который помнит людей, оно появляется быстро, — нужна структура, которую даёт граф."
---

## Единственная задача, которую векторный поиск делает хорошо

Закодировать запрос, закодировать документы, вернуть ближайших соседей. Для «найди пассажи про X» это трудно побить. Проблема не в технике — в том, что ей пытаются закрыть слишком многое. Команда берёт векторное хранилище как *память* агента, а потом задаёт ему вопросы, под которые оно не строилось.

## Четыре вопроса, на которые эмбеддинги не отвечают

**«Что верно *сейчас*?»** Векторное хранилище вернёт самое похожее, даже если оно устарело. Нет понятия «факт замещён» — есть только «текст рядом».

**«Что было верно в марте?»** Нет оси времени. Кусок, написанный год назад, и кусок, написанный сегодня, ранжируются одинаково. Память без времени — это просто куча.

**«Два источника спорят — кто прав?»** Переэмбеддинг затирает. Новый вектор молча заменяет старый. Ни скоринга, ни «вот тут противоречие», ни записи о том, что спор вообще был.

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

## Решение — структура, а не модель побольше

Ответ не в лучшей embedding-модели. Он в том, чтобы придать фактам форму:

- **Типизированные факты** — `(Acme, plan, growth)` вместо абзаца, где упомянут тариф.
- **Время** — каждый факт знает, когда был верен и когда ты о нём узнал.
- **Источник и конфликт** — конкурирующие утверждения получают оценку, а спорные помечаются, а не затираются.
- **Рёбра** — сущности связаны, поэтому можно ходить и рассуждать в несколько шагов.

Эмбеддинги всё ещё важны. Просто они уже не вся картина.

## Как выглядит retrieval с графом

В INITE Brain запрос не кончается на косинусной похожести. Он идёт через пайплайн: гибридная свёртка векторов и BM25, эмбеддинги гипотетических промптов, роутер предикатов, расширение по рёбрам на один шаг, tier-aware personalized PageRank, cross-encoder и listwise LLM-reranker с self-consistency. На eval-сьюте (n=262) это даёт recall@1 0.962 и recall@3 0.989 — цифры, до которых поиск по одним только векторам не дотягивает, потому что точность даёт структура вокруг векторов, а не векторы сами по себе.

Дай агенту память, которая знает *что*, *когда* и *как связано*, — а эмбеддинги оставь одним сильным сигналом внутри.
