Полный гайд по LLM для разработчиков — как устроены, как выбрать, как использовать через API
Исчерпывающее руководство по большим языковым моделям для разработчиков. От архитектуры трансформеров до практической работы с API, развёртывания open-source моделей и оптимизации затрат — всё в одной статье.
Большие языковые модели перестали быть экзотикой. Сегодня LLM — это рабочий инструмент, который встраивается в продакшн-системы, автоматизирует рутину и создаёт новые категории продуктов. Но между «поиграть с ChatGPT» и «интегрировать LLM в свой сервис» — пропасть из архитектурных решений, инженерных компромиссов и неочевидных подводных камней.
Этот гайд — для разработчиков, которые хотят разобраться в LLM системно: от внутреннего устройства до практической работы через API. Мы пройдём весь путь — от механизма внимания до оптимизации счетов за токены.
Если вы только начинаете знакомство с темой, рекомендуем сначала прочитать нашу вводную статью «Что такое LLM — большие языковые модели», а затем вернуться сюда за техническими деталями.
Содержание
- Что такое LLM и как они работают
- Ключевые параметры LLM
- Как выбрать LLM для своей задачи
- Работа с LLM через API
- Open-source модели и локальное развёртывание
- RAG, fine-tuning и prompt engineering
- Оптимизация затрат и практические советы
- Модели рассуждения — новый класс LLM
- Тренды и будущее LLM
- Заключение
Что такое LLM и как они работают
Большая языковая модель (Large Language Model, LLM) — это нейронная сеть с миллиардами параметров, обученная предсказывать следующий токен в последовательности. Звучит обманчиво просто, но именно эта простая формулировка порождает способности, которые мы наблюдаем: генерация текста, перевод, анализ кода, рассуждения и даже подобие «понимания» контекста.
Подробный разбор терминологии вы найдёте в нашем словаре терминов LLM — здесь мы сосредоточимся на том, что важно для практической работы.
Архитектура трансформеров
Все современные LLM построены на архитектуре Transformer, предложенной в знаменитой статье «Attention Is All You Need» (2017). До трансформеров для работы с последовательностями использовались рекуррентные сети (RNN, LSTM), но они обрабатывали токены последовательно и плохо масштабировались.
Трансформер решил обе проблемы: он обрабатывает всю последовательность параллельно и эффективно масштабируется на тысячи GPU. Ключевые компоненты:
- Embedding layer — преобразует токены в числовые векторы (эмбеддинги). Каждый токен становится точкой в многомерном пространстве, где семантически близкие слова расположены рядом.
- Positional encoding — добавляет информацию о позиции токена в последовательности. Без этого модель не различала бы порядок слов.
- Transformer blocks — стек из десятков (или сотен) одинаковых блоков, каждый из которых содержит слой внимания и feed-forward сеть. Чем больше блоков — тем «глубже» модель и тем сложнее паттерны она способна выучить.
- Output head — финальный слой, преобразующий внутреннее представление обратно в распределение вероятностей по словарю токенов.
Большинство современных LLM (GPT, Llama, Mistral) используют decoder-only архитектуру — модель генерирует текст авторегрессионно, токен за токеном, каждый раз опираясь на весь предыдущий контекст. Модели типа BERT используют encoder-only архитектуру (хороши для классификации, но не для генерации), а оригинальный T5 — полный encoder-decoder.
Механизм внимания (Attention)
Внимание — это то, что делает трансформеры по-настоящему мощными. Механизм self-attention позволяет каждому токену «смотреть» на все остальные токены в последовательности и решать, какие из них наиболее релевантны в текущем контексте.
Математически это выглядит так:
Attention(Q, K, V) = softmax(QK^T / sqrt(d_k)) * VГде Q (Query), K (Key), V (Value) — это линейные проекции входных эмбеддингов, а d_k — размерность ключей. Интуитивно: Query — это «вопрос» токена, Key — «ключ» для сопоставления, Value — «значение», которое передаётся при совпадении.
Multi-head attention расширяет эту идею: вместо одного набора Q, K, V используется несколько «голов» внимания, каждая из которых учится обращать внимание на разные аспекты — синтаксис, семантику, позицию, стиль.
Именно внимание объясняет, почему LLM так хорошо работают с длинным контекстом: каждый генерируемый токен может «обратиться» к любой части входного промпта. Но у этого есть цена — вычислительная сложность O(n^2) относительно длины последовательности.
Токенизация: как модель видит текст
LLM не работают с символами или словами напрямую. Входной текст разбивается на токены — подслова, выделенные алгоритмами вроде BPE (Byte Pair Encoding) или SentencePiece. Типичный словарь содержит 32 000–128 000 токенов.
Важные практические следствия для разработчиков:
- Один токен — это примерно 3–4 символа для английского и 1–2 символа для русского текста. Русский язык «дороже» в токенах примерно в 2–3 раза.
- Код обычно токенизируется эффективнее, чем естественный язык, но пробелы и отступы тоже расходуют токены.
- Токенизатор может разбить одно слово на несколько токенов. Это важно для задач, связанных с подсчётом символов или манипуляциями со строками — LLM в них слабы именно из-за токенизации.
- Разные модели используют разные токенизаторы. Промпт из 1000 токенов для GPT-4o может превратиться в 1200 токенов для Claude.
Обучение: pre-training, RLHF, DPO
Обучение современной LLM проходит в несколько этапов:
- Pre-training — модель обучается на триллионах токенов из интернета, книг, кода. Задача — предсказывать следующий токен. На этом этапе формируются «знания» модели. Это самый дорогой этап — десятки миллионов долларов на вычисления.
- Supervised Fine-Tuning (SFT) — модель дообучается на примерах диалогов «вопрос-ответ», составленных людьми. Это учит модель следовать инструкциям.
- RLHF / DPO — выравнивание (alignment) модели с человеческими предпочтениями. RLHF (Reinforcement Learning from Human Feedback) использует модель вознаграждения и PPO-алгоритм. DPO (Direct Preference Optimization) — более новый и простой подход, напрямую оптимизирующий предпочтения без отдельной reward model.
Понимание этих этапов важно для практики: если вам нужно адаптировать модель под свою задачу, вы будете работать с fine-tuning — третьим и четвёртым этапами. Подробнее об этом — в нашем гайде по fine-tuning языковых моделей.
Ключевые параметры LLM
При работе с LLM через API вы столкнётесь с набором параметров, которые напрямую влияют на качество, стоимость и поведение модели. Разберём самые важные.
Контекстное окно
Контекстное окно (context window) — максимальное количество токенов, которое модель может обработать за один вызов. Сюда входит и ваш промпт (input), и ответ модели (output).
Размеры контекстных окон в 2026 году:
- GPT-4o — 128K токенов
- Claude Opus / Sonnet — 200K токенов
- Gemini 2.5 Pro — 1M токенов
- Llama 4 — до 10M токенов (в зависимости от варианта)
Большое контекстное окно не означает, что модель одинаково хорошо «помнит» всё содержимое. Исследования показывают эффект «lost in the middle» — информация в середине длинного контекста обрабатывается хуже, чем в начале и конце. На практике: размещайте самую важную информацию в начале и в конце промпта.
Кроме того, длинный контекст стоит дорого: стоимость вызова API линейно зависит от количества входных токенов. Если вы передаёте 100K токенов, но реально нужны только 5K — вы переплачиваете в 20 раз.
Temperature и Top-p
Эти параметры управляют «креативностью» модели — а точнее, степенью случайности при выборе следующего токена.
Temperature (от 0 до 2, обычно 0–1):
temperature=0— модель выбирает наиболее вероятный токен. Результат почти детерминированный (почти — потому что некоторые провайдеры добавляют небольшой шум). Подходит для задач, где нужна точность: парсинг данных, классификация, извлечение фактов.temperature=0.3–0.7— баланс между креативностью и предсказуемостью. Хороший выбор для большинства задач: написание кода, ответы на вопросы, суммаризация.temperature=0.8–1.0— высокая вариативность. Используйте для креативного письма, брейнсторминга, генерации идей.
Top-p (nucleus sampling, от 0 до 1):
Вместо рассмотрения всех возможных токенов модель рассматривает только минимальный набор, чья суммарная вероятность >= top-p. При top_p=0.1 модель выбирает из очень узкого набора наиболее вероятных токенов. При top_p=0.95 — рассматривает почти все варианты.
Практический совет: не меняйте оба параметра одновременно. Выберите один из них для управления случайностью. OpenAI рекомендует менять либо temperature, либо top_p, но не оба сразу.
Подсчёт токенов и лимиты
Точный подсчёт токенов критичен для контроля затрат и соблюдения лимитов. Инструменты:
- tiktoken (Python) — библиотека от OpenAI для подсчёта токенов моделей GPT.
- Anthropic tokenizer — доступен через API для подсчёта токенов Claude.
- Простое эвристическое правило: для английского текста ~4 символа = 1 токен, для русского ~2 символа = 1 токен.
import tiktoken
enc = tiktoken.encoding_for_model("gpt-4o")
tokens = enc.encode("Привет, мир! Hello, world!")
print(f"Количество токенов: {len(tokens)}") # ~10-12 токеновВажные лимиты, о которых нужно помнить:
- Max output tokens — максимальное количество токенов в ответе модели (задаётся отдельно, обычно 4096–8192 по умолчанию).
- Rate limits — ограничения на количество запросов и токенов в минуту. Зависят от тарифного плана.
- Batch API — многие провайдеры предлагают пакетные API со скидкой 50%, но с задержкой обработки до 24 часов.
Как выбрать LLM для своей задачи
Выбор модели — одно из первых и самых важных решений в проекте с LLM. Единственной «лучшей» модели не существует — есть модель, оптимальная для вашей конкретной задачи, бюджета и требований к задержке. Подробный разбор критериев выбора мы сделали в статье «Как выбрать языковую модель», здесь — ключевые принципы.
Критерии сравнения:
- Качество для вашей задачи — бенчмарки (MMLU, HumanEval, GPQA) дают общее представление, но единственный надёжный способ — протестировать на ваших данных. Соберите evaluation set из 50–100 примеров и прогоните через кандидатов.
- Задержка (latency) — время до первого токена (TTFT) и скорость генерации (tokens/sec). Для чат-ботов критична TTFT < 1 сек. Для пакетной обработки данных — не важна.
- Стоимость — складывается из цены за входные и выходные токены. Выходные токены обычно в 3–5 раз дороже входных. Для больших объёмов разница между моделями может быть на порядок.
- Контекстное окно — если вы работаете с длинными документами, это критический параметр.
- Мультимодальность — нужна ли обработка изображений, аудио, видео?
- Приватность и compliance — можете ли вы отправлять данные во внешний API? Если нет — нужны open-source модели и локальное развёртывание.
Практическая стратегия: начните с самой мощной доступной модели (Claude Opus, GPT-4o), убедитесь, что задача в принципе решаема, затем проверьте, справится ли модель дешевле (Claude Haiku, GPT-4o mini). Часто 80% задач решаются моделью в 10 раз дешевле.
Наше сравнение ведущих моделей на русском языке можно посмотреть в статье «GPT-4o vs Claude vs Gemini — тест на русском».
Работа с LLM через API
API — основной способ интеграции LLM в продакшн-системы. Все крупные провайдеры предлагают REST API с похожей моделью взаимодействия: вы отправляете массив сообщений, получаете ответ.
OpenAI API
OpenAI задала стандарт де-факто для LLM API. Многие open-source решения (vLLM, Ollama) реализуют совместимый интерфейс.
from openai import OpenAI
client = OpenAI(api_key="sk-...")
response = client.chat.completions.create(
model="gpt-4o",
messages=[
{"role": "system", "content": "Ты — полезный ассистент."},
{"role": "user", "content": "Объясни, что такое трансформер в 3 предложениях."}
],
temperature=0.7,
max_tokens=500
)
print(response.choices[0].message.content)Ключевые особенности OpenAI API:
- Function calling — модель может вызывать ваши функции, возвращая структурированный JSON с аргументами. Незаменимо для агентских систем.
- Structured outputs — гарантированное соответствие ответа JSON-схеме.
- Streaming — потоковая генерация, токен за токеном. Обязательно для интерактивных интерфейсов.
- Batch API — отправка пакетов запросов со скидкой 50% и обработкой в течение 24 часов.
- Responses API — новый формат запросов, объединяющий агентские инструменты (поиск в интернете, выполнение кода и другие) в одном вызове.
Anthropic Claude API
Claude от Anthropic — один из сильнейших конкурентов GPT-4o, особенно в задачах на длинный контекст, анализ документов и следование сложным инструкциям. Подробное руководство — в нашей статье «Claude API: руководство для разработчиков».
import anthropic
client = anthropic.Anthropic(api_key="sk-ant-...")
message = client.messages.create(
model="claude-sonnet-4-20250514",
max_tokens=1024,
system="Ты — полезный ассистент.",
messages=[
{"role": "user", "content": "Объясни, что такое трансформер в 3 предложениях."}
]
)
print(message.content[0].text)Отличия Claude API от OpenAI:
- System prompt передаётся отдельным параметром, а не как сообщение с ролью.
- Extended thinking — режим «расширенного мышления», когда модель явно рассуждает перед ответом. Улучшает качество на сложных задачах.
- 200K контекст — одно из самых больших окон среди коммерческих моделей.
- Tool use — аналог function calling, с чёткой типизацией входных параметров.
- Prompt caching — кэширование повторяющихся частей промпта для экономии токенов и снижения задержки.
Google Gemini API
Gemini отличается огромным контекстным окном (до 1 миллиона токенов у Gemini 2.5 Pro) и сильной мультимодальностью — нативная работа с изображениями, аудио, видео.
from google import genai
client = genai.Client(api_key="...")
response = client.models.generate_content(
model="gemini-2.5-pro",
contents="Объясни, что такое трансформер в 3 предложениях."
)
print(response.text)Когда выбирать Gemini:
- Работа с очень длинными документами (сотни страниц).
- Мультимодальные задачи: анализ видео, распознавание сложных изображений.
- Интеграция с экосистемой Google (Vertex AI, BigQuery).
- Необходимость контекста в 1M+ токенов для RAG-подобных задач.
Общие паттерны интеграции
Независимо от провайдера, есть набор паттернов, которые вы будете использовать:
1. Streaming
Потоковая генерация критична для UX. Пользователь видит ответ по мере его создания, а не ждёт 5–10 секунд. Все провайдеры поддерживают SSE (Server-Sent Events):
# OpenAI streaming
stream = client.chat.completions.create(
model="gpt-4o",
messages=[{"role": "user", "content": "Напиши эссе..."}],
stream=True
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="")2. Retry с экспоненциальной задержкой
API могут возвращать ошибки 429 (rate limit) или 500 (серверная ошибка). Всегда реализуйте retry-логику:
import time
import random
def call_with_retry(func, max_retries=5):
for attempt in range(max_retries):
try:
return func()
except Exception as e:
if attempt == max_retries - 1:
raise
delay = (2 ** attempt) + random.uniform(0, 1)
time.sleep(delay)3. Маршрутизация между моделями
Используйте дешёвую быструю модель для простых задач и дорогую мощную — для сложных. Можно реализовать это через классификатор сложности запроса или каскадно: сначала пробуем дешёвую модель, и если качество ответа низкое — переключаемся на дорогую.
4. Кэширование ответов
Если одинаковые запросы повторяются — кэшируйте. Семантическое кэширование (по близости эмбеддингов, а не точному совпадению) позволяет экономить до 30–50% бюджета на токены.
Open-source модели и локальное развёртывание
Open-source LLM за последний год совершили огромный скачок. По многим задачам они не уступают коммерческим аналогам, а по стоимости владения — выигрывают при больших объёмах. Подробный обзор экосистемы — в нашей статье «Open-source модели: Llama, Mistral, Qwen».
Llama, Mistral, Qwen — обзор экосистемы
Meta Llama 4 — семейство моделей от Meta. Maverick (400B, MoE с 128 экспертами) — флагман, сравнимый с GPT-4o по качеству. Scout — более компактная модель с огромным контекстом до 10M токенов. Свободная лицензия для коммерческого использования делает Llama основой множества fine-tuned моделей.
Mistral — французская компания, выпускающая высококачественные модели. Mistral Large конкурирует с лучшими коммерческими моделями. Mistral Small — отличный выбор для задач, где нужен баланс качества и скорости. Codestral — специализированная модель для кода.
Qwen 3 (Alibaba) — серия моделей с отличной поддержкой мультиязычности (включая русский). Модели доступны в размерах от 0.6B до 235B параметров. Qwen 3 отличается гибридным мышлением — модель сама решает, когда нужно «думать» глубже.
DeepSeek — китайская лаборатория, выпустившая DeepSeek-R1 — модель с сильнейшими способностями к рассуждению. Подробнее о моделях рассуждения — в нашей статье «Модели рассуждения: o3 и DeepSeek-R1».
Локальный запуск: Ollama, vLLM, llama.cpp
Запустить LLM на своём железе можно несколькими способами:
Ollama — самый простой способ запустить LLM локально. Один бинарник, одна команда:
ollama run llama3.1:8bOllama автоматически скачивает модель, настраивает квантизацию и поднимает OpenAI-совместимый API на localhost. Идеально для разработки и прототипирования. Подробная инструкция — в нашем гайде «Ollama: запуск LLM локально».
vLLM — высокопроизводительный inference-сервер для продакшна. Поддерживает PagedAttention (эффективное управление памятью GPU), continuous batching (динамическая группировка запросов), tensor parallelism (распределение модели по нескольким GPU). Подробности — в статье «Как развернуть LLM-сервер на vLLM».
# Запуск vLLM сервера
python -m vllm.entrypoints.openai.api_server \
--model meta-llama/Llama-4-Maverick-17B-128E-Instruct \
--tensor-parallel-size 4 \
--max-model-len 32768llama.cpp — inference на CPU (и GPU) с поддержкой квантизации. Написан на C/C++, не требует Python. Оптимальный выбор для edge-устройств и ситуаций без GPU.
Квантизация: как запустить большую модель на слабом железе
Квантизация — это снижение точности весов модели с 16/32-бит до 8, 4 или даже 2 бит. Это кратно уменьшает требования к памяти и ускоряет inference с небольшой потерей качества.
- FP16 — базовый формат. Модель 70B занимает ~140 ГБ VRAM.
- INT8 — ~70 ГБ, минимальная потеря качества.
- INT4 (GPTQ, AWQ) — ~35 ГБ, заметная потеря только на сложных задачах.
- GGUF Q4_K_M — формат llama.cpp, ~35 ГБ, работает на CPU.
Правило большого пальца: 4-битная квантизация — оптимальный баланс между качеством и размером для большинства задач. Подробнее — в нашем гайде по квантизации нейросетей.
RAG, fine-tuning и prompt engineering
Три главных техники адаптации LLM под ваши задачи. Они не взаимоисключающие — часто используются вместе.
RAG — Retrieval-Augmented Generation
RAG решает фундаментальную проблему LLM: модель знает только то, на чём обучена. Ваши внутренние документы, актуальные данные, корпоративные базы знаний — всего этого в обучающей выборке нет.
Схема работы RAG:
- Индексация — документы разбиваются на чанки (фрагменты), каждый чанк превращается в эмбеддинг (вектор) и сохраняется в векторной базе данных (Qdrant, Pinecone, pgvector, Milvus).
- Поиск — при получении запроса пользователя он тоже превращается в эмбеддинг. В векторной базе находятся наиболее похожие чанки (по косинусному расстоянию).
- Генерация — найденные чанки добавляются в контекст LLM вместе с исходным запросом. Модель генерирует ответ, опираясь на предоставленные фрагменты.
# Простейший RAG pipeline (псевдокод)
query = "Какова политика возврата товаров?"
# 1. Поиск релевантных документов
query_embedding = embedding_model.encode(query)
results = vector_db.search(query_embedding, top_k=5)
# 2. Формируем промпт с контекстом
context = "\n\n".join([r.text for r in results])
prompt = f"""На основе следующих документов ответь на вопрос.
Документы:
{context}
Вопрос: {query}"""
# 3. Генерируем ответ
response = llm.generate(prompt)Критически важные моменты в RAG:
- Chunking strategy — размер чанков (300–1000 токенов), перекрытие между ними, использование заголовков и метаданных. Неправильный чанкинг — причина №1 плохого качества RAG.
- Embedding model — для русского языка хорошо работают multilingual-e5-large, BGE-M3. Размерность эмбеддинга влияет на точность поиска и стоимость хранения.
- Reranking — после первичного поиска по эмбеддингам полезно переранжировать результаты с помощью cross-encoder модели. Это значительно улучшает точность.
- Hybrid search — комбинация векторного поиска с BM25 (ключевые слова) даёт лучшие результаты, чем каждый метод по отдельности.
Исчерпывающее руководство по построению RAG-системы — в нашей статье «RAG: Retrieval-Augmented Generation — полный гайд».
Fine-tuning: когда и зачем дообучать
Fine-tuning — это дообучение модели на ваших данных. Когда это оправдано:
- Нужен специфический формат вывода, который сложно получить промптом.
- Задача узкоспециализированная (медицина, юриспруденция, конкретная предметная область).
- Нужно уменьшить latency — fine-tuned маленькая модель часто быстрее и дешевле, чем большая с длинным промптом.
- Промпт стал слишком длинным из-за примеров — дешевле «зашить» примеры в веса модели.
Когда fine-tuning НЕ нужен:
- Для добавления новых знаний — используйте RAG.
- Если проблему можно решить промптом — начните с промпта.
- Если у вас меньше 100 качественных примеров — fine-tuning не даст результата.
Современные методы fine-tuning (LoRA, QLoRA) позволяют дообучить модель 70B на одной GPU A100 за часы, а не дни. Подробнее — в нашем гайде по fine-tuning.
Prompt engineering: основы
Prompt engineering — это искусство и наука формулирования запросов к LLM для получения оптимальных результатов. Это самый быстрый и дешёвый способ улучшить качество — до того как вы инвестируете в RAG или fine-tuning.
Ключевые техники:
- System prompt — задаёт роль, контекст и ограничения. «Ты — опытный Python-разработчик. Отвечай лаконично. Если не уверен — скажи об этом.»
- Few-shot prompting — добавляйте 2–5 примеров входа и ожидаемого выхода. Модель экстраполирует паттерн на новые входы.
- Chain-of-Thought (CoT) — попросите модель рассуждать пошагово: «Давай подумаем пошагово». Значительно улучшает точность на задачах, требующих логики и математики.
- Structured output — указывайте формат: «Ответь в формате JSON со следующей схемой: ...». Упрощает парсинг ответов в коде.
- Constraints — явно указывайте ограничения: «Не используй markdown. Ответь на русском. Максимум 3 предложения.»
Распространённые ошибки в промптах:
- Слишком расплывчатые инструкции — «напиши хороший текст» вместо «напиши информационный пост на 300 слов для разработчиков о преимуществах TypeScript».
- Отсутствие примеров — модели учатся из примеров лучше, чем из абстрактных описаний.
- Негативные инструкции — «не пиши длинно» работает хуже, чем «ответь в 3 предложениях».
Глубокое погружение в prompt engineering — в нашей статье «Prompt engineering: как писать запросы к LLM».
Оптимизация затрат и практические советы
Затраты на LLM могут быстро выйти из-под контроля. Вот проверенные стратегии оптимизации:
1. Выбирайте минимально достаточную модель
Не все задачи требуют GPT-4o или Claude Opus. Маршрутизация запросов — самый эффективный способ экономии. Классифицируйте запросы по сложности и направляйте простые в дешёвую модель (GPT-4o mini, Claude Haiku), а сложные — в мощную.
2. Оптимизируйте промпты
- Убирайте избыточный контекст — каждый лишний токен стоит денег.
- Используйте prompt caching (доступен в Claude API и OpenAI). Повторяющаяся часть промпта кэшируется и оплачивается со скидкой до 90%.
- Для повторяющихся задач рассмотрите fine-tuning вместо длинного few-shot промпта.
3. Batch API
Если результат не нужен в реальном времени, используйте Batch API. OpenAI и Anthropic предлагают скидку 50% при обработке в течение 24 часов. Идеально для ETL-пайплайнов, обработки датасетов, генерации контента.
4. Кэширование
- Точное кэширование — для идентичных запросов (например, FAQ-бот).
- Семантическое кэширование — для похожих запросов. Используйте эмбеддинги для определения семантической близости.
5. Сжатие контекста
Для длинных контекстов используйте суммаризацию промежуточных шагов. В multi-turn диалогах вместо передачи всей истории — суммаризируйте старые сообщения.
6. Мониторинг
Инструменты вроде LangSmith, Helicone, PromptLayer помогают отслеживать использование токенов, задержку и стоимость каждого запроса. Без мониторинга оптимизация невозможна.
Пример экономического расчёта для типичного приложения:
# Чат-бот, 10 000 сообщений/день
# Средний запрос: 2000 input tokens + 500 output tokens
# Вариант 1: GPT-4o ($2.50/1M input, $10/1M output)
cost_gpt4o = 10000 * (2000 * 2.50 / 1_000_000 + 500 * 10 / 1_000_000)
# = 10000 * (0.005 + 0.005) = $100/день = $3000/мес
# Вариант 2: GPT-4o mini ($0.15/1M input, $0.60/1M output)
cost_mini = 10000 * (2000 * 0.15 / 1_000_000 + 500 * 0.60 / 1_000_000)
# = 10000 * (0.0003 + 0.0003) = $6/день = $180/мес
# Разница: 16x — и для многих задач качество будет достаточным!Модели рассуждения — новый класс LLM
В 2024–2025 годах появился принципиально новый класс моделей — reasoning models (модели рассуждения). В отличие от стандартных LLM, которые генерируют ответ «сразу», модели рассуждения сначала думают — выстраивают цепочку внутренних рассуждений, проверяют свои гипотезы, рассматривают альтернативы.
Ключевые представители:
- OpenAI o3 / o4-mini — модели с внутренним chain-of-thought. Пользователь видит только финальный ответ, но модель тратит больше токенов (и денег) на «мышление».
- DeepSeek-R1 — open-source модель рассуждения, показавшая результаты на уровне o1. Цепочка рассуждений видна пользователю.
- Claude с extended thinking — режим расширенного мышления у Claude, где модель явно показывает ход рассуждений.
Когда использовать reasoning-модели:
- Сложные математические задачи и задачи формальной логики.
- Многошаговое планирование (агентские задачи).
- Задачи программирования, требующие проектирования архитектуры.
- Анализ сложных документов с неочевидными зависимостями.
Когда НЕ нужны:
- Простые задачи (суммаризация, перевод) — модель «думает» впустую, расходуя токены.
- Задачи с жёстким требованием по latency — рассуждение занимает время.
Подробный разбор — в нашей статье «Модели рассуждения: o3 и DeepSeek-R1».
Тренды и будущее LLM
Рынок LLM развивается стремительно. Вот ключевые тренды, которые формируют ближайшее будущее (и которые важно учитывать при проектировании систем сегодня):
1. Агенты и мультиагентные системы
LLM всё чаще используются не как генераторы текста, а как «мозги» автономных агентов, способных планировать, использовать инструменты, писать и исполнять код, взаимодействовать друг с другом. Frameworks вроде LangGraph, CrewAI, AutoGen делают создание агентов всё доступнее. Клод, GPT-4o и Gemini уже имеют встроенные возможности для tool use и multi-step reasoning.
2. Мультимодальность как стандарт
Текст, изображения, аудио, видео, 3D — границы между модальностями стираются. Gemini уже работает с видео. GPT-4o генерирует изображения прямо в чате. Скоро мультимодальность станет базовым ожиданием от любой LLM.
3. Специализированные модели
Универсальные модели-гиганты дополняются компактными специализированными: модели для кода (Codestral, StarCoder), медицины (Med-PaLM), юриспруденции, финансов. Они дешевле, быстрее и точнее в своей нише.
4. Инференс на устройствах
Модели 1–3B параметров уже работают на смартфонах. Apple Intelligence, Google Gemini Nano — это LLM, работающие прямо на устройстве, без подключения к интернету. Для разработчиков это означает новый класс приложений с нулевой задержкой и полной приватностью данных.
5. Коммодитизация базовых моделей
Разница в качестве между топовыми моделями сжимается. GPT-4o, Claude Sonnet, Gemini 2.5 Pro, Llama 4 — все на одном уровне для большинства задач. Конкуренция смещается от «качества модели» к «качеству инфраструктуры»: инструменты для разработчиков, скорость, цена, удобство API. Подробнее — в нашей аналитике «Рынок LLM в 2026 году».
6. Новые архитектуры
Transformer — не последнее слово. State-space модели (Mamba), гибридные архитектуры (Jamba), модели с линейным вниманием — активно исследуются альтернативы, решающие проблему квадратичной сложности. Пока ни одна не вытеснила трансформеры, но это вопрос времени.
7. Регулирование и безопасность
EU AI Act вступил в силу. Вопросы ответственного использования AI, защиты данных, галлюцинаций — из теоретической плоскости переходят в юридическую. Для разработчиков это значит: продумывайте guardrails, логируйте промпты и ответы, не полагайтесь на LLM в критически важных решениях без человеческого контроля.
Заключение
LLM — это мощный, но не волшебный инструмент. Чтобы использовать его эффективно, разработчику нужно понимать:
- Как модель устроена внутри — это помогает предсказать её поведение и ограничения.
- Как выбрать правильную модель — не самую модную, а ту, что решает вашу задачу при вашем бюджете.
- Как интегрировать через API — с retry, streaming, кэшированием и мониторингом.
- Когда использовать RAG, а когда fine-tuning — и как не тратить деньги на то, что решается хорошим промптом.
- Как оптимизировать затраты — маршрутизация, кэширование, batch API, минимально достаточная модель.
Начните с простого: выберите одну задачу, подключите API, напишите хороший промпт, измерьте результат. Потом усложняйте — добавляйте RAG, экспериментируйте с разными моделями, оптимизируйте затраты. Итеративный подход работает с LLM так же хорошо, как и с любой другой технологией.
Все упомянутые темы мы разбираем подробно в отдельных статьях блога — используйте ссылки в тексте, чтобы углубиться в интересующие вас направления.