В этом разделе я хотел бы систематизировать информацию о Системе искусственного обучающегося интеллекта (ALIS), подробно изложив ее концепцию, принципы, базовый дизайн и методологию разработки.
Концепция
Современный генеративный ИИ, в основном представленный большими языковыми моделями, обучается на основе нейронных сетей с использованием обучения с учителем.
Этот процесс обучения нейронной сети мы определяем как врожденное обучение.
ALIS, помимо врожденного обучения, включает процесс приобретенного обучения, что позволяет осуществлять вывод, сочетающий оба процесса обучения.
При приобретенном обучении полученные знания накапливаются вне нейронной сети и используются во время вывода.
Таким образом, техническая суть ALIS заключается в извлечении, хранении, а также выборе и использовании многократно применяемых знаний в процессе вывода.
Кроме того, ALIS — это не просто отдельная технология, а системная технология, объединяющая врожденное и приобретенное обучение.
Элементы системы обучающегося интеллекта
ALIS работает по принципу, согласно которому как существующее врожденное обучение, так и рассматриваемое в будущем приобретенное обучение следуют одной и той же структуре обучения и вывода.
Для объяснения принципов обучения в ALIS мы определяем пять элементов системы обучающегося интеллекта.
Первый — это интеллектуальный процессор. Он относится к системе обработки, которая выполняет вывод с использованием знаний и извлекает знания для обучения.
Большие языковые модели (LLM) и части человеческого мозга являются яркими примерами интеллектуальных процессоров.
Второй — это хранилище знаний. Оно относится к месту хранения, где извлеченные знания могут быть сохранены и извлечены по мере необходимости.
В LLM хранилище знаний состоит из параметров нейронной сети. У человека оно соответствует долговременной памяти в мозгу.
Третий — это мир. Он относится к внешней среде, воспринимаемой системой обучающегося интеллекта, такой как человек или ALIS.
Для человека мир — это сама реальность. В случае LLM механизм, который получает выходные данные от LLM и предоставляет ему обратную связь, можно считать эквивалентом мира.
Четвертый — это память состояния. Он относится к внутреннему компоненту, подобному временной памяти, используемому системой обучающегося интеллекта во время вывода.
В LLM это пространство памяти, используемое во время вывода, известное как скрытые состояния. У человека оно соответствует кратковременной памяти.
Пятый — это фреймворк. Это, так сказать, структура мышления. В терминологии систем обучающегося интеллекта он относится к критериям выбора необходимых знаний во время вывода и логической структуре пространства состояний для организации памяти состояний.
В LLM это семантическая структура скрытых состояний, и ее содержимое, как правило, неоднозначно и непонятно для человека. Более того, выбор знаний встроен в механизм внимания, который выбирает, на какие существующие токены ссылаться для каждого обрабатываемого токена.
У человека, как уже упоминалось, это структура мышления. При мышлении с использованием определенного фреймворка из долговременной памяти извлекается определенный набор ноу-хау и загружается в кратковременную память. Затем воспринимаемая в данный момент информация организуется в соответствии с фреймворком мышления для понимания ситуации.
Принципы работы системы обучающегося интеллекта
Система обучающегося интеллекта работает следующим образом:
Интеллектуальный процессор воздействует на мир. Мир, в ответ на это действие, возвращает результаты.
Интеллектуальный процессор извлекает из этих результатов многократно используемые знания и сохраняет их в хранилище знаний.
При итеративном воздействии на мир интеллектуальный процессор выбирает знания из хранилища знаний и использует их для изменения своих действий.
Это базовый механизм.
Однако, по сути, методы извлечения, хранения, выбора и использования знаний определяют, может ли система осуществлять осмысленное обучение.
Люди обладают механизмами, которые эффективно справляются с извлечением, хранением, выбором и использованием знаний, что позволяет им учиться.
Нейронные сети, включая LLM, обрабатывают извлечение знаний с помощью внешних учителей, но обладают механизмами для хранения, выбора и использования. Это позволяет им учиться, если им предоставляется учитель.
Более того, система обучающегося интеллекта может также усваивать извлечение, хранение и выбор фреймворков, а также методы их использования в памяти состояний в качестве знаний, тем самым обеспечивая более сложное обучение.
Типы знаний
Исходя из этих принципов, при разработке приобретенного обучения необходимо уточнить, какую форму примут приобретенные знания.
Можно рассмотреть метод, при котором приобретенные знания также изучаются отдельно как параметры нейронной сети.
Однако приобретенные знания не обязательно должны ограничиваться только параметрами нейронной сети. Практическим кандидатом являются знания, представленные в виде текста на естественном языке.
Знания, представленные в виде текста на естественном языке, могут быть извлечены и использованы благодаря возможностям LLM по обработке естественного языка. Более того, поскольку они могут обрабатываться как данные в стандартных ИТ-системах, хранение и выбор также не представляют трудностей.
Кроме того, знания, представленные в виде текста на естественном языке, легко проверяются, понимаются и, в некоторых случаях, даже редактируются людьми и другими LLM.
Их также можно совместно использовать, объединять или разделять с другими системами обучающегося интеллекта.
По этим причинам приобретенные знания в концепции ALIS изначально будут разрабатываться с ориентацией на знания, представленные в виде текста на естественном языке.
Приобретенная память состояния и фреймворки
Мы объяснили преимущества выбора естественного языка в качестве формата для приобретенных знаний.
Аналогично, текст на естественном языке также может использоваться для памяти состояний и фреймворков для вывода.
Фреймворки, как концептуальные структуры, могут храниться и использоваться в хранилище знаний как знания, представленные в текстовом виде на естественном языке.
Даже при инициализации или обновлении состояний на основе структуры, определенной фреймворком, может использоваться память состояний в текстовом формате.
Разрабатывая не только приобретенные знания, но также фреймворки и память состояний в текстовом формате, ALIS может использовать возможности обработки естественного языка LLM для приобретенного обучения и вывода в целом.
Формальные знания
Приобретенные знания, фреймворки и память состояний могут быть выражены не только в виде текста на естественном языке, но и в более строгих формальных языках или формальных моделях.
Хотя я написал «выбрать», цель ALIS состоит в том, чтобы включить несколько различных механизмов приобретенного обучения для обеспечения гибридного использования врожденного и приобретенного обучения.
Знания, представленные формальными языками или формальными моделями, могут быть сделаны более точными и недвусмысленными.
Более того, если фреймворк выражен с использованием формального языка или модели, а начальное состояние развернуто в памяти состояний, то симуляция или логическое развитие могут быть выполнены с использованием строгой модели интеллектуальным процессором, способным обрабатывать формальные модели, а не LLM.
Ярким примером таких формальных языков или формальных моделей являются языки программирования.
По мере того как система познает мир, если она сможет выразить найденные в нем законы и концепции в виде программы во фреймворке, то она сможет смоделировать их на компьютере.
Колонка 1: Типы знаний
При систематизации знаний в рамках системы обучающегося интеллекта становится очевидным, что их можно широко классифицировать на три системы знаний и два типа состояния.
Три системы знаний: знания сетевых параметров, обрабатываемые нейронными сетями; естественные знания, выраженные на естественном языке; и формальные знания, выраженные на формальных языках.
Два типа состояний: без сохранения состояния (stateless) и с сохранением состояния (stateful).
Знания сетевых параметров без сохранения состояния — это интуитивные знания, подобные тем, что встречаются в ИИ глубокого обучения. Признаки кошек и собак, которые невозможно явно обдумать или вербально идентифицировать, могут быть изучены как знания сетевых параметров без сохранения состояния.
Знания сетевых параметров с сохранением состояния — это знания, которые появляются в результате нечетких, итеративных процессов, как, например, в генеративном ИИ.
Естественные знания без сохранения состояния — это знания, подобные значениям, привязанным к отдельным словам.
Естественные знания с сохранением состояния — это знания, которые включают контекст в предложениях.
Некоторые естественные знания изначально включены в знания сетевых параметров с сохранением состояния, но существуют также знания, которые могут быть получены из текста на естественном языке.
Формальные знания без сохранения состояния — это знания, которые могут быть выражены в математических формулах без итераций. Формальные знания с сохранением состояния — это знания, которые могут быть выражены в виде программы.
Можно также использовать собственную кратковременную память в качестве памяти состояния для естественных и формальных знаний.
Однако, поскольку это кратковременная память, существует проблема, заключающаяся в трудности стабильного поддержания состояния. Кроме того, она не приспособлена для хранения формализованных, недвусмысленных состояний.
С другой стороны, бумага, компьютеры и смартфоны могут использоваться в качестве памяти состояния для записи или редактирования текста на естественном языке, формальных языков или формальных моделей.
Обычно данные на бумаге или компьютерах часто воспринимаются как хранилище знаний для запоминания информации, но их также можно использовать как память состояния для организации мыслей.
Таким образом, очевидно, что люди осуществляют интеллектуальную деятельность, в полной мере используя эти три системы знаний и два типа состояния.
ALIS также обладает потенциалом значительно расширить свои возможности, обеспечивая и усиливая интеллектуальную деятельность, использующую те же самые три системы знаний и два типа состояния.
В частности, ALIS сильна тем, что способна использовать обширные хранилища знаний и память состояний. Кроме того, она легко может выполнять интеллектуальные задачи, подготавливая множество экземпляров каждого и переключаясь или комбинируя их.
Колонка 2: Интеллектуальная оркестровка
Хотя накопление огромного объема знаний в хранилище знаний дает преимущество, количество знаний не всегда прямо пропорционально интеллектуальной активности из-за ограничений на количество токенов, которые генеративный ИИ может обработать одновременно, и шума, создаваемого нерелевантными знаниями.
Напротив, путем соответствующего разделения хранилища знаний и его преобразования в специализированные хранилища знаний высокой плотности, каждое из которых содержит знания, необходимые для конкретной интеллектуальной задачи, проблемы ограничения токенов и шума могут быть смягчены.
Взамен каждое специализированное хранилище знаний становится пригодным для использования только для своей обозначенной интеллектуальной задачи.
Многие интеллектуальные действия представляют собой сложные композиции различных интеллектуальных задач. Следовательно, разделяя знания на специализированные хранилища знаний в соответствии с типом интеллектуальной задачи и подразделяя интеллектуальную деятельность на отдельные задачи, ALIS может выполнять всю интеллектуальную деятельность, соответствующим образом переключаясь между этими специализированными хранилищами знаний.
Это аналогично оркестру, состоящему из профессиональных музыкантов, играющих на разных инструментах, и дирижера, управляющего ансамблем.
Благодаря этой системной технологии, интеллектуальной оркестровке, ALIS сможет организовывать свою интеллектуальную деятельность.
Базовая архитектура и метод разработки ALIS
Далее мы займемся организацией разработки ALIS.
Как уже обсуждалось в принципах и колонках, ALIS изначально спроектирована для легкого расширения функций и ресурсов. Это связано с тем, что суть ALIS заключается не в конкретных функциях, а в процессах извлечения, хранения, выбора и использования знаний.
Например, может быть предоставлено несколько типов механизмов извлечения знаний, и архитектура системы позволяет свободно выбирать их или использовать одновременно.
Более того, сама ALIS может осуществлять этот выбор.
Аналогично, хранение, выбор и использование также могут быть свободно выбраны или распараллелены.
Таким образом, ALIS может быть разработана инкрементально и гибко, без необходимости проектировать всю функциональность по каскадному принципу.
Начало ALIS
Теперь давайте разработаем очень простую систему ALIS.
Основным пользовательским интерфейсом будет привычный чат-ИИ. Изначально пользовательский ввод передается напрямую LLM. Ответ LLM отображается в интерфейсе, и система ожидает следующего ввода пользователя.
При получении следующего ввода LLM предоставляется не только новый ввод, но и вся история чата между пользователем и LLM.
За пользовательским интерфейсом этого чат-ИИ подготавливается механизм для извлечения многократно используемых знаний из истории чата.
Этот механизм может быть добавлен в систему чат-ИИ как процесс, который запускается по завершении разговора или через регулярные интервалы. Конечно, для извлечения знаний используется LLM.
Этому LLM предоставляются концепция и принципы ALIS, а также ноу-хау по извлечению знаний в качестве системной подсказки. Если знания не извлекаются должным образом, системную подсказку следует улучшать методом проб и ошибок.
Знания, извлеченные из истории чата, хранятся непосредственно в озере знаний. Озеро знаний — это просто механизм для хранения знаний в плоском состоянии до их структурирования.
Далее подготавливается механизм структурирования, чтобы облегчить выбор знаний из озера знаний.
Это включает предоставление хранилища векторов встраивания для семантического поиска, используемого в типичных RAG, и ключевых индексов.
Другие возможности включают генерацию более продвинутых графов знаний или выполнение классификации по категориям.
Эта коллекция структурированной информации для озера знаний будет называться базой знаний. Эта вся база знаний и озеро знаний будут составлять хранилище знаний.
Затем хранилище знаний интегрируется в обработку пользовательского интерфейса чата.
Это в основном то же самое, что и общий механизм RAG. Для пользовательского ввода релевантные знания выбираются из хранилища знаний и передаются LLM вместе с пользовательским вводом.
Это позволяет LLM автоматически использовать знания при обработке пользовательского ввода.
Таким образом, знания увеличиваются с каждым разговором с пользователем, обеспечивая простую ALIS, которая использует накопленные знания из прошлых разговоров.
Простой сценарий
Например, представьте сценарий, когда пользователь разрабатывает веб-приложение с помощью этой простой ALIS.
Пользователь сообщает, что предложенный LLM код привел к ошибке. Затем пользователь и LLM совместно устраняют проблему. Допустим, они обнаруживают, что спецификация внешнего API, известная LLM, устарела, и адаптация к последней спецификации API решает проблему.
В этом случае знания о том, что спецификация API LLM устарела, и какова последняя спецификация API, могут быть накоплены в хранилище знаний из этого потока чата.
Затем, при следующем создании программы, использующей тот же API, ALIS может использовать эти знания для генерации программы, основанной на последней спецификации API, с самого начала.
Улучшение начальной ALIS
Однако для этого необходимо, чтобы эти знания были выбраны в ответ на ввод пользователя. Возможно, эти знания не связаны напрямую с вводом пользователя, поскольку название проблемного API вряд ли появится в первоначальном вводе пользователя.
В таком случае название API впервые появится только в ответе LLM.
Поэтому мы немного расширим простую ALIS, добавив механизм для комментариев предварительной проверки и комментариев пост-проверки.
Комментарии предварительной проверки аналогичны недавнему «режиму мысли» в LLM. Мы подготавливаем память, которая может хранить текст в качестве памяти состояния, и инструктируем LLM с помощью системной подсказки выполнять комментарии предварительной проверки при получении пользовательского ввода.
Затем результат комментария предварительной проверки LLM помещается в память состояния, и на основе этого результата знания выбираются из хранилища знаний.
Затем история чата, результат комментария предварительной проверки, знания, соответствующие вводу пользователя, и знания, соответствующие результату комментария предварительной проверки, передаются LLM для получения его вывода.
Кроме того, для результата, возвращенного LLM, знания ищутся в хранилище знаний. Включая любые найденные там знания, LLM затем просят выполнить пост-проверку.
Если обнаруживаются какие-либо проблемы, они передаются обратно в чат LLM вместе с проблемными точками и причинами замечаний/обратной связи.
Предоставляя возможности для выбора знаний как во время комментариев предварительной проверки, так и во время комментариев пост-проверки, мы можем увеличить шансы на использование накопленных знаний.
Перспективы
Процесс создания первоначальной ALIS и ее последующие улучшения для устранения слабых сторон являются ярким примером гибкой разработки, демонстрирующей возможность инкрементального совершенствования ALIS.
Более того, как показано на примере, первоначальная ALIS наиболее подходит для использования в разработке программного обеспечения. Это объясняется тем, что данная область является востребованной и предоставляет четкие возможности для накопления знаний.
Это область, где результаты однозначны, но при этом она требует и значительно выигрывает от итеративного накопления знаний методом проб и ошибок.
Кроме того, поскольку разработка ALIS сама по себе является разработкой программного обеспечения, тот факт, что разработчики ALIS могут быть также пользователями ALIS, является привлекательным аспектом.
Более того, наряду с системой ALIS, озеро знаний может быть открыто доступно на таких платформах, как GitHub.
Это позволит многим людям внести свой вклад в улучшение системы ALIS и накопление знаний, при этом все будут пользоваться преимуществами и еще более эффективно ускорять разработку ALIS.
Конечно, обмен знаниями не ограничивается разработчиками ALIS; он может быть получен от всех разработчиков программного обеспечения, использующих ALIS.
Природа знаний на естественном языке предоставляет два дополнительных преимущества.
Первое преимущество заключается в том, что знания по-прежнему могут использоваться даже при изменении или обновлении моделей LLM.
Второе преимущество состоит в том, что обширное накопленное озеро знаний может быть использовано в качестве набора данных для предварительного обучения LLM. Существует два способа использования этого: в качестве тонкой настройки или для самого предварительного обучения LLM.
В любом случае, если LLM, которая изначально обучена на знаниях, накопленных в озере знаний, может быть использована, разработка программного обеспечения станет еще более эффективной.
Кроме того, разработка программного обеспечения включает в себя различные процессы, такие как анализ требований, проектирование, реализация, тестирование, эксплуатация и сопровождение. Для каждой предметной области и платформы программного обеспечения также существуют специализированные знания. Создав механизм для разделения огромного объема накопленных знаний с этих точек зрения, можно сформировать оркестр ALIS.
Таким образом, основные технологии для ALIS уже существуют. Остается решающий шаг — практически экспериментировать с различными методами, такими как ноу-хау по извлечению знаний, соответствующий выбор знаний, сегментация специализированных знаний и использование памяти состояний, чтобы открыть эффективные подходы. По мере увеличения сложности время обработки и затраты на использование LLM также будут возрастать, что потребует оптимизации.
Эти процессы проб и ошибок и оптимизации могут быть продвинуты в ориентированном на обучение режиме посредством разработки и совершенствования фреймворков.
Изначально разработчики, как пользователи, вероятно, будут интегрировать фреймворки в ALIS методом проб и ошибок. Однако даже в этом случае самой LLM может быть поручено генерировать идеи фреймворков.
Затем, включив в ALIS фреймворк для улучшения и открытия фреймворков, основанный на результатах, полученных из мира, и извлеченных знаниях, ALIS сама будет выполнять пробы и ошибки и оптимизацию в управляемом обучением режиме.
ALIS в реальном мире
Как только ALIS будет доведена до этой стадии, она должна быть способна приобретать знания в самых различных областях, не ограничиваясь миром разработки программного обеспечения.
Подобно разработке программного обеспечения, ALIS, как ожидается, расширит сферу своего применения на различные интеллектуальные виды деятельности, которые люди выполняют с помощью компьютеров.
Даже в таких чисто интеллектуальных видах деятельности ALIS будет обладать качеством, сродни воплощенному ИИ, по отношению к своему целевому миру.
Это объясняется тем, что она распознает границу между собой и миром, воздействует на мир через эту границу и может воспринимать информацию, получаемую из мира.
Когда эта граница с миром физически видима и локализована в одном месте, мы обычно называем это телом.
Однако, даже если граница невидима и пространственно распределена, структура восприятия и действия через границу остается той же, что и при наличии физического тела.
В этом смысле ALIS, выполняющая интеллектуальную деятельность, может рассматриваться как виртуально обладающая характеристиками воплощенного ИИ.
И если ALIS будет доведена до стадии, когда она сможет адекватно учиться даже в новых, неизвестных мирах, существует вероятность того, что ALIS может быть включена в состав настоящего воплощенного ИИ, обладающего реальным физическим телом.
Таким образом, ALIS со временем будет применяться в реальном мире и начнет учиться на нем.