﻿---
title: Курируемая база знаний
description: "Альтернатива RAG, в которой синтез происходит при записи страницы: структура вики, дисциплина обновления, линт на противоречия и сочетание с retrieval."
---

## Идея

В [RAG](https://wpcraft.ru/kb/ai/rag.md) модель на каждом запросе заново собирает ответ из найденных фрагментов. Если два источника противоречат друг другу, противоречие всплывает снова и снова — и каждый раз разрешается заново, по-разному.

Курируемая база знаний меняет точку синтеза: **сверка происходит один раз, при записи страницы**. Агент или человек не ищет чанки, а открывает нужную страницу целиком — с уже собранным, проверенным и связанным знанием.

Практически такая база — это вики на Markdown: одна страница на тему, оглавление, перекрёстные ссылки, журнал изменений, ссылки на первоисточники. Именно так устроена [эта база знаний](https://wpcraft.ru/kb/index.md).

## Как она устроена

| Элемент | Зачем нужен |
|---|---|
| **Страница = одна тема** | Устраняет дублирование: ответ на вопрос живёт в одном месте |
| **Каталог и сайдбар** | Даёт навигацию без семантического поиска: агент видит всю карту |
| **Перекрёстные ссылки** | Связывают темы так, как их видит читатель, а не как их нарезал чанкер |
| **Ссылки на источники** | Позволяют проверить факт и увидеть, откуда он взялся |
| **Журнал изменений (changelog)** | Отвечает на вопрос «почему правило изменилось» |
| **Линт** | Ищет противоречия, битые ссылки и устаревшие страницы |

Ключевое отличие от векторного индекса: структура здесь **смысловая и явная**. У неё нет промахов поиска, потому что нет поиска — есть навигация.

## Когда выбирать

Курируемая база выигрывает, если выполняются три условия:

1. **Домен обозрим.** Десятки или сотни страниц, а не миллионы документов. Пока карта помещается в голову (и в контекст), навигация работает.
2. **Знания нужно синтезировать.** Регламенты, архитектура проекта, договорённости команды, «как у нас принято» — то, что не существует в одном источнике, а собирается из нескольких.
3. **Важна непротиворечивость.** Если цена ошибки высока, лучше один раз сверить правила, чем каждый раз доверять случайной выдаче.

RAG остаётся нужен, когда источник — поток: логи, тикеты, переписка, документация вендора, которая обновляется без вашего участия. Курировать такое вручную невозможно.

## Риски и дисциплина

Риски курируемой базы противоположны рискам RAG. Там опасность в том, что поиск не нашёл нужное; здесь — что **страница устарела и уверенно рассказывает отменённое правило**.

Отсюда обязательные практики:

- **Дата и источник у каждого утверждения.** Без них нельзя понять, актуальна ли страница.
- **Ревизия при изменении факта.** Изменилось правило — правится страница, а не добавляется новая рядом.
- **Линт на противоречия и битые ссылки.** Регулярная проверка ловит расхождения, которые человек не замечает при чтении.
- **Ответственный.** База без владельца деградирует за квартал: страницы множатся, ссылки гниют.
- **Правило «одна тема — одна страница».** Как только одна тема описана в двух местах, они начнут расходиться.

## Гибрид с retrieval

На практике эти подходы не конкурируют, а слоятся:

- Курируемая база — **навигационный слой**: страница описывает область и говорит, куда смотреть дальше.
- RAG — **слой деталей**: достаёт конкретные фрагменты из большого корпуса, когда страница на них ссылается.
- Публикация для внешних агентов — [llms.txt](https://wpcraft.ru/kb/ai/context/llms-txt-for-ai-agents.md): карта документации в формате, который читают ChatGPT, Claude и другие ассистенты.

Именно так устроена эта база знаний: страницы синтезированы и связаны ссылками, а исходники лежат отдельно в `raw/` и не меняются.

## Что проверить

- **Есть ли карта.** Если структуру нельзя прочитать за минуту, навигация не работает — ни для человека, ни для агента.
- **Отвечает ли страница целиком.** Хорошая страница не требует перехода по трём ссылкам, чтобы понять суть.
- **Не дублируются ли темы.** Два текста об одном — начало расхождения.
- **Проверяются ли ссылки.** Битая ссылка в базе знаний — это не косметика, а потерянная часть контекста.
- **Кто обновляет.** Назначенный владелец и ритм ревизии важнее любого инструмента.

## Связанные материалы

- [RAG и знания](https://wpcraft.ru/kb/ai/rag.md) — общая рамка и сравнение трёх способов дать модели знания.
- [Поиск и reranking](https://wpcraft.ru/kb/ai/rag/retrieval.md) — что делать, когда корпус перестаёт быть обозримым.
- [Контекст для агентов](https://wpcraft.ru/kb/ai/context.md) — файлы-контракты проекта.
- [LLMs.txt для AI-агентов](https://wpcraft.ru/kb/ai/context/llms-txt-for-ai-agents.md) — как опубликовать базу для внешних ассистентов.

## Материалы и источники

- [llms.txt: предложение формата](https://llmstxt.org/) — публикация карты документации для LLM
- [Anthropic: Contextual Retrieval](https://www.anthropic.com/research/contextual-retrieval) — почему фрагменты без контекста теряют смысл
- Правила ведения этой базы знаний — `AGENTS.md` и `SCHEMA.md` в корне репозитория: структура разделов, формат страниц, обязательные источники и журнал изменений