Jazyk: CS

Jak počítáme

Slopcheck ukáže u textu 2 čísla: informační zisk a slop. Níže popisujeme, co znamenají a jak jsme metodu vyvíjeli v 5 verzích, od první z 19. října po s3 z 24. října 2026. Pracovali jsme s více než 10 000 bug reporty z Apache Jira a Mozilla Bugzilla, 35 ručně hodnocenými texty a 2 424 tréninkovými texty a píšeme i o tom, co nefungovalo.

Verze metody s3, 24. října 2026.

Informační zisk

Čtenář přichází k textu s otázkami, u bug reportu třeba: jaká verze, jaký prohlížeč, od kolika řádků. Informační zisk říká, na jaký podíl těchto otázek text odpovídá: od 0 do 100 %. Při 100 % už není na co se ptát; formulář s prázdnými poli je blízko 0 %. Model ve vašem prohlížeči odhaduje tento podíl jako hodnocení od 0 do 10 a zobrazuje ho v krocích po 5 %.

Myšlenka sahá ke Claudu Shannonovi, který měřil informaci v bitech: jeden bit je odpověď na jednu otázku typu ano/ne (Shannon, 1948). Bug report „velké exporty padají“ nechá vývojáře zkoušet 12 300 řádků, pak 11 000 – jedna otázka ano/ne za druhou; „exporty nad 10 000 řádků padají“ odpoví na všechny najednou. Warren Weaver popsal tři úrovně komunikace: zda znaky dorazí, zda nesou zamýšlený význam a zda změní, co příjemce udělá (Weaver, 1949); Slopcheck pracuje na druhé a třetí úrovni.

Informační zisk v SEO

V SEO tento pojem označuje, co stránka přidá ke stránkám, které už čtenář viděl. Google má na takové skóre patent, „Contextual estimation of link information gain“ (US 11,354,342 B2, udělen 7. června 2022). Patent nedokazuje, že se skóre používá při řazení výsledků; ve veřejných pokynech se Google ptá, zda obsah přináší původní informace, zpravodajství, výzkum nebo analýzu (v originále „original information, reporting, research, or analysis“, Google Search Central). Slopcheck měří tu část, kterou ukáže 1 text sám, bez srovnání s jinými stránkami: podíl otázek čtenáře, na které text odpovídá, od 0 do 100 %.

Co výrok vylučuje

Rudolf Carnap a Jehošua Bar-Hillel popsali významovou stránku informace: výrok nese tím víc informace, čím víc možných stavů světa vylučuje (Carnap a Bar-Hillel, 1952). „Export se přeruší u objednávek nad 500 položek v Chrome 128“ vylučuje mnohem víc než „export někdy nefunguje“. Pojmenovaný práh je nejsilnější forma: „3.1.4 funguje, 3.2.0 už ne“ řekne vývojářce, které vydání otevřít.

Zda je výrok pravdivý, je jiná otázka (Stanford Encyclopedia of Philosophy). Slopcheck nekontroluje fakta: výrok „objednávky nad 500 položek“ dostane stejné skóre, ať je skutečný práh 500, nebo 5 000.

Na čem čtenáři záleží

Ronald Howard v roce 1966 ukázal, že informace má cenu podle toho, co změní v rozhodnutí (Howard, 1966). Pro vývojářku „Chrome 128“ rozhodne, který ze 3 prohlížečů testovat, kdežto „export je důležitý“ nerozhodne nic. Na produktové stránce „4 EUR za uživatele za měsíc, prvních 30 dní bez poplatku“ změní rozhodnutí o nákupu, „bezproblémový zážitek“ ne. U bug reportu tak mění další krok vývojáře hlavně verze, kroky a práh.

Slop

Slop je podíl textu, počítaný ve slovech od 0 do 100 %, který neodpovídá na žádnou otázku čtenáře. Rozlišujeme 4 druhy: prázdné věty, které sednou na každý text; samozřejmé, které nevylučují nic, s čím čtenář počítal; nepodstatné, které nemění žádné rozhodnutí; a nedohledatelné jako „jak jsme se domluvili“ nebo „jako tam“, k tomu opakování. Ve výsledku je každá slopová věta zvýrazněná.

Slop porušuje 2 z konverzačních maxim, které popsal Paul Grice: buď tak informativní, jak je třeba, a ne víc; mluv k věci (Grice, 1975). Opakování Shannon v roce 1948 nazval redundancí: je to část zprávy, kterou čtenář předpoví ze zbytku.

Styl není slop: „opravili jsme export do CSV“ a „problém s exportem do CSV byl vyřešen“ se počítají stejně.

Jak spolu obě čísla souvisejí

Slop nenese informaci, takže čím víc slopu text obsahuje, tím nižší je strop jeho zisku. Text s 60 % slopu dostane nejvýš zhruba 50 % a text s 95 % slopu nebo víc nejvýš 10 %. Plných 100 % ukážeme jen u textu bez jediné slopové věty, jinak nejvýš 95 %. Délka není cíl: bug report o 50 slovech může dostat 90 %.

Bug reporty, úkoly a produktové stránky

Sepsali jsme 27 otázek, se kterými čtenář přichází k textu: 7 pro každý text, 8 pro bug reporty, 7 pro úkoly a 5 pro produktové stránky. Bug report odpovídá na otázky: jaká verze, jaké kroky, co se čekalo, co se stalo, zda vždy, nebo jen někdy, a od kterého vydání. Úkol odpovídá na otázky: co, kde, proč, jak ověřit, že je hotový, a na co nesahat; dobrá akceptační kritéria znějí jako „34 nastavení, 4 záložky, texty beze změn“. Produktová stránka odpovídá na 5 otázek: pro koho, co dělá, čím je to doloženo, kolik stojí a jaký je další krok. Model se tyto rozdíly naučil z 2 424 příkladů, které ohodnotil jazykový model, takže před vložením textu nemusíte volit jeho druh.

5 verzí za 4 dny

Verze 1 z 19. října 2026 počítala funkční a výplňová slova a konkrétní údaje na 100 slov. Verze 2 přidala vzácnost slov, měřenou podle frekvenčních seznamů, které jsme pro každý jazyk sestavili ze zhruba 600 000 slov z Wikipedie. Na 55 webových stránkách, které ohodnotily dva jazykové modely, to byl šum (AUROC 0,45 až 0,49), takže jsme ji vyřadili. Verze 3 soudila podle konkrétnosti na 100 slov. Na 37 nových stránkách odložených pro test měl její verdikt „málo obsahu“ pravdu v 1 případě z 9, a tak zůstal jen jako tip.

Verze 4 používala katalog zhruba 1 000 vzorů v 5 jazycích a na stejných 37 stránkách odlišila nafouknuté stránky od hutných (AUROC 0,75; tyto výsledky jsme viděli už během vývoje, takže číslo je optimistické). Na skutečných bug reportech ale byla na úrovni náhody (0,47 až 0,52). Tenhle neúspěch nás posunul od počítání slov k počítání otevřených otázek čtenáře a k verzi 5 (s2) z 22. října; 24. října jsme ji přetrénovali pro 12 jazyků (s3).

Co nás naučily systémy pro hlášení chyb

Vzali jsme 1 355 hlášení z Mozilla Bugzilla z let 2023–2025. Hlášení uzavřená jako neúplná nebo „works for me“ a hlášení, jejichž autora někdo požádal o další údaje, byla delší než hlášení opravená bez takové žádosti (medián 165 slov proti 124) a konkrétnější: lidé zvenčí vyplňují celou šablonu, která je ve 38 % hlášení „works for me“ a ve 14 % opravených, kdežto vývojáři píšou krátké poznámky opřené o společný kontext. Výsledek hlášení tedy vypovídal o autorovi, ne o textu, a proto jsme dál porovnávali jen hlášení stejného autora.

V Apache Jira jsme sebrali 11 129 bug reportů podaných od roku 2022 ve 165 projektech a porovnali opravené s uzavřenými jako „Cannot Reproduce“ nebo „Incomplete“. Jedno zjištění metodu formovalo: jazykový model přečetl 240 z těchto hlášení, 120 dvojic od stejného autora, aniž znal výsledek nebo autora. Na otázku, zda je uvedena verze nebo prostředí, častěji odpověděl kladně u špatně přijatých hlášení (63 % proti 50 %). Na otázku, co vývojář ještě potřebuje, u stejných hlášení častěji uvedl verzi nebo prostředí (48 % proti 33 %). Samotná zmínka o verzi ještě neodpovídá na otázku, ve které verzi chyba nastává.

Pravidla z ručního hodnocení

Ručně jsme ohodnotili 35 textů, většinu na škále od 0 do 10: 0 je formulář bez obsahu, 5 až 6 jde udělat po pár dotazech, 9 nechává jednu otevřenou otázku, 10 nenechává nic k doplnění. K 28 z těchto textů položil náš první katalog otázek 86 otázek; 35 z nich jsme označili, 26 jako oprávněné a 9 jako zbytečné. Tak vznikl písemný návod se 37 pravidly a 33 testovacími případy.

Příklady pravidel: výrok bez hranice znamená vždy a všude, takže chybějící verze nic nestojí, dokud text neříká „někdy“ nebo „po aktualizaci“; zákaz se počítá, jen když zavírá cestu, kterou úkol naznačuje; protichůdné požadavky stojí nejvíc. V jednom testu jsme stejná fakta přepsali s jasnou souvislostí a pojmenovaným objektem a hodnocení stouplo z 1 na 9 až 10 z 10. V jiném bylo hlášení, které jsme ručně ohodnotili na 10, uzavřené jako „Cannot Reproduce“: výsledek v systému je signál, ne verdikt.

Jazykové modely jako hodnotitelé a učitel

37 pravidel jsme převedli do hodnoticího návodu pro velké jazykové modely a porovnali 5 modelů na 27 textech s ručním číselným hodnocením. Pravidla vznikla z těchto textů, takže srovnání ukazuje, jak přesně model pravidla dodržuje, ne jak si vede na nových textech: dva nejlepší se od ručního hodnocení odchýlily nejvýš o 1 bod u 22 textů z 27 (pořadová korelace až 0,94), nejslabší u 12 z 27.

Jeden z této dvojice pak ohodnotil 2 424 textů větu po větě: 600 veřejných úkolů a bug reportů z Apache Jira, 384 textů se stejnými fakty, které jazykové modely napsaly ve 4 stylech, 600 textů, které sám napsal pro trénink v němčině, polštině, češtině, chorvatštině a ruštině, a 840 textů, po 120 ve slovenštině, slovinštině, bulharštině, francouzštině, italštině, španělštině a nizozemštině, které napsaly jazykové modely, aniž znaly pravidla. To je 18 420 ohodnocených vět, z nich 21,4 % slop. Malý model ve vašem prohlížeči se z těchto hodnocení učil. V křížové validaci se s učitelem shoduje s pořadovou korelací 0,85 a na textech, na kterých se neučil, najde slopové věty učitele s AUROC 0,92. S ručním hodnocením 25 textů se shoduje s pořadovou korelací 0,81, jenže pravidla nad modelem vznikla ze stejných textů, takže férovější mírou jsou testy na odložených textech níže.

Když text kontrolujete, žádný jazykový model ho nečte. Volání modelu by poslalo text třetí straně, mohlo by pro stejný text dát jinou odpověď a stálo by peníze za každou kontrolu; malý model běží na zhruba 350 KB pevných vah.

Předpovědi zapsané předem

Před 5 experimenty jsme zapsali předpovědi do souboru a uložili ho, ještě než jsme začali měřit. Pro měření vzorů z 20. října 2026 začíná kontrolní součet MD5 tohoto souboru na ff01ce1a. Předpovídali jsme, že prostá verze porazí verzi ve stylu asistenta v 85 až 95 % dvojic; porazila ji v 79 %. Odmítnutá hlášení z Bugzilly měla být kratší, ve skutečnosti byla delší, s mediánem 165 slov proti 124. U dvojic z Jiry od stejného autora se netrefily 3 předpovědi ze 4. Od omylu s Bugzillou pracuje každé další srovnání jen s hlášeními stejného autora.

Co nefungovalo

Vzácnost slov (AUROC 0,45 až 0,49). Podíl funkčních a výplňových slov, který na odložených stránkách dosáhl AUROC jen 0,31, tedy hůř než náhoda. Verdikt „málo obsahu“, který platil 1krát z 9. Počítání jednotek významu nebo kontrolní seznam úplnosti s 5 body, které se s hodnocením celého textu shodovaly jen s pořadovou korelací 0,18 až 0,26. 8 ukazatelů podle vzoru signálů vyhledávačů, zamítnutých už ve fázi návrhu. Srovnání stránky s prvními 3 až 10 výsledky hledání, které potřebuje placené API vyhledávače. Široké verze explicitních pravidel, které se spustily u 33 hlášení z Jiry; každý prověřený případ byl planý poplach. Jazykový model v době kontroly: ručnímu hodnocení se přiblížil nejvíc, ale váš text by posílal třetí straně.

Jak metodu testujeme

Pro testy odkládáme stranou 24 zadání v angličtině a němčině, každé napsané ve 4 verzích jazykovými modely. Prostá verze dostane vyšší skóre než nafouknutá ve všech 24 dvojicích a vyšší než verze ve stylu asistenta v 83 %. Pro každý ze 7 jazyků přidaných 24. října odkládáme dalších 6 zadání ve 4 verzích: prostá verze porazí nafouknutou v každé dvojici a verzi ve stylu asistenta ve 100 % dvojic ve slovenštině a slovinštině, v 92 % v italštině a nizozemštině, v 83 % v bulharštině a francouzštině a v 58 % ve španělštině.

U 120 odložených dvojic hlášení z Jiry od stejného autora má opravené hlášení vyšší skóre zhruba v 60 % dvojic. Jazykový model, který čte stejných 240 hlášení naslepo, bez výsledku a autora, dosáhne 64 %. Anglická a německá zadání ani dvojice z Jiry nebyly použity při tréninku, ale vybírali jsme podle nich mezi variantami explicitních pravidel, takže na nových textech mohou výsledky vyjít o něco níž. Zda hlášení skončí opravou, nebo jako „Cannot Reproduce“, závisí i na samotné chybě: může být už opravená v novější verzi, objevovat se jen v jednom prostředí nebo vyplývat z chyby v konfiguraci, takže 100 % v tomto testu není možné.

Jak se odhad počítá

U celého textu model čte 182 signálů, například čísla, verze, podmínky, prahy, jména, citované hlášky, vágní slova, nepodložená tvrzení, opakování a prázdné nadpisy šablon, a k tomu slova a dvojice slov zahashované do 16 384 buněk; u každé věty druhý model s 68 signály a stejnými zahashovanými slovy rozhodne, zda je slop. Model textu je lineární regrese na těchto signálech, model vět logistická regrese; oba byly natrénovány na 2 424 hodnocených textech. Nad modelem platí 3 pravidla z ručního hodnocení. Začátek naplánovaný až po termínu stojí 25 bodů. Úkol, který začíná „rozdělit na 4 záložky“ a neřekne, co rozdělit, dostane nejvýš 20 %. Šablona s prázdnými nadpisy dostane nejvýš 10 %. Váhy mají zhruba 350 KB a načtou se spolu se stránkou. Kontrola textu o 3 000 znacích trvá méně než 100 milisekund.

Věty a jazyky

Text dělíme na věty podle teček, otazníků, vykřičníků, tří teček a zalomení řádků, ale ne uvnitř „v8.1“, „1.200“ nebo webové adresy a ne za datem jako „7. Juni“. Podporujeme 12 jazyků: češtinu, angličtinu, polštinu, slovenštinu, chorvatštinu, slovinštinu, bulharštinu, němčinu, francouzštinu, italštinu, španělštinu a nizozemštinu. Jazyk se rozpozná automaticky: na našich dřívějších testovacích sadách správně v 99,6 %, u krátkých textů v nových jazycích v 97,1 %. Seznamy slopových frází pro 11 jazyků kromě angličtiny jsme sestavili sami; pro němčinu, polštinu, češtinu a chorvatštinu jsme volně dostupné nenašli. Bezplatná kontrola bere 80 až 3 000 znaků, což pokrývá 97,5 % sebraných bug reportů z Jiry, nepočítáme-li bloky kódu. Známé zkreslení: už samotný jazyk posune odhad o pár bodů. Při stejných signálech dostanou texty ve španělštině, francouzštině, češtině a italštině o 5 až 8 bodů méně než v angličtině, v němčině a nizozemštině zhruba o 4 body víc, takže skóre porovnávejte v rámci jednoho jazyka.

Co neměříme

Neměříme autorství, pravdivost ani pozici v Googlu nebo Bingu. Na vzorku veřejného benchmarku RAID v angličtině zachytily textové rysy založené na pravidlech nejvýš 28 % textů napsaných AI. Platí to při 5 % falešných poplachů, a proto detekci autorství nenabízíme. Poznámka o 2 řádcích může týmu se společným kontextem úplně stačit, ale odhad vidí jen text.

Otázky

Jak zkontrolovat text na AI slop?

Vložte ho do pole na hlavní stránce: 80 až 3 000 znaků, až 5 textů denně zdarma. Uvidíte informační zisk, podíl slopu a slopové věty označené v textu.

Ukládá se nebo posílá se můj text někam?

Ne. Kontrola běží ve vašem prohlížeči: text se k nám neposílá a neukládá se. Odkaz na výsledek nese text v části adresy za znakem #, kterou prohlížeče serverům neposílají.

Jaké texty mohu kontrolovat?

Články, produktové stránky, příspěvky, úkoly, user stories a bug reporty ve 12 jazycích: česky, anglicky, polsky, slovensky, chorvatsky, slovinsky, bulharsky, německy, francouzsky, italsky, španělsky a nizozemsky, od 80 do 3 000 znaků.

Jak napsat dobrý bug report?

Popište, jak problém reprodukovat: jaké kroky, jaká verze, jaké zařízení a od jakého prahu chyba nastává. Ve studii 180 reprodukovatelných bug reportů androidích aplikací chyběl v 92,2 % alespoň 1 krok (Johnson a kol., 2022). „Export se přeruší u objednávek nad 500 položek v Chrome 128“ vylučuje mnohem víc než „export někdy nefunguje“. Vložte report do kontroly a uvidíte, které věty na žádnou z těchto otázek neodpovídají.

Je Slopcheck detektor AI textu?

Ne. Slopcheck odhaduje, kolik text čtenáři řekne. Neříká, kdo nebo co ho napsal: generovaný text se skutečnými fakty může dostat vysoké skóre a ručně psaný bez faktů dostane nízké.

Čím se Slopcheck liší od nástrojů, které hledají stopy AI?

Nástroje, které počítají dlouhé pomlčky, „delve“ nebo „tapestry“, se dívají na povrch textu. Slopcheck se dívá na to, co čtenář dostane: text se může vyhnout všem stopám a přesto neodpovědět na jedinou otázku.

Co je pas textu?

Záznam jednoho konkrétního textu: hash, informační zisk, slop, verze metody a datum kontroly, na stránce s vlastním odkazem. Kdo má text, vloží ho tam a uvidí, zda sedí: když se liší byť jen 1 znak, hash je jiný. Každá úprava se uloží jako nová verze s vlastními výsledky.

Potřebuji k API plugin nebo SDK?

Ne. V tarifu Tým je kontrola jeden HTTP požadavek s textem. Zapojíte ji do kroku v CI, do hooku před publikací v CMS nebo do pole ve vašem systému úkolů.

Zdroje

  1. C. E. Shannon (1948). A Mathematical Theory of Communication. Bell System Technical Journal
  2. C. E. Shannon, W. Weaver (1949). The Mathematical Theory of Communication. University of Illinois Press
  3. Google LLC (2022). Contextual estimation of link information gain. Patent USA 11,354,342 B2
  4. Google Search Central. Creating helpful, reliable, people-first content
  5. R. Carnap, Y. Bar-Hillel (1952). An Outline of a Theory of Semantic Information. MIT Research Laboratory of Electronics
  6. S. Sequoiah-Grayson, L. Floridi. Semantic Conceptions of Information. Stanford Encyclopedia of Philosophy
  7. R. A. Howard (1966). Information Value Theory. IEEE Transactions on Systems Science and Cybernetics
  8. H. P. Grice (1975). Logic and Conversation; maximy shrnuje heslo „Implicature“ ve Stanford Encyclopedia of Philosophy
  9. J. Johnson a kol. (2022). An Empirical Investigation into the Reproduction of Bug Reports for Android Apps. SANER 2022, oddíl IV-C
  10. Apache Software Foundation. Systém úkolů Jira, veřejné bug reporty a úkoly 2022–2026
  11. Mozilla. Bugzilla, veřejná hlášení chyb 2023–2025
  12. L. Dugan a kol. (2024). “RAID: A Shared Benchmark for Robust Evaluation of Machine-Generated Text Detectors”. ACL 2024

Zkontrolujte svůj text

Vložte článek, produktovou stránku, úkol nebo bug report a uvidíte informační zisk a slop.

Zkontrolovat text zdarma

Předběžný přístup

Autory a týmy připojujeme postupně: automatická kontrola webů, API pro systémy úkolů a pasy textů. Nechte nám e-mail, pošleme pozvánku a ozveme se. Teď nic neúčtujeme.