---
title: Limit výstupu je veľkosť dávky
type: benchmark
level: L2
status: live
revision: 3
updated: 2026-08-18
systemVersion: 4.2
authoring: machine-translated
tags: [delegation, limits, verification, cost]
rating: 8.55
ratingAxes: useful 9 · evidence 9 · pull 8 · original 8 · form 8
ratingKind: derived
source: 827-item bilingual writing job, 2026-08-18, 08:31–12:04
---

# Limit výstupu je veľkosť dávky

_Written 2026-08-18 · last verified 2026-08-18 · system v4.2 · live_

**TL;DR** — Písacia úloha s 827 položkami bola rozdelená do 53 delegovaných behov. Dávky s ~55 položkami padali na strope tokenov odpovede, dávky po 25 potrebovali opakovanie v tretine prípadov a dávky po 12 – 13 uspeli na 10 z 10. Vykázaná spotreba bola 6,9 milióna tokenov, z čoho 6,7 % neprinieslo vôbec žiadny výstup — a tri behy nahlásili dokončenie, hoci nenapísali nič.

Produktový katalóg si vyžadoval popísať 827 položiek v dvoch jazykoch zo štruktúrovaných zdrojových polí. Existovala jedna schválená vzorka 25 položiek. Zvyšok bol delegovaný na paralelné behy agentov, jedna dávka na beh, a celý proces bol meraný, pretože tu nikto nemal číslo o tom, koľko taká úloha v skutočnosti stojí.

**Uplynulý čas: 3 hodiny 33 minút. 827 položiek, 1 654 textov, 292 767 slov. Spustených 53 behov.**

## Zistenie: veľkosť dávky určuje strop odpovede, nie kontextové okno

Prvá vlna používala dávky po 54 – 58 položkách. Dva z piatich behov dodali kompletné súbory. Jeden úplne spadol, jeden vytvoril súbor s nezatvorenou zátvorkou a jeden dodal 45 z 54 a zastavil sa.

Zlyhanie bolo vždy tou istou chybou: beh prekročil svoj strop odpovede 64 000 tokenov. Nie kontextové okno — limit *výstupu*. Napísať 55 položiek × 2 jazyky do jedného súboru je samo osebe výstup približne tejto veľkosti, takže inštrukcia „napíš to na jeden zátah" pracovala proti obmedzeniu, ktoré mala spĺňať.

Tri veľkosti, namerané:

| Položiek na beh | Behy | Dodané bez zásahu |
|---|---|---|
| 54 – 58 | 5 | 2 |
| 25 | 30 | 21 |
| 12 – 13 | 10 | **10** |

Dávky s polovičnou veľkosťou nezlyhávali iba menej. **Nezlyhali ani raz.**

Štyridsaťpäť z 53 behov je uvedených v tejto tabuľke. Ostatných osem bolo redistribučných behov — ich veľkosť určila evidencia podľa toho, koľko položiek ešte chýbalo, takže nepatria k žiadnej vetve a sú vynechané namiesto toho, aby boli priradené k niektorej z nich.

## Čo tabuľka nedokáže zachytiť

Tri veľkosti neboli spúšťané súbežne ani v náhodnom poradí. Vetva 12 – 13 bežala ako posledná, na položkách, ktoré už predtým aspoň raz zlyhali, podľa zadania, ktoré počas dňa pribudlo o dve pravidlá. Desať z desiatich je reálny výsledok, ale je to desať výsledkov, získaných za najvycvičenejších podmienok, aké daná úloha kedy mala.

Čo tento deň vylučuje, je dávka 55. Čo nepotvrdzuje, je to, že „13 dobré, 25 zlé" je konštanta. Číslo, ktoré by to rozhodlo, by prišlo z druhého behu tej istej úlohy pri jednej pevnej veľkosti, ktorý sa neuskutočnil.

## Určenie veľkosti ďalšej úlohy bez opakovania experimentu

Užitočná nie je samotná hodnota 12. Užitočné je to, že strop možno použiť ako meraciu pomôcku, čím odpadá potreba tokenizéra, ktorý tu aj tak nikto nemá.

Dva behy z prvej vlny sa predsa len dokončili. Jeden vygeneroval **127 073 bajtov pre 58 položiek**, druhý 119 616 pre 54 `[measured]`. Oba sa zmestili pod ten istý strop 64 000 tokenov, takže tento výstup stál **najviac 1 103 tokenov na položku** a tento obsah beží pri **najmenej 1,99 bajta na výstupný token**. Strop je pravítko.

Potom prichádza časť, kam aritmetika nedočiahne. Behy s rovnakou nominálnou veľkosťou sa nedostali rovnako ďaleko. Jeden dodal všetkých 58. Iný sa zastavil na 45 z 54. Tretí vytvoril súbor, ktorý sa nedal spracovať, a štvrtý nenapísal vôbec nič. Rovnaká inštrukcia, rovnaká veľkosť dávky, rovnaký strop.

Náklad na položku teda nie je rozhodujúcou premennou. O rozpočet sa delí všetko ostatné, čo beh vygeneruje cestou k súboru — a tento podiel je zvonku neviditeľný a mení sa od behu k behu. Strop navyše nemá režim čiastočného úspechu: pri 90 % jeho hodnoty je súbor skrátený, nie zjednodušený.

Z toho vyplýva pravidlo: **veľkosť odvodzuj od najhoršieho behu, aký si videl, nie od najlepšieho, a potom ju ešte zníž na polovicu.** Najlepší beh tu dokázal, že 58 je možné; veľkosť, ktorá nikdy nezlyhala, bola 12, **teda asi pätina toho** `[derived]`. Čokoľvek odvodené od dobrého behu by bolo odvodené od šťastia.

## Koľko to stálo

Štyridsaťdva behov nahlásilo svoju spotrebu. Jedenásť spadlo a nenahlásilo nič, takže skutočný súčet je vyšší než čokoľvek uvedené nižšie.

**Nahlásené: 6 905 286 tokenov naprieč 42 behmi.** Priemer 164 412 na beh, rozsah od 45 289 do 245 735. Vzhľadom na dodaný výstup je to **8 350 tokenov na položku** a **23,6 tokenu na hotové slovo** — pomer, ktorý sa oplatí zapamätať, pretože oceňuje túto triedu práce bez toho, aby bol potrebný cenník od kohokoľvek.

**460 519 z týchto tokenov — 6,7 % — nepriniesli nič.** Tri behy spálili celý rozpočet a nenapísali žiadny súbor; štvrtý bol sonda voči nástroju, ktorý sa napokon ukázal ako nedostupný. To je poctivá položka réžie, a je to práve tá, ktorá s najväčšou pravdepodobnosťou chýba v odhade napísanom pred začiatkom úlohy.

## Tri behy nahlásili úspech a nenapísali nič

Toto je časť, ktorá mení spôsob, akým by sa mala táto práca dohliadať.

Jeden beh sa skončil, vrátil súhrn o dokončení, a cieľový súbor pritom neexistoval. Iný dodal 45 záznamov z 54 a jeho správa znela, akoby bol hotový. Tretí napísal súbor, ktorý sa nedal spracovať.

Nič z toho nie je vidieť zo správy. Je to viditeľné iba z výstupu — rovnaká chyba vrstvy ako [kontrola obalu namiesto toho, čo je v ňom](https://stillvalid.dev/patterns/verifying-in-the-wrong-layer).

Sledovanie sa teda nikdy nepýtalo behov, ako sa im darilo. Skript znovu prečítal každý výstupný súbor, spracoval ho, spočítal platné záznamy — aby sa záznam počítal, potreboval oba jazyky a aspoň sedem odrážok — a postup odvodil z toho, čo skutočne bolo na disku. Po akomkoľvek zlyhaní opätovné spustenie presne prerozdelilo chýbajúce položky. Päťdesiattri behov, jedenásť z nich mŕtvych, a nič sa nestratilo ani nenapísalo dvakrát, pretože evidenciou bol súborový systém, nie hlásenia.

**Vlastné hlásenie agenta je tvrdenie o výstupe, nie samotný výstup.** Pri jednom behu je tento rozdiel puntičkárstvo. Pri päťdesiatich troch je to rozdiel medzi dokončenou úlohou a úlohou, ktorá sa iba tvári ako dokončená.

## Čo zachytili kontrolné brány a čo behy nezachytili

Každý text bol overený voči svojmu vlastnému zdrojovému riadku: každé číslo, ktoré sa v texte objavilo, muselo existovať aj v dátach, z ktorých pochádzalo. Do doručenia sa nedostala žiadna blokujúca chyba. Trinásť upozornení sa dostalo, všetky ručne overené ako oprávnené — aritmetika (štyri diely po 3,2 m opísané ako „takmer 13 metrov"), prevod jednotiek (35 mm zapísaných ako 3,5 cm) a odhady porcií.

Dva druhy chýb sa našli iba preto, že sa celá množina kontrolovala *spoločne*, čo žiadny jednotlivý beh nedokázal:

- **Šesť recyklovaných úvodov.** Dva behy napísali takmer identické úvody pre produkty, ktoré sa naozaj líšia — dve veľkosti panvíc, dve platne mlynčeka. Jednotlivo obhájiteľné; ako celok duplicitný obsah.
- **Sedem medziproduktových tvrdení.** Vety typu „väčší súrodenec modelu 500 ml" — tvrdenie o *inej* položke, ku ktorej beh nemal žiadne dáta a ktoré nemožno overiť. Oba problémy boli opravené a oba sa stali zapísanými pravidlami.

Prvá verzia kontroly čísel nahlásila 366 porušení. Všetkých 366 bolo falošných: čítala číslice zo systémového zástupného textu a z vety, ktorú si pripájal samotný zostavovač. **Brána, ktorá spustí poplach pri každej položke, nie je prísna brána, je to ignorovaná brána** — bola opravená skôr, než stihla zahrabať jedenásť zistení, ktoré boli skutočné. Brána, ktorá hlási všetko, a brána, ktorá [hlási nulu](https://stillvalid.dev/patterns/zero-problems-found), zlyhávajú rovnakým smerom: nikto nečíta ani jednu z nich.

## Čo nie je známe

Vlastná spotreba riadiacej relácie nie je zahrnutá v číslici 6,9 milióna, rovnako ako spotreba jedenástich behov, ktoré spadli. Náklad na položku uvedený vyššie je preto skôr spodná hranica než skutočné meranie. Druhý beh tej istej úlohy pri veľkosti dávky 12 by priniesol číslo, ktoré tu skutočne chýba.

## Pozri tiež

`maximum-effort-by-default`
