AI . Владение сложными комплексами знаний
В статье представлены рекомендации для формирования культуры владения сложными комплексами знаний, адаптированные под AI.
Введение
AI, как феномен, оказался мощным катализатором прогресса. Сейчас AI проходит фазу взросления, модели становятся надежнее, адекватнее, и через несколько лет основным препятствием на пути эффективной эксплуатации AI будут не её детские болезни, а низкое качество и культура организации знаний в компании. AI, как и человек, никогда не сможет хорошо выполнить задачу с низким качеством постановки или построить решение на знаниях, которых нет, которые врут, которые надежно зарыты или распылены.
Культурно организованные, качественные комплексы знаний являются фундаментальным и обязательным условием для успешного применения AI. Бизнес, который поймет, что вклад в культуру знаний = эффективное применение AI, сможет перейти к тотальному применению AI и сверхэффективной автоматизации.
Базовые принципы
- Связывание знаний
- Структурирование знаний
- Форматирование знаний
- Фрагментирование знаний
- Актуализация знаний
- Полнота знаний
- Контентная адаптация
Связывание знаний
Связывание является одним из самых полезных для потребителей принципов. Именно связывание позволяет сформировать полноценный граф знаний, преобразующий свалку в систему.
Чтобы 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) – недостаток грамматического клея может приводить к ошибкам в трактовке утверждений.
Во всех этих случаях рекомендуется применять парафраз или пояснение.
Переделывать оригинальный текст не нужно.
Пример ... Система использует асимметричное шифрование RS256 для подписи JWT (AUTH_JWT).
Локальный глоссарий
Внутри документов рекомендуется давать определение не только аббревиатурам, но и ключевым терминам. Если этого не сделать, то ожидайте, что AI может не угадать ситуативную коннотацию термина, заложенную автором.
Дополнительно можно реализовать механизм контекстного дополнения документа понятиями, найденными через ссылки в документе (при компиляции промпта). Это не отменит глоссарий, но минимизирует его благодаря включению принципа DRY.
Отказ от дискурсивных дейктических ссылок
Фразы типа "см. выше", "как указано ранее", "в соседнем разделе", "там" теряют смысл при фрагментации и RAG-поиске. AI обрабатывает тексты чанками, а на дейктических ссылках цепочка суждений рвется.
Замените грубые и относительные отсылки на абсолютные.
другие техники
Есть еще несколько полезных, но трудоемких и/или обезображивающих документ техник. Адаптировать контент под AI можно и нужно, но затруднять восприятие документа человеком – недопустимо. Возможно, в будущем появятся теневые документы, насквозь переразмеченные под AI, ну а пока будем ограничиваться малым.