AI . Владение сложными комплексами знаний

В статье представлены рекомендации для формирования культуры владения сложными комплексами знаний, адаптированные под AI.

Введение

Культурно организованные, качественные комплексы знаний являются обязательным условием для успешного владения бизнес-процессами и автоматизации их интеллектуальной части с помощью AI. Владение держится на двух аспектах: Качественная упаковка знаний и Качественная дисциплина управления знаниями. В статье рассматриваются принципы, которые принадлежат обеим аспектам.

Базовые принципы

  1. Связывание знаний
  2. Структурирование знаний
  3. Форматирование знаний
  4. Фрагментирование знаний
  5. Актуализация знаний
  6. Полнота знаний
  7. Контентная адаптация знаний
  8. Разметка и маркировка знаний

Связывание знаний

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

Чтобы AI видела и понимала зависимости знаний в огромном комплексе, необходимо образовать связи ...

В документе рекомендуется иметь:

  • Ссылку на родительский документ – эта ссылка подскажет AI, что блок знаний есть часть (объектная или аспектная) целого.
  • Ссылку на точку входа (корневой документ) – эта ссылка покажет AI самый верхний документ, через который можно получить все знания об артефакте.
    У артефакта должна быть единая точка входа. Сами данные могут располагаться в разных платформах (Confluence, Git и т.д.), но они обязательно должны быть включены в граф знаний (через ссылки). Недопустимо порождать знания, не связанные с корневой точкой артефакта.
  • Контекстные ссылки – ссылки на контекст.
    Так как контекст бывает очень обширен, то рекомендуется разделить его на: Предметный контекст (схемы БД, спецификации, системы, сервисы, модели и т.д.) и Общий контекст (шаблон документа, регламенты, стандарты, методички, описания паттернов решений, энциклопедические знания и т.д.).
  • Обратные ссылки – чрезвычайно полезны для спецификации исходящих зависимостей, они показывают, где используются знания, представленные в документе. Именно с помощью этого вида связывания можно пройти по всей цепочке документов для внесения согласованных изменений. Применение AI для актуализации знаний весьма эффективно скажется на затратах в управлении знаниями.
    Обратные и контекстные ссылки рекомендуется собрать (продублировать, если надо) и оформить в виде отдельных блоков, и поместить в начало документа (сразу после структуры). Это избыточно для AI, но очень удобно для человека, особенно при многократной работе с документом.

Структурирование знаний

Объектное структурирование

Применяется к знаниям, специфицирующим объект (система, сервис, модуль и т.д.). Объектное структурирование знаний выполняется в полном соответствии с принципами декомпозиции объекта. Структурной единицей является документ, представляющий компонент любого уровня. Глубина декомпозиции определяется требованием к уровню владения знаниями, при котором не происходит потеря возможности воспроизводить решения, принятые ранее. Структура объекта, выраженная связями документов, позволяет качественно улучшить возможность ориентироваться в его конструктивном аспекте, это особенно ценно для новых потребителей и AI.

Аспектное структурирование

Аспектное структурирование позволяет представить свалку знаний набором аспектов и субаспектов. Применяется к знаниям внутри документа. Тщательность выделения аспектов является важным качеством, которое делает комплекс знаний удобным.

Структура документа будет такой:

  • Аспекты документа – представлены разделами верхнего уровня. Наиболее консервативная часть документов определенного типа.
  • Предметные аспекты – представлены разделами, помещенными в профильный аспект документа (Техническая информация).
  • Субаспекты – применяются для структуризации и улучшения восприятия аспектов любого типа.

Форматирование знаний

Форматирование знаний осуществляется с помощью шаблонов. Шаблон является мощным средством упаковки знаний. Для AI шаблоны действуют как схемы данных, они задают ожидаемую структуру, типы информации и обязательные моменты, что позволяет более надёжно интерпретировать контент.

Шаблоны дают такие преимущества:

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

Фрагментирование знаний

Проблема: длинные документы неудобно читать, в них неудобно искать информацию, по ним неудобно разрабатывать, их неудобно исправлять, их версионирование избыточно нагружает систему.

Фрагментирование – это вынесение особо объемных и переиспользуемых аспектов в отдельные документы. Что это дает?

  • Сохраняется целостность восприятия документа.
    Человек может завязнуть в каком-то аспекте ещё до того, как получит общее представление о предмете.
  • Работа человека с документом становится быстрее и удобнее, особенно при актуализации знаний.
  • Короткий контент быстрее, точнее и дешевле обрабатывается AI.
    В случае, если используется Document-level retrieval.
  • Вынесенные фрагменты могут переиспользоваться, исключается бойлерплейт (DRY).

Актуализация знаний

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

Если при разработке программ специалисты уточняют требования и не сохраняют новые знания в источник, то владение артефактом будет прервано, так как код перестанет объясняться требованиями, а создание независимых тестов станет принципиально невозможным.

Полнота знаний

Вопрос: Какой уровень детализации знаний необходим, чтобы владение решением (системой, сервисом, продуктом, инфраструктурой) не прерывалось?

Ответ: Уровень детализации знаний должен гарантировать воспроизведение любого действующего решения.

Контентная адаптация знаний

Лексический порог

Представим сухой технический текст, где в предложении может быть сразу несколько требований, например – "Микросервис должен быть отказоустойчивым, высокодоступным и поддерживать нагрузку не менее 100 запросов в секунду". Это плохой текст для AI, так как некоторые требования выражены всего одним словом. Дело в том, что одно слово не обладает достаточной лексической массой, поэтому требование получит мало внимания и может быть игнорировано. Стало быть ...

Любое утверждение должно быть выражено минимум одним предложением, а лучше двумя.
В некоторой степени исключением могут быть маркированные списки (они получают больше внимания).

Пример ... Высокая доступность: Микросервис должен обеспечивать доступ к своему API 99.99% времени. Максимальное время простоя 1 минута.

Парафраз

Есть случаи, когда текст составлен не очень удачно:

  • Академический текст – трудно воспринимается в контексте из-за всеобщей правильности формулировки, пониженная ситуативная точность.
  • Общая формулировка – размытая семантика и неоднозначность.
  • Непонятная / неудачная формулировка – высокий риск искаженного понимания смысла.
  • Предложения с большим количеством терминов, определенных в других документах – высокий риск непонимания или искаженного понимания смысла.
  • Экстремальная лаконичность (AUTH_JWT: Аутентификация — JWT с RS256) – недостаток грамматического клея может приводить к ошибкам в трактовке утверждений.

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

Локальный глоссарий

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

Отказ от дискурсивных дейктических ссылок

Фразы типа "см. выше", "как указано ранее", "в соседнем разделе", "там" теряют смысл при фрагментации и RAG-поиске. AI обрабатывает тексты чанками, а на дейктических ссылках цепочка суждений рвется.

Разметка и маркировка знаний

Если вы захотите использовать документ с прикладной целью, то достаточно быстро обнаружите, что для AI как-то нужно выделить ссылки (на другие документы), которые ОБЯЗАТЕЛЬНО нужно изучить для качественного понимания этого документа. Загружать документы в контекстное окно тоже нужно в определенном порядке (от листьев к корню). Не полагайтесь на RAG в этом вопросе, он не даст нужной полноты, чистоты и порядка знаний.

Если у вас есть документ с требованиями, по которым создаётся программа, то каждому требованию разумно выдать уникальную метку (это распространенная практика). Используйте эти метки в комментариях к программным блокам и операциям (если уместно), чтобы связывать требования и результат.

В промптах очень удобно и точно можно обращаться к знаниям, если они обозначены специальной меткой или декларатором (например, кодовое название списка). Такая разметка позволяет AI намного точнее, быстрее и дешевле выделять подмножества или находить целевые массивы знаний. Некоторые виды разметок полезны не только для AI, но и для потребителей и авторов документов (сразу понятно, какие аспекты принципиально важны для применения документа). Разметки создаются исключительно с прикладной целью и должны делаться только на основании требований к документу.