Autor: Zespół Luage
Czas lektury: ok. 8–12 minut | Rodzaj: Artykuł badawczy | Status: Recommended | Wersja: 1.0
Zespoły często dochodzą do pozornie prostego wniosku: „skoro model popełnia błędy, to poprośmy o tok myślenia”. Krótkoterminowo to pomaga w debugowaniu. Długoterminowo potrafi stać się obciążeniem: dłuższe odpowiedzi, większy koszt, większa powierzchnia naruszeń (PII, sekrety, złośliwy kontekst) i rosnąca trudność review.
Dojrzałe podejście enterprise jest tradycyjne: rozliczalność buduje się przez kontrakt, bramki jakości i audyt, a nie przez publikowanie pełnego scratchpadu.
W praktyce porządkujemy temat w trzech poziomach:
| Poziom | Adresat | Co zawiera | Główne ryzyko |
|---|---|---|---|
| Wynik | Odbiorca końcowy | Odpowiedź w wymaganym formacie (krótko, rzeczowo). | Halucynacje i brak źródeł (jeśli wymagane). |
| Rationale | Odbiorca + reviewer | Krótka argumentacja + źródła + założenia. | Pozorna wiarygodność, jeśli brak evidence. |
| Ślad audytu | Operacje / compliance | trace_id, wersje polityk, lista źródeł, wyniki walidacji, logi narzędzi. | Niewłaściwy dostęp (uprawnienia, retencja). |
Ten podział jest praktyczny: możemy być „przezroczyści” tam, gdzie to potrzebne (audyt), i oszczędni tam, gdzie to właściwe (komunikacja).
Uzasadnienie produkcyjne ma trzy cechy: jest krótkie, jest weryfikowalne i nie zdradza „mechaniki systemu”. Najprostszy kontrakt, który sprawdza się w praktyce:
Kontrakt (rationale):
1) Teza / wniosek (1–2 zdania)
2) Evidence: źródła lub cytowania (jeżeli wymagane)
3) Założenia i braki danych (jeżeli występują)
4) Następny krok (jeżeli potrzebny)
To podejście jest bliskie temu, jak tradycyjnie pisze się uzasadnienia decyzji w organizacji: wniosek, podstawa, założenia, konsekwencje. Dodatkowo jest testowalne: można sprawdzić, czy istnieją źródła, czy założenia są jawne i czy format jest kompletny.
Rationale można napisać ładnie i błędnie. Dlatego w systemach o podwyższonych wymaganiach elementem obowiązkowym powinno być evidence: dokument, log narzędzia, link do KB, numer procedury. Bez evidence rationale jest tylko narracją.
Polityka ujawniania to zestaw reguł: co wolno publikować w odpowiedzi, a co zostaje w warstwie audytu. Dobrze, jeśli jest prosta, wersjonowana i ma jasno zdefiniowane poziomy.
| Obszar | Reguła | Przykład skutku |
|---|---|---|
| Dane wrażliwe | Nie ujawniamy PII, sekretów, tokenów ani fragmentów promptów systemowych. | Redakcja + instrukcja rotacji tokenu w razie wycieku. |
| Źródła | Jeżeli wymagane — każda teza faktograficzna ma cytowanie. | Brak cytowań → tryb „brak w źródłach” lub eskalacja. |
| Instrukcje ze źródeł | Tekst z dokumentów traktujemy jako dane; instrukcje nie nadpisują polityk. | Prompt injection jest neutralizowany, wynik zostaje zgodny z policy packiem. |
| Uzasadnienie | Rationale ma limit długości i strukturę. | Mniej wylewności, mniej dryfu, prostsze review. |
Poniżej przykład „czytelnego” zapisu reguł w formie, którą da się wersjonować (w praktyce to może być YAML/JSON w repozytorium polityk):
disclosure_policy:
external:
rationale: short
citations_required: true
forbid:
- pii
- secrets
- system_prompts
- internal_identifiers
internal:
rationale: medium
citations_required: true
allow:
- assumptions
- decision_tradeoffs
audit:
rationale: off
log:
- trace_id
- policy_versions
- sources
- validation_results
Największy postęp jakościowy robi się wtedy, gdy zamiast „wierzyć w dobre rozumowanie”, wprowadzamy walidacje. Typowe bramki jakości dla workflow opartych o CoT:
Jeżeli CoT ma pracować w produkcji, musi być obsługiwane jak każdy element systemu: z wersjonowaniem, monitoringiem i procedurą wyjątków.
Każda odpowiedź powinna mieć trace_id. W śladzie audytu zapisujemy: wersję policy packa, wersję glosariusza, listę źródeł, wyniki walidacji oraz — jeżeli dotyczy — logi narzędzi. To pozwala odtwarzać incydenty i regresje.
Audyt jest wrażliwy, bo zawiera „prawdę o systemie”: wersje, źródła, wyniki bramek. Dlatego ślad audytu wymaga retencji, uprawnień i zasad udostępniania (kto, kiedy, na jakiej podstawie).
Zmiany w promptach, politykach i kontekście to zmiany w zachowaniu systemu. Tradycyjnie rozwiązuje się to testami regresji. W Luage rekomendujemy golden set: przykłady reprezentatywne + progi jakości (format, cytowania, naruszenia).
Zawsze będą przypadki, w których źródeł nie ma lub odpowiedź nie przechodzi walidacji. To powinno kończyć się decyzją operacyjną: odmowa, eskalacja, prośba o doprecyzowanie albo tryb „tylko streszczenie”. Nie powinno kończyć się automatycznym „dopiszmy więcej CoT”.
To jest konserwatywny zestaw praktyk — i właśnie dlatego działa. W organizacji liczy się przewidywalność i rozliczalność, a nie efektowność wywodu.