Fits Calc
ИИ для инженера · rag · Wave AI R5

Цитаты, provenance и ACL в RAG: как доказать происхождение ответа

возвращать не только фрагмент текста, но и идентификатор документа, revision, раздел, права и путь к оригиналу.

Короткий ответ

Цитаты, provenance и ACL в RAG: как доказать происхождение ответа — это production-задача, а не демонстрационный prompt. Практический принцип: возвращать не только фрагмент текста, но и идентификатор документа, revision, раздел, права и путь к оригиналу. Ключевое решение: цитата без provenance может создавать ложную уверенность, особенно когда в архиве несколько редакций одного стандарта или чертежа. В инженерной среде результат принимается по evidence, traceability и воспроизводимой проверке, а не по уверенности формулировки модели.

Agent/RAG-платформы быстро меняются. Технические ссылки этой статьи проверены 02.10.2026; перед внедрением перепроверяются статусы API, preview/GA, лимиты, хранение данных и доступность функций.

Граница системы и предмет контроля

RAG — это не загрузка PDF в чат, а информационно-поисковая система вокруг модели. Качество ответа зависит от версии источника, сегментации, метаданных, прав доступа, retrieval-алгоритма, reranking и того, как контекст передан генератору. В инженерной среде особенно важны revision, статус документа, изделие, материал, обозначение, единицы, применимость и связь с первичным документом.

Слабый retrieval делает сильную модель бесполезной: она убедительно обобщит нерелевантный или устаревший контекст. Поэтому RAG принимают по контрольному набору вопросов и отдельно измеряют поиск и генерацию. Нельзя сводить проверку к субъективному «ответ выглядит правильно»: нужны ожидаемые документы, обязательные цитаты, проверки ACL, сценарии с противоречиями и вопросы, на которые система должна честно ответить «данных недостаточно».

Рабочее правилоцитата без provenance может создавать ложную уверенность, особенно когда в архиве несколько редакций одного стандарта или чертежа. Это правило должно быть закреплено в runtime policy, а не существовать только как рекомендация пользователю.

Что должно быть определено до запуска

document IDХранится с идентификатором источника, версией/статусом и областью применимости; устаревшие данные не смешиваются с действующими.
revision/statusХранится с идентификатором источника, версией/статусом и областью применимости; устаревшие данные не смешиваются с действующими.
section locatorФиксируется явно, имеет owner и проходит валидацию до использования в следующем шаге.
ACL principalЗадаётся как проверяемое правило доступа: субъект, объект, действие, срок и причина допуска.
source URIХранится с идентификатором источника, версией/статусом и областью применимости; устаревшие данные не смешиваются с действующими.

Артефакты и архитектурные границы

В RAG нужно физически разделять ingestion, index, retrieval и generation. Ingestion отвечает за нормализацию и metadata; index — за представление и обновление; retrieval — за отбор кандидатов и reranking; generation — за формирование ответа только из разрешённого контекста. Ошибка любого слоя должна быть локализуема по trace.

Для инженерных документов ключевой объект — не chunk сам по себе, а chunk вместе с document ID, revision, status, ACL, section/page и датой действия. При конфликте revisions система должна уметь отдать приоритет действующему документу или явно показать противоречие, а не смешивать фрагменты в один правдоподобный ответ.

citation objectИмеет стабильный идентификатор, статус приёмки и связь с исходной задачей.
provenance chainИмеет стабильный идентификатор, статус приёмки и связь с исходной задачей.
access decisionИмеет стабильный идентификатор, статус приёмки и связь с исходной задачей.
source previewИмеет стабильный идентификатор, статус приёмки и связь с исходной задачей.
evidence bundleИмеет стабильный идентификатор, статус приёмки и связь с исходной задачей.

Практический workflow

Шаг 1. описать citation schema. Определите authoritative corpus и правила исключения superseded документов.
Шаг 2. привязать chunk к source locator. При ingestion сохраняйте структуру, units, revision и ACL, а не только plain text.
Шаг 3. применить ACL в retrieval. Retrieval проверяйте на expected document IDs до оптимизации генерации.
Шаг 4. передать citations в generator. Reranking и filters тестируйте на запросах с близкими обозначениями и конфликтующими revisions.
Шаг 5. проверить claim-source alignment. Claims связывайте с конкретными цитатами; отсутствие evidence должно быть видимым.
Шаг 6. логировать access decisions. Отдельно тестируйте denial/ACL и prompt injection внутри документов.
Шаг 7. тестировать пользователя с разными ролями. Любое изменение index/retriever проходит regression на frozen query set.

После retrieval сохраняются query, filters, найденные IDs, scores/reranking и применённые ACL. Если требуемый источник не найден либо найден только superseded документ, генерация должна либо остановиться, либо явно пометить недостаточность доказательств.

Инженерный сценарий

Входdocument ID; revision/status; section locator; ACL principal; source URI. Данные должны быть привязаны к проекту, revision и владельцу.
Действиевозвращать не только фрагмент текста, но и идентификатор документа, revision, раздел, права и путь к оригиналу. Каждый tool-call проходит серверную валидацию и попадает в trace.
КонтрольACL filtering до генерации; immutable source ID; revision в citation; проверка доступности ссылки; не цитировать скрытый источник через пересказ. Для критических изменений добавляется независимое подтверждение.
Выходcitation object; provenance chain; access decision; source preview; evidence bundle. Финальный результат должен быть пригоден для повторной проверки без скрытого контекста.

RAG сначала запускают в shadow/read-only режиме: ответы и цитаты сравниваются с экспертным эталоном. Только после стабилизации retrieval система становится источником контекста для downstream-agentов.

Что измерять

citation coverageФиксируйте numerator/denominator и сегментируйте по типу/сложности задач; общий процент может скрыть critical slice.
citation correctnessОпределение метрики, единица, denominator и окно наблюдения фиксируются в metric dictionary.
authorized-retrieval rateФиксируйте numerator/denominator и сегментируйте по типу/сложности задач; общий процент может скрыть critical slice.
broken-source rateФиксируйте numerator/denominator и сегментируйте по типу/сложности задач; общий процент может скрыть critical slice.
unsupported-claim rateФиксируйте numerator/denominator и сегментируйте по типу/сложности задач; общий процент может скрыть critical slice.

RAG оценивают минимум в двух слоях: retrieval и generation. Высокий groundedness не компенсирует плохой Recall@k, а высокий recall не компенсирует неверные citations или доступ к запрещённому документу.

Критерии приёмки

КонтрольМинимальный критерий
ScopeДля «Цитаты, provenance и ACL в RAG: как доказать происхождение ответа» однозначно определено, что система делает и что остаётся вне её полномочий.
DataВсе входы имеют источник, revision/status и область применимости; неизвестные значения не подставляются автоматически.
ControlACL filtering до генерации; immutable source ID; revision в citation.
EvidenceСохраняются citation object, provenance chain, access decision, source preview; по ним можно восстановить ход операции.
QualityМинимум две профильные метрики контролируются на versioned eval-наборе: citation coverage и citation correctness.
ReleaseИзменяющие действия имеют approval/rollback там, где цена ошибки выходит за согласованный риск.

Failure modes и защитные меры

Главная ошибка — считать наличие цитаты доказательством корректного RAG. Цитата может вести к нерелевантной, устаревшей или недоступной пользователю revision; проверяются retrieval и claim-to-source связь.
  • ответ раскрывает факт из запрещённого документа. Защитная мера: ACL filtering до генерации; событие сохраняется как regression/incident case.
  • source URI не открывается пользователю. Защитная мера: immutable source ID; событие сохраняется как regression/incident case.
  • ревизия скрыта. Защитная мера: revision в citation; событие сохраняется как regression/incident case.
  • цитата указывает на соседний chunk. Защитная мера: проверка доступности ссылки; событие сохраняется как regression/incident case.
  • генератор добавляет неподтверждённый вывод. Защитная мера: не цитировать скрытый источник через пересказ; событие сохраняется как regression/incident case.

Как переводить из пилота в production

Пилот RAG начинают с ограниченного корпуса с известными owners и revisions. До подключения генерации проверяют retrieval: контрольные вопросы, expected document IDs, фильтры и ACL. Затем добавляют citations/groundedness и только после этого используют ответы в агентном workflow.

Обновление corpus и retrieval configuration выпускают как версию индекса. Для canary сравнивают old/new index на одном query set; новые документы не должны ухудшать critical queries. При деградации переключение на предыдущий индекс выполняется без переиндексации всего источника.

Traceability и эксплуатационная запись

Минимальная запись RAG: query, filters, corpus/index version, retrieved document/chunk IDs, scores и reranking, ACL decision, контекст генерации, claims/citations и итоговый abstention/answer status.

Чек-лист перед production

КонтрактScope, входы, tools и stop condition описаны до запуска.
ПраваRead/write, сеть и секреты ограничены минимально необходимым.
EvidenceКаждый критичный вывод или action связан с источником и trace.
EvalsЕсть обычные, граничные, негативные и regression cases.
RollbackДля side effect проверено восстановление, а не только наличие команды отката.
OwnerНазначен владелец качества процесса и владелец технической платформы.

Навигация по Wave AI R5 · часть 2 из 5

Связать AI-контур с проверяемыми данными Fits Calc

Fits Calc целесообразно использовать как детерминированный расчётный и справочный слой: агент получает структурированные входы и результаты через контролируемые tools, а не воспроизводит инженерный расчёт свободным текстом. Это упрощает verifier, traceability и повторную проверку.

Открыть Fits Calc →

Источники и официальная документация

  1. OpenAI — File search
  2. Microsoft — RAG in Azure AI Search
  3. Microsoft — Agentic retrieval overview
  4. Microsoft — Agentic RAG architecture
  5. OpenAI — Evaluate agent workflows
  6. NIST — Generative AI Profile NIST AI 600-1
Проверено: 02.10.2026Production controls обязательныHuman approval — по риску действия