AI Wiki

Робота з LLM

Принципи роботи великих мовних моделей, процес генерації відповідей, оптимізація витрат та рівні моделей

LLMмовні моделіінференсоптимізаціяPrompt CachingKV CacheBatch API

Робота з LLM

Великі мовні моделі (LLM) — це основа сучасних AI-інструментів для розробки. Розуміння принципів їх роботи допомагає ефективніше використовувати ці інструменти та уникати типових помилок.


Принципи

⚠️Увага

LLM — це ймовірнісна модель. Вона передбачає наступне найбільш ймовірне слово на основі патернів у даних, а не "думає" або "розуміє" в людському сенсі.

Ключові принципи роботи з LLM

  • Моделі не мають довготривалої пам'яті. Кожен новий запит обробляється ізольовано, якщо ви не передаєте історію діалогу в контексті.

  • Знання моделі обмежені датою зрізу навчальних даних. Вона не знає про події, що відбулися після цієї дати, без доступу до зовнішніх інструментів.

  • LLM схильні до галюцинацій. Завжди перевіряйте критично важливі факти.

  • LLM недетерміновані: кожна нова відповідь на той самий промпт буде іншою, але в рамках зазначених вимог.

  • Точніший промпт — точніший результат: чим чіткіше зазначені вимоги та обмеження, тим менше у LLM підстав імпровізувати.

  • Кожна модель унікальна. Промпт, що ідеально працює з однією LLM, може виявитися неефективним для іншої через відмінності в архітектурі та навчальних даних.

  • LLM — це підсилювач. Якість результату напряму залежить від експертизи. Без продуманого запиту та ретельної оцінки відповіді LLM лише масштабує помилки та невігластво.

  • Ефективність через практику. Щоб працювати з AI продуктивно, потрібно постійно експериментувати та виробляти інтуїцію: які завдання можна повністю делегувати моделі, а які потребують суворого людського контролю.


Генерація відповіді

Генерація відповіді відбувається у два етапи:

1. Prefill (Попереднє завантаження)

  • Обробка всього вхідного промпту паралельно.
  • Швидкий етап.
  • Дешевий.

2. Decode (Генерація)

  • Послідовна генерація відповіді токен за токеном.
  • Кожне наступне слово залежить від попередніх.
  • Повільний етап.
  • Може бути дорожчим у 3-5 разів порівняно з Prefill.
ℹ️Інформація

Розуміння двофазної генерації пояснює, чому вхідні токени (input) зазвичай значно дешевші за вихідні (output) при роботі з API.


Оптимізація витрат

1. Key-Value Cache (KV Cache)

  • Вбудований механізм оптимізації обчислень.
  • При генерації довгої відповіді модель зберігає проміжні математичні обчислення для вже оброблених токенів.
  • Прискорює Decode та економить ресурси.

2. Prompt Caching

  • Збереження на стороні сервера великих обсягів незмінних даних, які часто відправляються у запитах.
  • Зазвичай це документація, системні інструкції, описи інструментів та MCP.
  • Щоб спрацювало, дані потрібно розміщувати строго на початку промпту.
  • Дозволяє знизити вартість Prefill до 90%.
💡Порада

Anthropic та OpenAI підтримують Prompt Caching. Розміщуйте статичний контент (системний промпт, документацію, правила) на початку запиту для максимальної економії.

3. Batch API

  • Інтерфейс для асинхронного виконання масових завдань, що не потребують відповіді в реальному часі.
  • Великий масив незалежних запитів збирається в один пул та відправляється на сервер для фонової обробки.
  • Провайдери виконують такі завдання за рахунок вільних потужностей.
  • Очікування обробки значно довше, але надається знижка до 50%.

Рівні моделей

1. LLM (Базова модель)

  • Генерує текст, отримує текст.
  • Немає пам'яті між запитами.
  • Використовується для простих питань-відповідей, генерації тексту.

Приклади: GPT-4o, Claude Sonnet, Gemini Flash.

2. Reasoning Model (Модель з міркуваннями)

  • Додається покрокове мислення та техніки самоперевірки.
  • Використовується для складних логічних завдань (математика, програмування).

Приклади: o1, o3, Claude з Extended Thinking, Gemini 2.5 Pro з Thinking.

ℹ️Інформація

Reasoning Models витрачають додаткові токени на "мислення", що збільшує вартість, але суттєво підвищує якість відповідей для складних завдань.

3. Agent (Агент)

  • Автономна система, що працює у циклах: Observe (спостереження) → Reason (міркування) → Action (дія).
  • Має доступ до Tools (зовнішні API, файлова система, виконання коду).
  • Потребує State Management (управління станом) для збереження контексту між кроками.
  • Може виконати повний цикл: знайти баг, виправити код, запустити тести, створити коміт та запустити деплоймент.

Приклади: Claude Code, OpenAI Codex, Cursor Agent, Gemini CLI.


Див. також

Глосарій

Основні терміни та визначення у сфері AI

Промптинг

Техніки написання ефективних промптів для LLM

Інструменти

Огляд AI-чатів, IDE, CLI та фреймворків