Omezené rozbalování běhů
Rozbalte opakování bajtů až po ověření celkového limitu výstupu.
def expand_runs(runs, limit):
if type(limit) is not int or limit < 0:
raise ValueError("limit.invalid")
total = 0
for value, count in runs:
if type(value) is not int or not 0 <= value <= 255:
raise ValueError("byte.invalid")
if type(count) is not int or count <= 0:
raise ValueError("count.invalid")
total += count
if total > limit:
raise ValueError("output.limit")
return bytes(value for value, count in runs for _ in range(count))Před použitím zkontrolujte
Porovnejte skutečné chování s očekávaným výsledkem. Pokud kontrola selže, před dalšími změnami zjistěte příčinu.
Modely
Nastavte endpoint kompatibilní s OpenAI nebo Anthropic pomocí základní URL a případného API klíče. Otestujte připojení. Lokální server modelu musí běžet; vzdálené nástroje mohou data odesílat samostatně.
Projekt
Odmítněte nulové a záporné počty, neplatné hodnoty bajtů a příliš velký součet bez změny původního seznamu.
def expand_runs(runs, limit):
if type(limit) is not int or limit < 0:
raise ValueError("limit.invalid")
total = 0
for value, count in runs:
if type(value) is not int or not 0 <= value <= 255:
raise ValueError("byte.invalid")
if type(count) is not int or count <= 0:
raise ValueError("count.invalid")
total += count
if total > limit:
raise ValueError("output.limit")
return bytes(value for value, count in runs for _ in range(count))Zviditelněte limity rozbalování dat při kontrole kódu
OctetWeave je software pro programování s AI pro práci na změnách parserů a datových transformací ve stávajícím projektu. Prostředí Windows udržuje složku projektu a rozhovor s modelem blízko kódu, který potřebujete prověřit. Začněte popisem přijímaného vstupu, očekávaného výstupu a místa, kde mají být nadměrná data odmítnuta. Tyto podrobnosti pomáhají navržené opravě naplnit skutečný požadavek aplikace.
Příkladem je omezené rozbalování opakovaných hodnot v runs.py. Můžete požádat asistenta, aby prověřil kontrolu rozbalené délky před vytvořením výstupu, a poté posoudit předání neplatného počtu volajícímu. Jde o ilustrativní programovací úkol, nikoli dekompresní funkci dodávanou s OctetWeave. Užitečným výsledkem je změna, jejíž validaci a alokaci lze zkoumat spolu s okolním parserem.
Po kontrole spusťte testy projektu pro běžná opakování, chybné počty a data na dohodnutém limitu. Ověřte, jak příjemce zpracuje odmítnutí, protože nové validační pravidlo může měnit víc než samotnou transformaci. Model bez filtrů připojte pouze tehdy, je-li dostupný přes podporovaný koncový bod kompatibilní s OpenAI nebo Anthropic, a případně dodejte přihlašovací údaje. Spojení stále podléhá pravidlům modelu, nástrojům serveru a kapacitě kontextu; jeho volba nedokládá záruky využití prostředků navrženého kódu.
Příprava změny parseru s limity
- Z čeho má vycházet limit výstupu?
Definujte jej podle požadavku aplikace a provozních omezení místo přijetí libovolného návrhu modelu. Určete, kdo limit dodává a jak se hlásí odmítnutí, a poté rozhodnutí prověřte v parseru i u volajícího.
- Co mají obsahovat hraniční testy?
Použijte běžný vstup, vstup přesně na přijímaném limitu a vstup překračující limit. Přidejte chybné hodnoty odpovídající formátu. Ověřte očekávané chování při selhání i úspěšný výstup.
- Může OctetWeave certifikovat parser proti vyčerpání prostředků?
Taková certifikace není deklarována. V prostředí můžete kontrolovat navržený kód a probírat testy, ale posouzení využití prostředků vyžaduje kontrolu skutečné implementace a běhového prostředí za podmínek relevantních pro aplikaci.
- Proč po přidání validace kontrolovat volajícího?
Volající může očekávat data z každého vstupu a nové odmítnutí zpracovat chybně. Prověřte šíření chyb a chování viditelné uživateli, aby limit zlepšil smlouvu aplikace a neproměnil neplatný vstup v nevysvětlené selhání.
OctetWeave · Aktualizováno 2026-10-25