В данном документе я постараюсь систематизировать информацию о Системе искусственного обучающегося интеллекта (ALIS), охватив ее концепции и принципы, а также основные методы проектирования и разработки.
Концепция
Современный генеративный ИИ, в основном представленный большими языковыми моделями, обучается на основе контролируемого обучения с использованием нейронных сетей.
Мы позиционируем этот процесс обучения нейронных сетей как врожденное обучение.
ALIS — это система, которая обеспечивает комплексное заключение, интегрируя как врожденные, так и приобретенные процессы обучения, за счет включения процесса приобретенного обучения, отдельного от врожденного.
В этом приобретенном обучении полученные знания хранятся вне нейронной сети и используются во время вывода.
Следовательно, техническая основа ALIS заключается в извлечении, хранении многоразовых знаний, а также в выборе и использовании знаний во время вывода.
Более того, ALIS — это не просто отдельная базовая технология, но и системная технология, объединяющая врожденное и приобретенное обучение.
Элементы обучающейся интеллектуальной системы
ALIS рассматривает как существующее врожденное, так и будущее приобретенное обучение как функционирующие по одним и тем же принципам в рамках обучения и вывода.
Чтобы объяснить принципы обучения в ALIS, мы определяем пять элементов обучающейся интеллектуальной системы:
Первый — это Интеллектуальный процессор. Он относится к системе обработки, которая выполняет вывод, используя знания, и извлекает знания для обучения.
Типичными примерами интеллектуальных процессоров являются LLM и части человеческого мозга.
Второй — это Хранилище знаний. Оно относится к месту хранения, где извлеченные знания сохраняются и могут быть получены по мере необходимости.
В LLM хранилище знаний — это параметры нейронной сети. У людей оно соответствует долговременной памяти в мозге.
Третий — это Мир. Он относится к внешней среде, воспринимаемой обучающимися интеллектуальными системами, такими как люди или ALIS.
Для человека мир — это сама реальность. В случае LLM механизм, который получает выходные данные от LLM и предоставляет ему обратную связь, считается эквивалентом мира.
Четвертый — это Память состояний. Она относится к внутренней временной памяти, подобной черновику, которую обучающаяся интеллектуальная система использует во время вывода.
В LLM это пространство памяти, используемое во время вывода, известное как скрытые состояния. У людей оно соответствует кратковременной памяти.
Пятый — это Фреймворк. Это так называемая система мышления. В терминологии обучающейся интеллектуальной системы это относится к критериям выбора необходимых знаний во время вывода и логической структуре пространства состояний для организации памяти состояний.
В LLM это семантическая структура скрытых состояний, и, как правило, ее содержимое расплывчато и непонятно для человека. Кроме того, выбор знаний интегрирован в механизм внимания, который выбирает, на какие существующие токены ссылаться для каждого обрабатываемого токена.
Для людей, как упоминалось выше, это система мышления. Когда мышление использует определенную систему мышления, определенные наборы ноу-хау извлекаются из долговременной памяти и загружаются в кратковременную память. Затем воспринимаемая в данный момент информация организуется в соответствии с системой мышления для понимания ситуации.
Принципы работы обучающейся интеллектуальной системы
Обучающаяся интеллектуальная система функционирует следующим образом:
Интеллектуальный процессор воздействует на мир. Мир отвечает результатами, основанными на этом воздействии.
Интеллектуальный процессор извлекает многократно используемые знания из этих результатов и сохраняет их в хранилище знаний.
Когда интеллектуальный процессор многократно воздействует на мир, он выбирает знания из хранилища знаний и использует их для изменения своего способа действия.
Это основной механизм.
Однако, по сути, методы извлечения, хранения, выбора и использования знаний определяют, сможет ли система достичь значимого обучения.
Люди обладают механизмами, которые позволяют эффективно извлекать, хранить, выбирать и использовать знания, что дает им возможность учиться.
Нейронные сети, включая большие языковые модели (LLM), имеют механизмы для хранения, выбора и использования, хотя часть, связанная с извлечением, обрабатывается внешним учителем. Это позволяет им учиться, пока учитель предоставляет входные данные.
Более того, обучающаяся интеллектуальная система может достичь более сложного обучения, также изучая извлечение, хранение и выбор фреймворков, а также их использование в памяти состояний, как знание.
Типы знаний
Исходя из этого принципа, при разработке приобретенного обучения необходимо уточнить, какую форму информации будут принимать приобретенные знания.
Предполагается, что приобретенные знания можно изучать отдельно как параметры нейронной сети.
Однако приобретенные знания не обязательно должны ограничиваться исключительно параметрами нейронной сети. Реалистичным кандидатом являются знания, представленные в виде текста на естественном языке.
Если знания представлены в виде текста на естественном языке, их можно извлекать и использовать, задействуя возможности обработки естественного языка больших языковых моделей (LLM). Кроме того, они могут рассматриваться как данные в обычной ИТ-системе, что упрощает их хранение и выбор.
Более того, знания, представленные в виде текста на естественном языке, легко проверяются, понимаются и, в некоторых случаях, редактируются людьми и другими LLM.
Их также можно совместно использовать с другими обучающимися интеллектуальными системами, а также объединять или разделять.
По этим причинам приобретенные знания в концепции ALIS изначально будут ориентированы на знания, представленные в виде текста на естественном языке.
Приобретенная память состояний и фреймворк
Я объяснил преимущества выбора текстовых знаний на естественном языке в качестве приобретенных знаний.
Аналогично, текстовый формат естественного языка также может использоваться для памяти состояний и фреймворка для вывода.
Фреймворк, являющийся концептуальной структурой, также может храниться и использоваться в хранилище знаний как текстовые знания на естественном языке.
При инициализации или обновлении состояний на основе структуры, определенной этим фреймворком, может использоваться текстовая память состояний.
Разрабатывая 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.
Из этой ветки чата ALIS могла бы затем накопить знания в своем хранилище знаний: в частности, что спецификация 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 в конечном итоге будет применяться в реальном мире и начнет учиться у него.