Искусственный интеллект преобразует мир, одновременно создавая совершенно новый язык для описания происходящих изменений. Проведя всего несколько минут за чтением материалов об ИИ, можно столкнуться с такими понятиями, как LLM, RAG, RLHF и десятками других терминов, которые способны смутить даже самых эрудированных специалистов в сфере технологий. Этот глоссарий призван прояснить эти понятия. Он регулярно обновляется по мере развития области, поэтому его можно рассматривать как «живой документ», подобно самим описываемым системам ИИ.
Общий искусственный интеллект, или ОИИ (Artificial General Intelligence, AGI), — это нечёткое понятие, которое, как правило, относится к ИИ, превосходящему среднего человека во многих, если не в большинстве, задач. Сэм Альтман, глава компании OpenAI, однажды описал ОИИ как «аналог среднего человека, которого можно нанять в качестве коллеги». В свою очередь, устав OpenAI определяет ОИИ как «высокоавтономные системы, превосходящие людей в большинстве экономически ценных видов работы». Понимание Google DeepMind несколько отличается от этих двух определений; лаборатория рассматривает ОИИ как «ИИ, который по своим способностям как минимум равен человеку в большинстве когнитивных задач». Если это вызывает недоумение, стоит отметить, что даже ведущие эксперты в области исследований ИИ сталкиваются с подобными трудностями.
Агент ИИ (AI agent) — это инструмент, использующий технологии ИИ для выполнения ряда задач от имени пользователя, что выходит за рамки возможностей обычного чат-бота. Примерами таких задач могут быть оформление расходов, бронирование билетов или столика в ресторане, а также написание и поддержка программного кода. Однако, как отмечается в обзорах, эта развивающаяся область включает множество движущихся частей, поэтому термин «агент ИИ» может иметь разные значения для разных людей. Инфраструктура для реализации его предполагаемых возможностей всё ещё находится в стадии активной разработки. Тем не менее, базовая концепция подразумевает автономную систему, которая может использовать несколько ИИ-систем для выполнения многоэтапных задач.
Конечные точки API (API endpoints) можно представить как «кнопки» на внутренней стороне программного обеспечения, которые другие программы могут нажимать для выполнения определённых действий. Разработчики используют эти интерфейсы для создания интеграций — например, позволяя одному приложению получать данные из другого или давая агенту ИИ возможность напрямую управлять сторонними сервисами без ручного вмешательства человека в каждый интерфейс. Большинство устройств для умного дома и подключённых платформ имеют такие скрытые кнопки, даже если обычные пользователи никогда их не видят и не взаимодействуют с ними. По мере того как агенты ИИ становятся более способными, они всё чаще могут находить и использовать эти конечные точки самостоятельно, открывая мощные — а иногда и неожиданные — возможности для автоматизации.
Получив простой вопрос, человеческий мозг может ответить на него, не задумываясь — например, «какое животное выше, жираф или кошка?». Однако во многих случаях для получения правильного ответа требуется ручка и бумага, поскольку существуют промежуточные шаги. Например, если у фермера есть куры и коровы, и вместе у них 40 голов и 120 ног, для получения ответа (20 кур и 20 коров) может потребоваться записать простое уравнение.
В контексте ИИ, метод цепочки рассуждений (chain-of-thought reasoning) для больших языковых моделей означает разбиение проблемы на более мелкие, промежуточные шаги для улучшения качества конечного результата. Обычно на получение ответа уходит больше времени, но при этом вероятность его корректности выше, особенно в логических или программистских задачах. Модели рассуждений разрабатываются на основе традиционных больших языковых моделей и оптимизированы для использования метода цепочки рассуждений благодаря обучению с подкреплением.
(См.: Большая языковая модель)
Это более специфическое понятие, чем «агент ИИ», который представляет собой программу, способную самостоятельно выполнять действия шаг за шагом для достижения цели. Кодирующий агент (coding agent) — это специализированная версия, применяемая в разработке программного обеспечения. Вместо того чтобы просто предлагать код для проверки и вставки человеком, кодирующий агент может автономно писать, тестировать и отлаживать код, выполняя итеративную работу методом проб и ошибок, которая обычно занимает много времени у разработчика. Эти агенты могут работать с целыми кодовыми базами, выявляя ошибки, запуская тесты и внедряя исправления с минимальным человеческим контролем. Это похоже на найм очень быстрого стажёра, который никогда не спит и всегда сосредоточен, хотя, как и в случае с любым стажёром, человеку всё ещё необходимо проверять его работу.
Хотя термин «вычислительная мощность» (compute) является несколько многозначным, он, как правило, относится к жизненно важным вычислительным ресурсам, которые позволяют моделям ИИ функционировать. Этот тип обработки данных питает индустрию ИИ, давая ей возможность обучать и развёртывать свои мощные модели. Термин часто используется как краткое обозначение аппаратного обеспечения, обеспечивающего вычислительную мощность, — такого как графические процессоры (GPU), центральные процессоры (CPU), тензорные процессоры (TPU) и другие формы инфраструктуры, которые составляют основу современной индустрии ИИ.
Глубокое обучение (Deep learning) — это подраздел самосовершенствующегося машинного обучения, в котором алгоритмы ИИ проектируются с многослойной структурой искусственной нейронной сети (ИНС). Это позволяет им устанавливать более сложные корреляции по сравнению с более простыми системами машинного обучения, такими как линейные модели или деревья решений. Структура алгоритмов глубокого обучения черпает вдохновение из взаимосвязанных путей нейронов в человеческом мозге.
Модели ИИ на основе глубокого обучения способны самостоятельно выявлять важные характеристики в данных, не требуя от инженеров-людей определения этих признаков. Эта структура также поддерживает алгоритмы, которые могут учиться на ошибках и, через процесс повторения и корректировки, улучшать свои результаты. Однако системы глубокого обучения требуют большого количества точек данных для получения хороших результатов (миллионы или более). Они также, как правило, требуют больше времени на обучение по сравнению с более простыми алгоритмами машинного обучения, поэтому затраты на разработку обычно выше.
(См.: Нейронная сеть)
Диффузия (Diffusion) — это технология, лежащая в основе многих ИИ-моделей, генерирующих изображения, музыку и текст. Вдохновлённые физикой, диффузионные системы медленно «разрушают» структуру данных — например, фотографий, песен и так далее — путём добавления шума до тех пор, пока ничего не останется. В физике диффузия спонтанна и необратима — сахар, растворённый в кофе, не может быть восстановлен до состояния кубика. Но диффузионные системы в ИИ стремятся освоить своего рода процесс «обратной диффузии», чтобы восстановить разрушенные данные, тем самым обретая способность восстанавливать данные из шума.
Дистилляция (Distillation) — это метод, используемый для извлечения знаний из большой модели ИИ с помощью модели «учитель-ученик». Разработчики отправляют запросы модели-учителю и записывают её ответы. Ответы иногда сравниваются с набором данных для оценки их точности. Затем эти ответы используются для обучения модели-ученика, которая обучается аппроксимировать поведение учителя.
Дистилляция может использоваться для создания меньшей, более эффективной модели на основе большей модели с минимальными потерями при дистилляции. Вероятно, именно так OpenAI разработала GPT-4 Turbo, более быструю версию GPT-4.
Хотя все компании, работающие с ИИ, используют дистилляцию внутри своих систем, она также могла быть использована некоторыми компаниями для достижения уровня передовых моделей конкурентов. Дистилляция от конкурента обычно нарушает условия использования API и чат-помощников на базе ИИ.
Тонкая настройка (Fine-tuning) относится к дальнейшему обучению модели ИИ для оптимизации производительности под более конкретную задачу или область, чем та, которая была основным фокусом её первоначального обучения. Это обычно достигается путём подачи новых, специализированных (то есть ориентированных на задачу) данных.
Многие стартапы в области ИИ используют большие языковые модели в качестве отправной точки для создания коммерческого продукта, но стремятся повысить их полезность для целевого сектора или задачи, дополняя более ранние циклы обучения тонкой настройкой, основанной на их собственных предметных знаниях и опыте.
(См.: Большая языковая модель)
ГАН (Generative Adversarial Network, GAN), или генеративно-состязательная сеть, — это тип фреймворка машинного обучения, который лежит в основе некоторых важных разработок в генеративном ИИ, касающихся создания реалистичных данных, включая (но не ограничиваясь этим) инструменты для создания дипфейков. ГАНы включают использование пары нейронных сетей, одна из которых, опираясь на свои обучающие данные, генерирует выходные данные, которые передаются другой модели для оценки.
Две модели по сути запрограммированы на то, чтобы превзойти друг друга. Генератор пытается провести свой вывод мимо дискриминатора, в то время как дискриминатор работает над выявлением искусственно сгенерированных данных. Это структурированное состязание может оптимизировать результаты ИИ, делая их более реалистичными без необходимости дополнительного вмешательства человека. Однако ГАНы лучше всего работают для более узких приложений (таких как создание реалистичных фотографий или видео), а не для ИИ общего назначения.
Галлюцинации (Hallucination) — это термин, используемый в индустрии ИИ для описания ситуации, когда модели ИИ буквально «выдумывают» информацию, генерируя неверные данные. Очевидно, что это огромная проблема для качества ИИ.
Галлюцинации приводят к тому, что результаты генеративного ИИ могут вводить в заблуждение и даже создавать реальные риски, потенциально с опасными последствиями (например, запрос о здоровье, который выдаёт вредный медицинский совет).
Считается, что проблема фальсификации информации ИИ возникает из-за пробелов в обучающих данных. Галлюцинации способствуют переходу к всё более специализированным и/или вертикальным моделям ИИ, то есть к предметно-ориентированным ИИ, требующим более узкой экспертизы, — это рассматривается как способ уменьшить вероятность пробелов в знаниях и снизить риски дезинформации.
Инференция (Inference) — это процесс запуска модели ИИ. Это означает предоставление модели свободы для создания предсказаний или извлечения выводов из ранее увиденных данных. Важно отметить, что инференция невозможна без обучения; модель должна изучить паттерны в наборе данных, прежде чем она сможет эффективно экстраполировать эти данные.
Многие типы аппаратного обеспечения могут выполнять инференцию, начиная от процессоров смартфонов и заканчивая мощными графическими процессорами (GPU) и специально разработанными ИИ-акселераторами. Однако не все из них могут запускать модели одинаково хорошо. Очень большим моделям потребовалось бы много времени для создания предсказаний, например, на ноутбуке по сравнению с облачным сервером с высокопроизводительными чипами ИИ.
(См.: Обучение)
Большие языковые модели, или LLM (Large Language Models), — это модели ИИ, используемые популярными ИИ-ассистентами, такими как ChatGPT, Claude, Google Gemini, Meta* Llama, Microsoft Copilot или Mistral Le Chat. При общении с ИИ-ассистентом пользователь взаимодействует с большой языковой моделью, которая обрабатывает его запрос напрямую или с помощью различных доступных инструментов, таких как веб-браузинг или интерпретаторы кода.
LLM представляют собой глубокие нейронные сети, состоящие из миллиардов числовых параметров (или весов, см. ниже), которые изучают взаимосвязи между словами и фразами и создают представление языка — своего рода многомерную карту слов.
Эти модели создаются путём кодирования паттернов, найденных в миллиардах книг, статей и расшифровок. Когда пользователь отправляет запрос LLM, модель генерирует наиболее вероятный паттерн, соответствующий запросу.
(См.: Нейронная сеть)
Кэш памяти (Memory cache) относится к важному процессу, который ускоряет инференцию (процесс, посредством которого ИИ генерирует ответ на запрос пользователя). По сути, кэширование — это техника оптимизации, разработанная для повышения эффективности инференции. ИИ, очевидно, основан на высокоинтенсивных математических вычислениях, и каждое такое вычисление требует значительной энергии. Кэширование призвано сократить количество вычислений, которые модель может выполнять, сохраняя определённые расчёты для будущих запросов пользователей и операций. Существуют различные виды кэширования памяти, хотя одним из наиболее известных является KV-кэширование (или key-value caching). KV-кэширование работает в моделях-трансформерах и повышает эффективность, обеспечивая более быстрые результаты за счёт сокращения времени (и алгоритмического труда), необходимого для генерации ответов на вопросы пользователей.
(См.: Инференция)
Нейронная сеть (Neural network) относится к многослойной алгоритмической структуре, лежащей в основе глубокого обучения, и, в более широком смысле, всего бурного развития генеративных ИИ-инструментов после появления больших языковых моделей.
Хотя идея заимствования вдохновения из плотно взаимосвязанных путей человеческого мозга в качестве структуры дизайна для алгоритмов обработки данных восходит к 1940-м годам, именно гораздо более недавний рост аппаратного обеспечения для графических процессоров (GPU) — благодаря индустрии видеоигр — действительно раскрыл мощь этой теории. Эти чипы оказались хорошо приспособлены для обучения алгоритмов с гораздо большим количеством слоёв, чем это было возможно в более ранние эпохи, что позволило ИИ-системам на основе нейронных сетей достичь значительно лучшей производительности во многих областях, включая распознавание голоса, автономную навигацию и открытие лекарств.
(См.: Большая языковая модель)
Открытый исходный код (Open source) относится к программному обеспечению — или, всё чаще, к моделям ИИ, — где базовый код общедоступен для использования, изучения или изменения любым желающим. В мире ИИ ярким примером является семейство моделей Llama от Meta*. Linux — это известный исторический параллель в операционных системах. Подходы с открытым исходным кодом позволяют исследователям, разработчикам и компаниям по всему миру опираться на работу друг друга, ускоряя прогресс и обеспечивая независимые аудиты безопасности, которые закрытые системы не могут легко предоставить. Закрытый исходный код означает, что код является частным — можно использовать продукт, но нельзя увидеть, как он работает, как в случае с моделями GPT от OpenAI. Это различие стало одним из определяющих дебатов в индустрии ИИ.
Параллелизация (Parallelization) означает выполнение многих задач одновременно вместо последовательного выполнения — это похоже на то, как 10 сотрудников работают над разными частями проекта одновременно, а не один сотрудник выполняет всё по очереди. В ИИ параллелизация является фундаментальной как для обучения, так и для инференции: современные GPU специально разработаны для выполнения тысяч вычислений параллельно, что является одной из основных причин, почему они стали аппаратной основой индустрии. По мере того как ИИ-системы становятся всё более сложными, а модели — всё более крупными, способность к параллелизации работы между множеством чипов и множеством машин стала одним из важнейших факторов, определяющих скорость и экономичность создания и развёртывания моделей. Исследования лучших стратегий параллелизации теперь являются самостоятельной областью.
«RAMageddon» — это новый, но не очень весёлый термин для обозначения тенденции, охватывающей технологическую индустрию: постоянно растущая нехватка оперативной памяти (RAM), которая питает практически все технологические продукты, используемые в повседневной жизни. По мере расцвета индустрии ИИ крупнейшие технологические компании и ИИ-лаборатории — все стремящиеся к созданию самого мощного и эффективного ИИ — скупают столько оперативной памяти для своих центров обработки данных, что её почти не остаётся для остальных. И это узкое место в поставках означает, что то, что осталось, становится всё дороже и дороже.
Это касается таких отраслей, как игровая индустрия (где крупные компании были вынуждены поднять цены на консоли из-за трудностей с поиском чипов памяти для своих устройств), потребительская электроника (где нехватка памяти может вызвать самое большое снижение поставок смартфонов за более чем десять лет) и общекорпоративные вычисления (поскольку эти компании не могут получить достаточно оперативной памяти для своих собственных центров обработки данных). Ожидается, что рост цен прекратится только после окончания страшной нехватки, но, к сожалению, пока нет никаких признаков того, что это произойдёт в ближайшее время.
Как и ОИИ, рекурсивное самосовершенствование (Recursive self-improvement) является порогом для того, насколько умным может стать ИИ и насколько мало он может зависеть от людей. В сценарии рекурсивного самосовершенствования модели ИИ начинают улучшать себя без вмешательства человека, что приводит к огромному ускорению возможностей и автономии. В некоторых рассказах это было бы катастрофическим моментом, сродни сингулярности, моменту, когда модели ИИ становятся невосприимчивыми к внешнему вмешательству. Но рекурсивное самосовершенствование также описывает базовую способность — может ли модель ИИ спроектировать своего собственного преемника? — что значительно облегчает инженерам попытки её создания. Ряд недавних стартапов в области ИИ поставили целью создание рекурсивно самосовершенствующихся моделей, но большинство из них отвергают апокалиптические последствия, представляя рекурсивное самосовершенствование просто как следующий рубеж для исследований.
Обучение с подкреплением (Reinforcement learning) — это способ обучения ИИ, при котором система учится методом проб и ошибок, получая вознаграждение за правильные ответы — как дрессировка домашнего питомца лакомствами, за исключением того, что «питомец» в этом сценарии — это нейронная сеть, а «лакомство» — это математический сигнал, указывающий на успех. В отличие от обучения с учителем, где модель обучается на фиксированном наборе размеченных примеров, обучение с подкреплением позволяет модели исследовать свою среду, выполнять действия и постоянно обновлять своё поведение на основе получаемой обратной связи. Этот подход оказался особенно мощным для обучения ИИ играть в игры, управлять роботами и, в последнее время, оттачивать способность к рассуждению у больших языковых моделей. Такие методы, как обучение с подкреплением на основе обратной связи от человека (RLHF), теперь занимают центральное место в том, как ведущие ИИ-лаборатории тонко настраивают свои модели, чтобы сделать их более полезными, точными и безопасными.
В контексте коммуникации человека с машиной существуют очевидные сложности — люди общаются с помощью естественного языка, в то время как программы ИИ выполняют задачи посредством сложных алгоритмических процессов, основанных на данных. Токены (Token) устраняют этот разрыв: они являются базовыми строительными блоками человеко-машинного общения, представляя собой дискретные сегменты данных, обработанные или произведённые LLM. Они создаются в процессе, называемом токенизацией, который разбивает необработанный текст на небольшие единицы, понятные языковой модели, подобно тому, как компилятор переводит человеческий язык в двоичный код, который может понять компьютер. В корпоративной среде токены также определяют стоимость — большинство компаний, работающих с ИИ, взимают плату за использование LLM на основе токенов, что означает: чем больше бизнес использует, тем больше он платит.
Итак, токены — это небольшие фрагменты текста (часто части слов, а не целые), на которые языковые модели ИИ разбивают язык перед обработкой; для понимания рабочей нагрузки ИИ они примерно аналогичны «словам». Пропускная способность (Throughput) относится к тому, сколько может быть обработано за определённый период времени, поэтому пропускная способность токенов, по сути, является мерой того, сколько работы ИИ система может обрабатывать одновременно. Высокая пропускная способность токенов — ключевая цель для команд инфраструктуры ИИ, поскольку она определяет, скольким пользователям модель может одновременно предоставлять услуги и как быстро каждый из них получает ответ. Исследователь ИИ Андрей Карпати описывал своё беспокойство, когда его подписки на ИИ простаивали — это напоминает чувство, которое он испытывал, будучи аспирантом, когда дорогостоящее компьютерное оборудование не использовалось в полную силу. Этот настрой отражает, почему максимизация пропускной способности токенов стала своего рода навязчивой идеей в этой области.
Разработка ИИ на основе машинного обучения включает процесс, известный как обучение (Training). Проще говоря, это процесс подачи данных для того, чтобы модель могла учиться на паттернах и генерировать полезные результаты. По сути, это процесс, при котором система реагирует на характеристики в данных, что позволяет ей адаптировать результаты для достижения искомой цели — будь то идентификация изображений кошек или создание хайку по запросу.
Обучение может быть дорогостоящим, поскольку оно требует большого количества входных данных, и их объёмы имеют тенденцию к увеличению. Именно поэтому гибридные подходы, такие как тонкая настройка ИИ на основе правил с целевыми данными, могут помочь управлять затратами без необходимости начинать с нуля.
(См.: Инференция)
Трансферное обучение (Transfer learning) — это метод, при котором ранее обученная модель ИИ используется в качестве отправной точки для разработки новой модели для другой, но обычно связанной задачи, что позволяет повторно применять знания, полученные в предыдущих циклах обучения.
Трансферное обучение может обеспечить экономию за счёт сокращения процесса разработки модели. Оно также может быть полезно, когда данные для задачи, для которой разрабатывается модель, несколько ограничены. Однако важно отметить, что этот подход имеет ограничения. Модели, которые полагаются на трансферное обучение для получения обобщённых способностей, вероятно, потребуют обучения на дополнительных данных, чтобы хорошо работать в своей целевой области.
(См.: Тонкая настройка)
Потери валидации (Validation loss) — это число, которое показывает, насколько хорошо модель ИИ учится во время обучения; чем ниже значение, тем лучше. Исследователи внимательно отслеживают его как своего рода отчёт в реальном времени, используя его для принятия решений о том, когда остановить обучение, когда настроить гиперпараметры или следует ли исследовать потенциальную проблему. Одна из ключевых проблем, которую он помогает выявить, — это переобучение (overfitting), состояние, при котором модель запоминает свои обучающие данные, а не по-настоящему изучает паттерны, которые она может обобщить на новые ситуации. Это можно сравнить с разницей между студентом, который действительно понимает материал, и тем, кто просто запомнил прошлогодний экзамен — потери валидации помогают определить, кем становится ваша модель.
Веса (Weights) являются ключевым элементом обучения ИИ, поскольку они определяют, какое значение (или «вес») придаётся различным признакам (или входным переменным) в данных, используемых для обучения системы, тем самым формируя выходные данные модели ИИ.
Иными словами, веса — это числовые параметры, которые определяют, что является наиболее важным в наборе данных для данной задачи обучения. Они выполняют свою функцию, применяя умножение к входным данным. Обучение модели обычно начинается со случайно присвоенных весов, но по мере развития процесса веса корректируются, поскольку модель стремится получить выходные данные, которые более точно соответствуют целевому значению.
Например, модель ИИ для прогнозирования цен на жильё, обученная на исторических данных о недвижимости для целевого местоположения, может включать веса для таких признаков, как количество спален и ванных комнат, является ли недвижимость отдельно стоящей или сблокированной, есть ли парковка, гараж и так далее.
В конечном итоге, веса, которые модель присваивает каждому из этих входных данных, отражают, насколько они влияют на стоимость недвижимости, исходя из данного набора данных.
* — деятельность компании запрещена на территории РФ