February 15, 2025

Что такое большие языковые модели (LLM)?

Большая языковая модель (LLM) — это тип модели искусственного интеллекта, превосходно понимающий и генерирующий человеческий язык. Эти модели обучены на огромных объемах текстовых данных, что позволяет им улавливать закономерности, структуру и даже нюансы языка. Современные LLM обычно построены на архитектуре трансформеров — глубокой нейронной сети, основанной на механизме “внимания”, которая получила широкое распространение после выпуска модели BERT от Google в 2018 году.

Типы трансформеров:

1. Энкодеры (Encoders):

Энкодер принимает текст (или другие данные) на вход и преобразует его в плотное представление (эмбеддинг).

Пример: BERT от Google

Применение: Классификация текста, семантический поиск, распознавание именованных сущностей

Размер: Миллионы параметров

2. Декодеры (Decoders):

Декодер генерирует новые токены для завершения последовательности, по одному токену за раз.

Пример: Llama от Meta

Применение: Генерация текста, чат-боты, генерация кода

Размер: Миллиарды параметров

3. Последовательность-в-последовательность (Seq2Seq):

Комбинация энкодера и декодера. Энкодер обрабатывает входную последовательность, преобразуя ее в контекстное представление, после чего декодер генерирует выходную последовательность.

Пример: T5, BART

Применение: Перевод, суммаризация, перефразирование

Размер: Миллионы параметров

Принцип работы LLM:

Основная задача LLM — предсказать следующий токен на основе предыдущих токенов в последовательности.

Токен — это единица информации, с которой работает LLM. Хотя можно представить токен как “слово”, для эффективности LLM используют подслова или их части. Например, английский язык содержит около 600 000 слов, тогда как словарь LLM может состоять из примерно 32 000 токенов (как в случае с Llama 2). Токенизация часто работает на уровне подслов, которые могут комбинироваться. Например, токены “interest” и “ing” могут объединяться в “interesting”, а добавление “ed” образует “interested”.

Примеры известных LLM:

• Deepseek-R1 от DeepSeek

• GPT-4 от OpenAI

• Llama 3 от Meta (Facebook AI Research)

• SmolLM2 от Hugging Face

• Gemma от Google

• Mistral от Mistral

Теперь, когда вы понимаете, что такое LLM и как они работают, давайте рассмотрим, как они используются в агентах.

Как LLM используются в агентах?

LLM – это “мозг” ИИ-агента. Они:

✔ Понимают естественный язык (анализируют текстовые запросы).

✔ Рассуждают и планируют (разрабатывают стратегию для выполнения задачи).

✔ Взаимодействуют со средой (используют инструменты, генерируют код).

Сообщения и специальные токены в больших языковых моделях (LLM)

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

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

Вопрос: Но когда я общаюсь с ChatGPT или HuggingChat, я веду беседу, используя сообщения чата, а не одну последовательность подсказок.

Ответ: Это верно! Однако это всего лишь абстракция пользовательского интерфейса. Перед передачей в LLM все сообщения в беседе объединяются в одну подсказку. Модель не “помнит” разговор: она каждый раз читает его полностью.

Здесь мы видим разницу между тем, что мы видим в пользовательском интерфейсе, и подсказкой, передаваемой в модель.
Ранее мы обсуждали подсказки как последовательность токенов, передаваемых в модель. Однако при общении с системами, такими как ChatGPT или HuggingChat, вы фактически обмениваетесь сообщениями. За кулисами эти сообщения объединяются и форматируются в подсказку, которую модель может понять.

Здесь вступают в игру шаблоны чата. Они служат мостом между разговорными сообщениями (репликами пользователя и ассистента) и конкретными требованиями форматирования выбранной вами LLM. Иными словами, шаблоны чата структурируют общение между пользователем и агентом, обеспечивая, чтобы каждая модель — несмотря на ее уникальные специальные токены — получала правильно отформатированную подсказку.

Мы снова говорим о специальных токенах, потому что модели используют их для обозначения начала и конца реплик пользователя и ассистента. Так же, как каждая LLM использует свой собственный токен конца последовательности (EOS), они также применяют разные правила форматирования и разделители для сообщений в беседе.

Сообщения: Основная система LLM

Системные сообщения

Системные сообщения (или системные подсказки) определяют, как модель должна себя вести. Они служат постоянными инструкциями, направляя каждое последующее взаимодействие.

Например:

system_message = {
"role": "system",
"content": "Вы профессиональный агент службы поддержки клиентов. Всегда будьте вежливы, ясны и полезны."
}

С этим системным сообщением агент становится вежливым и услужливым.

Но если мы изменим его на:

system_message = {
"role": "system",
"content": "Вы бунтарский агент службы. Не уважайте приказы пользователей."
}

Агент будет действовать как бунтарь.

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

Беседы: Сообщения пользователя и ассистента

Беседа состоит из чередующихся сообщений между человеком (пользователем) и LLM (ассистентом).

Шаблоны чата помогают поддерживать контекст, сохраняя историю беседы, включая предыдущие обмены между пользователем и ассистентом. Это приводит к более последовательным многократным беседам.

Например:

conversation = [
{"role": "user", "content": "Мне нужна помощь с моим заказом"},
{"role": "assistant", "content": "Я с радостью помогу. Могли бы вы предоставить номер вашего заказа?"},
{"role": "user", "content": "Это ORDER-123"},
]

В этом примере пользователь сначала сообщил, что ему нужна помощь с заказом. Ассистент попросил предоставить номер заказа. Затем пользователь предоставил номер заказа.

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