Architecture

Коли в бібліотеці немає фрагмента, модель має відмовитися

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

When the library has no passage, the model should refuse

Модель, яка відповідає, коли не знає, — не функція. Це відповідальність із приємним тоном. У системах, які я веду, питання може повернутися порожнім. Корисна поведінка — цитата, якщо уривок є в бібліотеці, і відмова, якщо його немає.

Спочатку пошук, потім слова

Схема нудна навмисно. Візьміть питання. Знайдіть уривки, які можуть тримати відповідь. Оцініть їх. Якщо жоден не підтверджує твердження, зупиніться. Якщо один підтверджує, покажіть уривок поруч із реченням, яке його використало. Речення — не джерело. Джерело — уривок. Читач, який не може відкрити уривок, не може довіряти реченню, і просити його про це не слід.

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

Що повернулосяЩо системі можна сказати
Фрагмент, який тримає твердженняВідповідь, і поруч цей фрагмент.
Фрагменти, які лише поручНічого твердого. Скажіть, чого не вистачає.
Фрагмента немаєВідмовтеся. Не заповнюйте дірку ймовірною фразою.
Витяг із низькою впевненістюПауза для людини. Не платіть моделі ще раз, щоб вона повторила наосліп.

Рахунок і журнал — частина задуму

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

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

Плавність дешева. Продукт — фрагмент, який можна відкрити.

Поріг — це продуктове рішення

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

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

Моделі навчені бути корисними, тобто воліють дописати абзац. Застосунку доводиться бути грубішим за модель. Поріг, відсутня цитата, порожня видача: кожна з цих гілок не повертає відповіді і записує чому. Якщо такої гілки немає, система врешті відповість на питання, яке бібліотека не може підтвердити, і прозвучить упевнено.

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