Що таке розмір контексту чату?
Розмір контексту чату визначає, який обсяг інформації надсилається штучному інтелекту щоразу, коли відвідувач ставить запитання. Контекст містить інструкції щодо ролі вашого чатбота (промпт), перебіг поточної розмови та найбільш релевантні фрагменти навчальних даних, отримані з вашої бази знань. Токен - це невелика частина тексту, яку зчитує ШІ: у середньому 1 токен дорівнює приблизно 4 символам або орієнтовно 3/4 слова.
Переваги більшого контексту:
- Більше місця для детальних інструкцій щодо ролі без витіснення вашої бази знань
- Краще розуміння тривалих розмов
- Здатність відповідати на складні запитання завдяки одночасному зверненню до більшого обсягу навчальних даних
- Якщо увімкнено пам'ять чату, з'являється більше місця для підсумків та профілів клієнтів із попередніх розмов
Як змінити розмір контексту
Виберіть свого чатбота, перейдіть на вкладку Settings (Налаштування), а потім виберіть Model & Advanced (Модель і розширені налаштування) на бічній панелі ліворуч.
Знайдіть випадне меню Context size (Розмір контексту) та виберіть потрібний варіант:
- 8000 tokens (default) - 1x кредити на повідомлення
- 16000 tokens (2x message credits/message)
- 32000 tokens (4x message credits/message)
Варіанти 16K та 32K доступні як преміум-функції - вони з'являються у списку лише тоді, коли ваш план передбачає більший контекст чату.
Як розподіляється вікно контексту
Контекст - це спільний бюджет. Для кожного повідомлення він розподіляється між такими елементами:
- Ваш промпт - написані вами інструкції щодо ролі та поведінки (лише коли використовується Custom Role Definition)
- Системні інструкції - невеликий обсяг даних, який додає ChatLab для належної роботи бота
- Інструменти - якщо ваш бот використовує AI Actions або інтеграції, їхні інструкції займають частину місця
- Пам'ять розмови - нещодавня бесіда, а також підсумки та профілі клієнтів, коли ввімкнено пам'ять чату
- Залишок для вашої бази знань - усе, що залишається, використовується для навчальних даних, підібраних під запитання відвідувача
Головний висновок: що більше місця займають ваші інструкції, то менше знань ШІ може використати для відповіді. Збільшення розміру контексту розширює весь бюджет, тому і ваші інструкції, і база знань отримують більше простору.
Індикатор використання контексту
Коли ви налаштовуєте власну роль, ChatLab показує в реальному часі, яку частину контексту займають ваші інструкції. Виберіть свого чатбота та перейдіть у Settings > Role & Behavior (Налаштування > Роль і поведінка), після чого відкрийте вкладку Custom Role Definition (Власне визначення ролі). Індикатор з'явиться безпосередньо під редактором інструкцій.
Кольорова смуга - це мініатюра всього вашого вікна контексту: кожен сегмент відповідає одній із перелічених вище частин, а зелений сегмент праворуч показує залишок для вашої бази знань. Поруч зі смугою ви бачите кількість токенів вашого промпту порівняно з рекомендованим обмеженням (наприклад, «~788 / 2,400 tokens · 8k») та оцінку:
- Optimal (Оптимально) - ваш промпт легко поміщається; залишається багато місця для знань.
- Getting large (Стає завеликим) - промпт починає переповнювати контекст; подумайте про його скорочення.
- Too large (Занадто великий) - промпт перевищує рекомендоване обмеження або залишає замало місця для знань; якість відповідей може погіршитися.
Натисніть на смугу, щоб розгорнути повну деталізацію:
Розгорнута панель показує приблизну кількість токенів для кожної частини, а також випадне меню Chat context size (Розмір контексту чату), тож ви можете збільшити розмір контексту прямо тут, не переходячи до розділу Model & Advanced. Точний розподіл змінюється залежно від розмови - дані на панелі є орієнтовними, а не точним вимірюванням.
Навколо редактора показано два ліміти, які працюють по-різному:
- Ліміт символів (наприклад, «2,882 / 8,000 characters») - суворе обмеження; редактор не прийме довший промпт.
- Орієнтир токенів (індикатор) - гнучка рекомендація; її перевищення не блокує збереження, але залишає менше місця для вашої бази знань і пам'яті розмови.
Якщо індикатор стає червоним, він пропонує два варіанти вирішення: збільшити розмір контексту чату (у цьому разі повідомлення коштуватимуть більше кредитів - для 16K витрата множиться на 2, для 32K - на 4, див. кредити на повідомлення) або перенести покрокові сценарії з промпту в етапи Conversation Flow, про що йтиметься далі.
Розмір контексту та Conversation Flow
Функція Conversation Flow дозволяє розділити поведінку бота на етапи, кожен з яких має власні інструкції. Коли сценарій розмови ввімкнено, інструкції активного етапу додаються до промпту, тобто використовують той самий бюджет контексту. Довгі інструкції етапу поверх великої власної ролі залишають менше місця для вашої бази знань за того самого розміру контексту.
Розмір контексту також визначає максимальну довжину інструкцій для кожного етапу:
- Контекст 8 000 токенів - до 1 000 символів на етап
- Контекст 16 000 або 32 000 токенів - до 6 000 символів на етап
Таким чином, збільшення розміру контексту виконує дві функції одночасно: збільшує ліміт інструкцій для кожного етапу та звільняє місце для бази знань. Це працює і у зворотному напрямку: якщо промпт вашої власної ролі занадто великий, винесення покрокових сценаріїв в окремі етапи сценарію розмови дозволяє зберегти основну роль короткою, оскільки інструкції кожного етапу завантажуються лише тоді, коли розмова перебуває саме на цьому кроці.
Вартість у кредитах для кожного розміру контексту
Стандартний розмір контексту становить 8 000 токенів. Його збільшення помножує кількість кредитів на повідомлення, яку споживає кожна відповідь:
- 8 000 токенів - 1x кредитів на повідомлення (за замовчуванням)
- 16 000 токенів - 2x кредитів на повідомлення за кожне повідомлення
- 32 000 токенів - 4x кредитів на повідомлення за кожне повідомлення
Множник додається до вартості обраної моделі ШІ - більший контекст робить кожну відповідь цієї моделі пропорційно дорожчою.