Strukturovaný výstup není formátování
Když si od modelu vyžádáte odpověď podle schématu, řešíte tím jeden problém a otevíráte druhý.
Vyřešený problém: odpověď se dá zpracovat kódem. Žádné parsování prózy, žádné regulární výrazy nad větami.
Otevřený problém: schéma kontroluje tvar, ne pravdu. Jistota 0,95 je platné číslo v platném rozsahu, i když nikde nevznikla.
Kde se to láme nejčastěji
Pole s výčtem. Model dostane na výběr „ano / ne / nevím", nemá dost informací a musí si vybrat. Vybere. A protože „nevím" vypadá jako slabá odpověď, vybere častěji „ano" nebo „ne".
Schéma tím z nejistoty udělalo tvrzení — a udělalo to tiše.
Co s tím
Tři věci, které pomáhají víc než delší prompt:
Nechte nejistotu být platnou odpovědí, ne poslední možností. Když je „nevím" v seznamu první a v popisu stojí, kdy ji použít, používá se.
Ptejte se na doklad, ne na závěr. Pole s doslovnou citací ze vstupu je ověřitelné. Pole s číslem jistoty není.
Validujte významově, ne jen syntakticky. Když model tvrdí, že něco našel, ověřte kódem, že to tam je.
Shrnuto
Schéma je hranice tvaru. Hranice pravdy musí být jinde — a musí ji držet kód, ne pokyn v promptu.