Оцінка впевненості LLM: відкалібруйте її, перш ніж довіряти
Tech
AI
LLM Evaluation
Confidence Calibration
AI Reliability

Оцінка впевненості LLM: відкалібруйте її, перш ніж довіряти

Оцінка впевненості LLM не є універсальною ймовірністю. Порівняйте вербальні оцінки, logprobs і семплювання, а потім відкалібруйте безпечний поріг.

Uygar DuzgunUUygar Duzgun
Jul 29, 2026
Оновлено 13 серп. 2026 р.
16 min read

Оцінка впевненості LLM корисна лише після того, як ви визначите, що саме вона прогнозує, зафіксуєте протокол вимірювання та перевірите її на розмічених результатах власного завдання. Самозвітне «90%», логарифмічна ймовірність токена та дев’ять однакових відповідей із десяти семплів — це три різні сигнали. Жоден із них не дає універсальної ймовірності 0.9, що відповідь правильна.

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

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

Що вимірює оцінка впевненості LLM?

Оцінка впевненості LLM — це числовий сигнал, призначений для ранжування або оцінювання надійності результату моделі. Його значення залежить від способу отримання.

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

подія, яку прогнозують, наприклад «вибрана мітка правильна»;
розподіл завдань, наприклад англомовні звернення до служби підтримки одного продукту;
протокол оцінювання, включно з prompt, версією моделі, декодуванням і агрегацією;
правило правильності, використане для маркування результату.

Приберіть будь-яку з цих деталей — і «впевненість 0.8» стає неоднозначною. Це може означати, що модель вважає формулювання ймовірним, послідовно повторює себе, виконала інструкцію надрукувати число або поставила одну відповідь вище за альтернативи. Ці властивості можуть корелювати з правильністю. Але вони не є самою правильністю.

Калібрування також відрізняється від дискримінації. Оцінка має добру дискримінацію, коли правильні відповіді зазвичай ранжуються вище за неправильні. Вона має добре калібрування, коли числові значення відповідають спостережуваним частотам. Система може бути корисною для ранжування, хоча її відсотки неправильні, або демонструвати прийнятне середнє калібрування, але не розділяти правильні й неправильні відповіді.

Три сигнали, які часто називають упевненістю

СигналЩо він насправді спостерігаєГоловна перевагаОсновний режим відмови
------------
Вербалізована впевненістьЧисло, яке модель генерує в текстіПрацює з black-box chat APIЧутливість до prompt, формату та походження відповіді
Log probabilities токенівУмовна ймовірність згенерованих токенівДешево, коли API надає logprobsВимірює ймовірність послідовності, а не істинність
Узгодженість повторних семплівЯк часто семпльовані відповіді семантично збігаютьсяПрацює без доступу до внутрішніх даних моделіДорожче й може стабільно помилятися

Вибір між ними — інженерне рішення. Поєднання може допомогти, але ensemble все одно потребує оцінювання на цільовому завданні.

Вербалізована впевненість — це відповідь, яку потрібно отримати від моделі

Найпростіший підхід — запитати:

text Return your answer and the probability that it is correct from 0 to 1.

Це працює майже з будь-якою моделлю. Але значення впевненості стає частиною генерації. Формулювання prompt, шкала відповіді, наданий контекст і те, чи модель сама створила відповідь, можуть змінити результат.

Дослідження 2026 року перевірило три відкриті сімейства базових моделей та instruction-tuned моделей розміру 7–8B на чотирьох бенчмарках question-answering. Дослідники залишали prompt для вербальної впевненості незмінним, водночас змінюючи відповідь, яку оцінювали, токени відповіді, що надавали token score, і контекст перед цими токенами. Зміна контексту conditioning вплинула на порівняння калібрування вербальних оцінок і token score сильніше, ніж зміна estimator калібрування, і змінила сигнал, який виглядав кращим, у 9 із 12 instruction-tuned налаштувань за порівняннями ECE та Brier score. Коли моделі оцінювали надані відповіді, правдоподібні неправильні відповіді отримували майже таку саму вербальну впевненість, як і правильні надані відповіді. Тому автори описують обидва сигнали як поведінкові вимірювання, залежні від протоколу, а не як пряме зчитування невизначеності (Kim and Kang, 2026).

Цей результат не доводить, що кожна вербальна оцінка марна. Він показує, чому prompt на кшталт «чесно оцінюй свою впевненість» не може замінити набір даних для калібрування.

Token logprobs вимірюють імовірність наступного токена

Log probability фіксує, наскільки ймовірним був токен за умовного розподілу генерації моделі. Документація OpenAI визначає її як імовірність токена в певній позиції з огляду на попередній контекст; log probabilities послідовності можна підсумовувати для оцінювання або ранжування (OpenAI Cookbook). Відповідь GenerateContent у Google також надає середні log probabilities кандидатів і результати logprob на рівні токенів, коли вибрані API та модель це підтримують (Gemini API reference).

Це цінно для закритого вибору, наприклад `approve` проти `reject`. Ви можете зібрати масу ймовірності, призначену дозволеним міткам, а потім відкалібрувати цю оцінку. Інтерпретувати довгу вільну відповідь значно складніше. Токенізація, довжина відповіді, перефразування та prompt conditioning впливають на ймовірність послідовності.

Плавно сформульоване хибне твердження може мати високу ймовірність. Правильне, але незвичне ім’я може мати низьку ймовірність. Оцінка відповідає на запитання «Наскільки очікуваною була ця послідовність токенів тут?». Вона автоматично не відповідає на запитання «Чи правдиве це твердження?»

Повторне семплювання вимірює узгодженість

Кілька семплів моделі дають black-box сигнал послідовності. Якщо вісім із десяти відповідей виражають одну й ту саму відповідь, емпірична оцінка узгодженості дорівнює 0.8. Для вільних відповідей зазвичай потрібна семантична кластеризація, щоб перефразування рахувалися як одна відповідь.

Цей сигнал часто містить більше інформації, ніж один самозвіт, але має дві ціни. По-перше, десять генерацій коштують приблизно в десять разів більше output calls, перш ніж batching, caching або коротші prompt змінять арифметику. По-друге, узгодженість може бути впевнено неправильною, коли модель повторює ту саму помилкову думку.

Недавні дослідження демонструють обидва моменти. В одній роботі за липень 2026 року порівнювали вербальну впевненість, logit-based verifier і метод на основі семплювання під назвою SliCK для короткого factual та multi-hop question answering. У цьому середовищі SliCK досяг нижчої помилки калібрування та кращого ранжування правильних і неправильних відповідей, ніж два інші методи. Водночас він порушив тест узгодженості ймовірності на основі entailment у 31% оцінених випадків. Дослідження спиралося на семантичну кластеризацію за допомогою LLM judge, короткі answer benchmarks, одну основну модель із меншими cross-model підмножинами та припущення, що частота семплювання відображає переконання (Matta, Naphade, and Zou, 2026).

Практична інтерпретація вужча за твердження «семплювання розв’язує проблему впевненості». Узгодженість — корисний необроблений сигнал. Він усе одно залишається сигналом, який потрібно перевіряти за результатами.

Workflow від необроблених сигналів LLM через мітки завдання та перевірки калібрування до рішень відповісти, передати на перевірку або утриматися від відповіді
Workflow від необроблених сигналів LLM через мітки завдання та перевірки калібрування до рішень відповісти, передати на перевірку або утриматися від відповіді

*Production threshold має з’являтися після task-specific labels і перевірок калібрування, а не безпосередньо після output моделі.*

Чому правдоподібне число впевненості все одно може вводити в оману

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

Точність і калібрування можуть змінюватися незалежно

ConfidenceBench оцінював prompted probabilities 15 frontier models на 200 приватних англомовних multiple-choice запитаннях із просторового міркування, високоточної математики, пошуку слів і питань, на які неможливо знати відповідь. Кожна модель відповідала на набір тричі. Бенчмарк використовував Brier score, який штрафує квадрат відстані між заявленою ймовірністю та бінарним результатом.

Ранжування моделей за калібруванням не просто повторювало ранжування за точністю. Автори повідомляють про найкращий Brier score 0.103, тоді як деякі оцінені системи отримали результат гірший за калібрований random baseline для чотирьох варіантів відповіді — 0.1875. Бенчмарк навмисно малий, приватний, лише англомовний і multiple-choice. Його вербальні оцінки можуть відображати instruction following і framing prompt, тому ці числа не слід узагальнювати на long-form або multi-turn роботу (ffrench-Constant et al., 2026).

Вимірюйте калібрування безпосередньо. Не виводьте його із загальної benchmark accuracy.

Протокол вимірювання може змінити висновок

Оцінка прив’язана до конкретного pipeline. Якщо команда змінює prompt, snapshot моделі, формат відповіді, candidate labels, context window, temperature або агрегацію logprob, вона змінила вимірювальний інструмент.

Фіксуйте ці рішення з кожним результатом оцінювання. Необроблені метрики активності code-agent також потребують системного та evaluation context, перш ніж вони щось скажуть про надійність. Якщо змінюється prompt або модель, повторне калібрування — це release check, а не необов’язкове прибирання.

Калібрована оцінка все одно може провалитися на окремому зрізі

Середнє значення може приховати проблеми в одній мові, продукті, клієнтському сегменті, типі документа або довжині відповіді. Класифікатор звернень до служби підтримки може виглядати загалом каліброваним, оскільки поширені питання про billing домінують у test set, тоді як рідкісні security tickets залишаються надмірно впевненими.

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

Відтворюваний workflow калібрування впевненості LLM

Наведений нижче workflow навмисно невеликий. Його можна виконати до впровадження складнішої framework для невизначеності.

1. Визначте подію та дію

Напишіть одне речення, завершивши цей шаблон:

Prompt — Copy & Paste
Оцінка прогнозує ймовірність того, що **[конкретний результат]** правильний, тому система може **[конкретна дія]**.

Приклади:

«Вибрана routing label відповідає мітці, затвердженій людиною, тому ticket може потрапити до правильної черги».
«Усі обов’язкові поля витягнуто правильно, тому record може перейти до validation».
«Відповідь повністю підтверджується наданим документом, тому її можна показати без manual review».

Уникайте подій на кшталт «відповідь хороша». Їх неможливо послідовно розмічати.

Для дій із незворотними наслідками впевненість не повинна замінювати authorization. Модель може допомогти вибрати шлях, але AI agent permissions усе одно мають забезпечувати дозволені ресурси, аргументи, правила approval і receipts.

2. Створіть task-specific holdout set

Зберіть репрезентативні inputs, які не використовувалися для налаштування prompt або mapping калібрування. Додайте:

звичайні випадки;
правдоподібні, але неправильні альтернативи;
неоднозначні inputs, які мають запускати review;
рідкісні дорогі режими відмови;
зрізи, очікувані в production;
приклади з найновішого періоду даних.

За можливості маркуйте правильність детермінованим verifier. Для суб’єктивних завдань використовуйте письмову rubric та adjudication. Оцінка впевненості не може бути більш обґрунтованою, ніж її outcome labels.

Почніть із достатнього обсягу даних, щоб виявити грубе неправильне калібрування, а потім розширюйте набір навколо важливих зрізів і thresholds. Малий benchmark може спрямувати дослідження, але не може виправдати production threshold для high-stakes сценарію.

3. Зберігайте необроблений сигнал, не змінюючи протокол

Зберігайте:

ідентифікатор моделі та snapshot;
повну версію шаблону prompt;
налаштування decoding;
необроблену відповідь;
необроблений confidence signal;
метод: verbal, token, sampling, judge або ensemble;
кількість семплів і метод кластеризації для sampling;
correctness label;
task slice і timestamp.

Не округлюйте значення до оцінювання. Модель, яка видає лише `0.7`, `0.8` і `0.9`, має оцінюватися як три грубі buckets, а не подаватися як точне вимірювання ймовірності.

4. Обчисліть Brier score і reliability table

Для бінарної правильності Brier score має вигляд:

text mean((confidence - outcome)²)

Менше — краще, але показнику потрібні baseline і порівнюваний dataset. Reliability table полегшує виявлення помилки: згрупуйте схожі оцінки, а потім порівняйте середню оцінку кожної групи з її observed accuracy.

Цей Python script без зовнішніх залежностей читає `id,score,correct` із CSV-файлу:

python import csv

with open("predictions.csv", newline="") as source: rows = [ (float(row["score"]), int(row["correct"])) for row in csv.DictReader(source) ]

if not rows: raise SystemExit("predictions.csv has no rows")

brier = sum((score - correct) ** 2 for score, correct in rows) / len(rows) print(f"Brier score: {brier:.4f}")

bin_count = 10 bins = [[] for _ in range(bin_count)]

for score, correct in rows: if not 0 <= score <= 1 or correct not in (0, 1): raise ValueError("score must be 0..1 and correct must be 0 or 1") index = min(int(score * bin_count), bin_count - 1) bins[index].append((score, correct))

print("range,count,mean_score,accuracy,gap") for index, values in enumerate(bins): if not values: continue mean_score = sum(score for score, _ in values) / len(values) accuracy = sum(correct for _, correct in values) / len(values) lower = index / bin_count upper = (index + 1) / bin_count print( f"{lower:.1f}-{upper:.1f},{len(values)}," f"{mean_score:.3f},{accuracy:.3f},{mean_score - accuracy:+.3f}" )

Таблиця має описовий характер. Межі bins можуть змінювати підсумки на кшталт ECE, особливо на малих наборах. Використовуйте разом Brier score, reliability view і metric, орієнтовану на дію, замість оптимізації одного графіка.

5. Обирайте thresholds з огляду на ризик і coverage

Threshold 0.8 не має універсального значення. Оцініть, що відбувається, коли система приймає лише outputs із оцінкою не нижче кожного candidate threshold:

python print("threshold,coverage,accepted_accuracy") for threshold in (0.5, 0.6, 0.7, 0.8, 0.9): accepted = [ correct for score, correct in rows if score >= threshold ] coverage = len(accepted) / len(rows) accuracy = sum(accepted) / len(accepted) if accepted else float("nan") print(f"{threshold:.1f},{coverage:.3f},{accuracy:.3f}")

Це створює базове уявлення про risk–coverage. Підвищення threshold може зменшити кількість помилок серед прийнятих випадків, але водночас передає більше роботи fallback handling. Обирайте threshold з огляду на вартість false acceptance, false rejection, review, latency та шкоди користувачеві.

Використовуйте щонайменше три результати, якщо продукт це підтримує:

Відповісти або виконати дію, коли оцінений ризик прийнятний.
Передати на перевірку або верифікувати в зоні невизначеності.
Утриматися від відповіді, коли завдання не підтримується або сигнал ненадійний.

6. Перевіряйте drift і зміни протоколу

Запускайте holdout після:

оновлення моделі або provider;
зміни prompt або tool;
додавання нової мови чи клієнтського сегмента;
зміни retrieval index;
суттєвої зміни довжини або тематики inputs;
інциденту, пов’язаного з упевненою помилкою.

Повторне семплювання та глибше reasoning також додають compute. Цей компроміс має бути частиною evaluation: порівнюйте зменшення кількості помилок із latency і token cost, а не припускайте, що більше reasoning tokens завжди варті витрат.

Який метод оцінювання впевненості обрати?

СитуаціяПочніть ізПеревірте перед deployment
---------
Closed-label classification із logprobsМасу ймовірності дозволених labelsКалібрування, class imbalance, чутливість до prompt і label-token
Black-box short-answer QARepeated sampling плюс semantic agreementСтабільно неправильні відповіді, помилки кластеризації, додаткові витрати
Обмеження latency одного викликуRaw score плюс learned calibration mappingDrift, performance на зрізах, retraining mapping
Long-form answersClaim-level support і перевірки невизначеностіПовноту, якість citations, unsupported confident claims
Незворотна tool actionDeterministic policy та human approval за потребиНіколи не авторизуйте дію лише на основі confidence

Open-source libraries можуть зменшити обсяг реалізації. Наприклад, UQLM надає black-box consistency, white-box token-probability, judge, ensemble і scorers для long text. Його документація також чітко показує компроміси latency та доступу: consistency methods потребують більше calls, тоді як white-box methods вимагають logprobs (UQLM documentation). У липні 2026 року repository усе ще отримував releases, зокрема fixes у v0.6.4, що є сильнішим сигналом підтримки, ніж сама кількість lifetime stars (UQLM v0.6.4).

Library надає estimators. Вона не надає labels, визначення завдання, tolerance до ризику або production monitoring, які роблять threshold обґрунтованим.

Чого поточні дослідження не встановлюють

Наведені дослідження не доводять, що один метод перемагає в усіх застосуваннях LLM.

ConfidenceBench — це приватний англомовний multiple-choice benchmark із 200 запитань.
Дослідження protocol sensitivity використовує open model families і question-answering datasets; воно не охоплює кожного provider або long-form task.
Дослідження coherence зосереджене на коротких factual і multi-hop питаннях, залежить від semantic clustering і трактує sampling behavior як proxy для belief.
Робота з single-generation calibration навчається на offline repeated samples і оцінює чітко визначені завдання з automatic correctness checks. Її автори прямо залишають open-ended та interactive deployments як напрям майбутньої роботи (Zollo, Wang, and Zemel, 2026).

Research може визначити candidate signals. Перевіряйте повну систему на роботі, яку вона фактично виконуватиме.

Часті запитання

Чи точні оцінки впевненості LLM?

Іноді вони корелюють із правильністю, але точність залежить від моделі, завдання, методу оцінювання, prompt і evaluation distribution. Розглядайте необроблену оцінку без калібрування як ranking feature. Перевірте її на розмічених результатах, перш ніж трактувати як ймовірність.

Чи є token logprobs тим самим, що й confidence?

Ні. Token logprob — це умовна ймовірність токена з огляду на його контекст. Вона може підтримувати оцінку впевненості, особливо для closed-label tasks, але автоматично не є ймовірністю того, що вільна відповідь фактично правильна.

Який LLM confidence threshold слід використовувати?

Універсального threshold не існує. Обирайте його на основі held-out risk–coverage analysis, яка враховує вартість неправильного прийняття, manual review, abstention і втраченої автоматизації. Повторно перевіряйте його після змін моделі, prompt або розподілу даних.

Перевірка тверджень

ТвердженняСтатусДокази та уточнення
---------
Вербальна впевненість і token probability — це вимірювання, залежні від протоколуПідтвердженоKim and Kang змінювали походження відповіді, token readout, conditioning context і estimator у open model families та QA datasets.
Conditioning context змінив перевагу сигналу в 9 із 12 instruction-tuned settings за порівняннями ECE та BrierПідтвердженоПовідомляється в multi-metric analysis роботи *Asking Is Not Enough*.
Logprobs вимірюють умовну ймовірність токенівПідтвердженоДокументація OpenAI та Google API визначає поля token/candidate log-likelihood.
Sampling agreement може перевершувати single self-reports у short factual QAІз застереженнямSliCK продемонстрував це в описаних експериментах 2026 року; результат не є універсальним і залежить від clustering та sampling assumptions.
SliCK порушив entailment consistency test у 31% оцінених випадківПідтвердженоПовідомляється в *Rethinking Uncertainty Evaluation in Large Language Models*.
Accuracy не визначає calibrationПідтвердженоConfidenceBench повідомляє rankings і Brier scores, які не просто відповідають model accuracy.
Найкращий заявлений Brier score ConfidenceBench становив 0.103ПідтвердженоРезультат є середнім за трьома запусками на приватному benchmark із 200 запитань, а не загальною оцінкою моделі.
Brier score — це mean squared error між probability та binary outcomeПідтвердженоConfidenceBench визначає binary Brier score, використаний у своєму evaluation.
UQLM активно підтримувався в липні 2026 рокуПідтвердженоGitHub release v0.6.4 опубліковано 26 липня 2026 року.
Production threshold має бути task-specificІз застереженнямЦе практична інтерпретація доказів protocol sensitivity і calibration, а не універсальна теорема для кожного застосування.

Джерела

Rethinking Uncertainty Evaluation in Large Language Models — primary research; structural coherence, faithfulness і usefulness tests.
ConfidenceBench: Evaluating Confidence Calibration in Large Language Models — primary research; verbal confidence і Brier-score benchmark.
Asking Is Not Enough: Protocol Sensitivity in LLM Confidence Calibration — primary research; measurement-protocol sensitivity.
Unsupervised Confidence Calibration for Reasoning LLMs from a Single Generation — primary research; offline self-consistency distillation.
Can LLMs Express Their Uncertainty? — primary research; verbal і sampling-based confidence elicitation.
Using logprobs — official OpenAI documentation.
Gemini GenerateContent API — official Google API reference.
UQLM documentation — official open-source project documentation.
UQLM v0.6.4 release — official release record.