Змінні токени: Новий підхід до обробки інформації в штучному інтелекті

12 листопада 2025

Від фіксованої токенізації до адаптивної обробки контексту

Сучасні великі мовні моделі (LLM) демонструють вражаючі можливості у обробці природної мови, але все ще значно поступаються людському інтелекту у розумінні контексту та розв'язуванні складних багатокрокових задач. У цій статті ми розглянемо фундаментальні відмінності в обробці інформації між людським мозком та штучним інтелектом, а також представимо концепцію змінних токенів як можливий шлях до більш "людиноподібних" ШІ-систем.

Як людина та ШІ розуміють контекст

АспектЛюдський мозокСучасний ШІ
КонтекстБагаторівневий, мультимодальний (емоції, спогади, культурний досвід, тілесні відчуття)Обмежене контекстне вікно зі статистичними залежностями в тексті
РозумінняГлибоке семантичне розуміння через життєвий досвід та "заземлення" у фізичному світіРозпізнавання патернів у тренувальних даних без справжнього досвіду
ОбробкаПаралельна обробка через нейронні мережі різних модальностейПослідовна генерація з механізмом уваги
ГнучкістьМиттєве перемикання між рівнями абстракціїФіксована архітектура обробки

Токенізація: ключова відмінність

Як працює людський мозок

Людський мозок не токенізує інформацію в класичному розумінні. Замість цього він використовує складний процес концептуального "чанкінгу" (chunking), де інформація динамічно організується в блоки різного розміру залежно від контексту, експертизи та уваги.

Приклад: Досвідчений шахіст "бачить" позицію на дошці як цілісні стратегічні патерни, а не як окремі фігури. Початківець же змушений обробляти кожну фігуру окремо. Це демонструє адаптивну "роздільну здатність" людського сприйняття.

Як працює сучасний ШІ

Великі мовні моделі використовують фіксовану токенізацію на рівні subword (підслово). Один токен зазвичай відповідає приблизно 4 символам або частині слова. Ця токенізація:

  • Не залежить від семантики - вона чисто статистична
  • Однакова для всіх контекстів - незалежно від складності чи важливості інформації
  • Обмежує здатність моделі адаптуватися до специфіки задачі
Приклад фіксованої токенізації: "машинне навчання глибоких мереж" ↓ ["маш", "##инне", "навч", "##ання", "глибок", "##их", "мереж"]

Концепція змінних токенів

Основна ідея

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

Математична формалізація

Замість фіксованої токенізації T(S) = {t₁, t₂, ..., tₙ}, ми вводимо адаптивну токенізацію:

T(S, C) = {τ₁, τ₂, ..., τₘ} де: τᵢ - змінний токен (охоплює різну кількість інформації) C - контекст/параметри, що визначають гранулярність m - кількість токенів (може змінюватися)

Функція гранулярності

Центральним елементом концепції є функція гранулярності G(x, C), яка визначає "розмір" токена в кожній позиції:

G: S × C → ℝ⁺ Висока G → крупніші токени (низька деталізація) Низька G → дрібніші токени (висока деталізація)

Параметри C, що впливають на гранулярність, можуть включати:

  • Семантичну щільність - ентропія інформації в даній точці
  • Новизну - наскільки інформація нова для моделі
  • Складність синтаксису - структурна складність
  • Важливість для задачі - вага уваги (attention weights)
  • Швидкість зміни контексту - аналогія з похідною функції

Аналогія з варіаційним численням

Концепція змінних токенів нагадує методи adaptive mesh refinement у чисельному аналізі:

Для функції f(x) з різною "кривизною":
Де |f''(x)| велике → використовується дрібна сітка (детальна дискретизація)
Де |f''(x)| мале → використовується груба сітка (агрегована дискретизація)
Аналогічно для токенізації: ∂I/∂x (швидкість зміни інформації) визначає необхідну деталізацію.

Ієрархічна структура

Змінні токени природно формують дерево абстракцій різних рівнів:

Рівень 0 (символи):    м а ш и н н е   н а в ч а н н я
                        ↓   ↓   ↓       ↓   ↓   ↓
Рівень 1 (морфеми):    маш ин не      навч ан ня
                        ↓       ↓       ↓
Рівень 2 (слова):      машинне        навчання
                        ↓               ↓
Рівень 3 (концепти):   машинне_навчання

Модель може динамічно вибирати рівень абстракції залежно від поточної задачі та контексту.

Проблема втрати контексту у складних задачах

Чому сучасні LLM "випадають з контексту"?

  • Обмежене контекстне вікно - модель "забуває" ранні кроки розв'язування
  • Відсутність внутрішньої моделі задачі - немає справжнього розуміння кінцевої мети
  • Автогресивна генерація - помилки накопичуються з кожним згенерованим токеном
  • Відсутність механізму верифікації - модель не може об'єктивно оцінити правильність результату
  • Рівномірна увага - всі частини розв'язку обробляються з однаковою інтенсивністю

Рішення: змінні токени + структурне планування

Ієрархічне представлення задачі

Використання змінних токенів дозволяє організувати розв'язок складної задачі у вигляді ієрархії:

Задача: Розробити систему аутентифікації

Рівень 1 (макро-токени):
[Аналіз_вимог] → [Архітектура] → [Реалізація] → [Тестування]

Рівень 2 (мезо-токени):
[Архітектура]:
  ├─ [База_даних]
  ├─ [API_endpoints]
  └─ [Безпека]

Рівень 3 (мікро-токени):
[Безпека]:
  ├─ [hashing: bcrypt, params...]
  ├─ [JWT: secret, expiry...]
  └─ [rate_limiting: redis...]

Ключова перевага: Модель може утримувати в контексті макро-структуру (загальний план), деталізуючи лише поточний блок, що працюється.

Адаптивна глибина обробки

def solve_complex_task(task, context): # Визначаємо важливість кожної частини importance_map = analyze_task_structure(task) for subtask in task.decompose(): if importance_map[subtask] > threshold: # Критична частина - дрібна токенізація tokens = tokenize(subtask, granularity='fine') result = deep_processing(tokens) else: # Рутинна частина - груба токенізація tokens = tokenize(subtask, granularity='coarse') result = shallow_processing(tokens) context.update(result) return integrate_results(context)

Контекстні якорі (anchors)

Змінні токени різних рівнів можуть служити "якорями пам'яті", що постійно утримуються у контексті:

[GOAL: Authentication_System] ← завжди в контексті (макро-токен)
  ↓
[CURRENT_PHASE: Implementation] ← поточний етап (мезо-токен)
  ↓
[working on: password_hashing] ← деталі (мікро-токени)

При генерації коду модель може:

  • Повертатися до GOAL (перевірка: чи не відхилився від мети?)
  • Перевіряти CURRENT_PHASE (перевірка: чи на правильному етапі?)
  • Фокусуватися на поточних деталях, не втрачаючи загальної картини

Система з подвійною увагою

┌─────────────────────────────────────┐
│   Глобальний контекст (макро)       │
│   [Мета] [Обмеження] [Прогрес]     │
└──────────────┬──────────────────────┘
               │
    ┌──────────┴──────────┐
    │  Поточний фокус     │
    │  (детальна обробка) │
    └─────────────────────┘

Алгоритм розв'язування з змінними токенами

Фаза 1: Декомпозиція (крупні токени)

Task → [Subtask₁] [Subtask₂] ... [Subtaskₙ]

Фаза 2: Виконання (змінна деталізація)

For each Subtask: 1. Активувати локальний контекст (дрібні токени) 2. Розв'язати з повною увагою до деталей 3. Агрегувати результат (крупний токен) 4. Оновити глобальний контекст

Фаза 3: Верифікація (повернення до макро-рівня)

Перевірити узгодженість всіх Subtasks відносно початкової мети

Додаткові механізми утримання контексту

1. Явна модель стану

class TaskState: goal: MacroToken # Що робимо constraints: List[Token] # Обмеження completed: List[Token] # Що вже зроблено current: MicroToken # Де зараз знаходимось next_steps: List[Token] # Що буде далі

2. Самоперевірка на кожному кроці

Після генерації кожного блоку коду/тексту:

  • ✓ Чи відповідає загальній меті (goal)?
  • ✓ Чи не порушує обмеження (constraints)?
  • ✓ Чи сумісне з уже виконаним (completed)?
  • ✓ Чи логічно веде до наступних кроків (next_steps)?

3. Контрольні точки (checkpoints)

Task Progress:
[✓ Requirements] → [✓ Design] → [→ Implementation (70%)] → [ Testing]
                                      ↑
                                Current position

Гібридний підхід: LLM + Символьна система

Для максимальної надійності та уникнення втрати контексту рекомендується комбінувати LLM з символьним планувальником:

┌──────────────┐
│ Символьний   │ ← Утримує структуру, правила, обмеження
│ планувальник │   (гарантує невипадання з контексту)
└──────┬───────┘
       │
┌──────▼───────┐
│ LLM з        │ ← Генерує конкретні рішення
│ змінними     │   (творчість, адаптивність)
│ токенами     │
└──────────────┘

Планувальник:

  • Тримає граф задачі та її декомпозицію
  • Перевіряє виконання обмежень та вимог
  • Не дає LLM "збитися" з курсу

LLM:

  • Генерує креативний код/текст
  • Адаптується до нюансів конкретної задачі
  • Працює в межах, заданих планувальником

Теоретичні переваги концепції

Інформаційно-теоретична ефективність

  • Оптимізація за принципом мінімальної довжини опису (MDL)
  • Токенізація автоматично адаптується до ентропії даних

Обчислювальна ефективність

  • Менше токенів для обробки простих контекстів
  • Концентрація уваги на критичних частинах задачі

Композиційність

  • Природне формування ієрархій понять
  • Краще узагальнення на нові задачі (як у людини)

Когнітивна правдоподібність

  • Наближення до людського способу обробки інформації
  • Гнучке перемикання між рівнями абстракції

Зв'язок з іншими теоріями та підходами

Концепція змінних токенів перегукується з кількома важливими напрямками в науці та технології:

  • Вейвлет-аналіз - багатомасштабне представлення сигналів
  • Теорія інформації - адаптивне кодування з оптимальною довжиною
  • Когнітивна наука - chunking у людській пам'яті та увазі
  • Adaptive computation time - модель сама визначає обсяг обчислень
  • Mixture of Depths - різна глибина обробки для різних токенів
  • Hierarchical transformers - багаторівнева обробка інформації

Відкриті теоретичні питання

Хоча концепція змінних токенів є теоретично привабливою, вона відкриває ряд важливих питань для дослідження:

  • Оптимальність: Чи існує оптимальна функція гранулярності G для заданої задачі? Як її знайти?
  • Навчання: Як модель може сама навчитися вибирати оптимальну гранулярність? Як обчислювати градієнти через дискретні рішення?
  • Незмінність: Які властивості повинні зберігатися при зміні токенізації для забезпечення коректності?
  • Обчислюваність: Чи можна ефективно обчислити оптимальну токенізацію в реальному часі?
  • Верифікація: Як перевірити, що змінна токенізація дійсно покращує розуміння та не вносить нових помилок?

Висновки

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

Ключові елементи успішної реалізації:

  • Змінна токенізація - ієрархія абстракцій різних рівнів
  • Явна модель стану - чітке розуміння, куди йдемо і де знаходимось
  • Верифікація - перевірка коректності на кожному кроці
  • Структурне планування - граф задачі та її декомпозиція
  • Контекстні якорі - постійна пам'ять про глобальну мету

Ця концепція наближає штучний інтелект до того, як людина розв'язує складні задачі: утримуючи загальну "карту" в голові, заглиблюючись у необхідні деталі, але ніколи не забуваючи про кінцеву мету та загальний контекст.

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