Projekt
Vyzkoušej prázdný vstup, nestejné řádky a oddělené názvy a vrať výlučné meze jen pro vyplněné obdélníky.
Ověř obdélníkové oblasti mřížky s názvy ASCII a jednotlivými tečkami jako prázdnými buňkami.
import re
def grid_areas(rows):
if type(rows) is not list or any(type(r) is not str for r in rows):
raise ValueError("grid.rows")
if not rows:
return {}
cells = [r.split() for r in rows]
width = len(cells[0])
if not width or any(len(r) != width for r in cells):
raise ValueError("grid.width")
groups = {}
for y, row in enumerate(cells):
for x, name in enumerate(row):
if name == ".":
continue
if not re.fullmatch(r"[A-Za-z_][A-Za-z0-9_-]*", name):
raise ValueError("grid.name")
groups.setdefault(name, []).append((y, x))
result = {}
for name, points in groups.items():
top, bottom = min(y for y,x in points), max(y for y,x in points)+1
left, right = min(x for y,x in points), max(x for y,x in points)+1
if len(points) != (bottom-top)*(right-left):
raise ValueError("grid.rectangle")
result[name] = (top, bottom, left, right)
return resultVyzkoušej prázdný vstup, nestejné řádky a oddělené názvy a vrať výlučné meze jen pro vyplněné obdélníky.
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.
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ě.
import re
def grid_areas(rows):
if type(rows) is not list or any(type(r) is not str for r in rows):
raise ValueError("grid.rows")
if not rows:
return {}
cells = [r.split() for r in rows]
width = len(cells[0])
if not width or any(len(r) != width for r in cells):
raise ValueError("grid.width")
groups = {}
for y, row in enumerate(cells):
for x, name in enumerate(row):
if name == ".":
continue
if not re.fullmatch(r"[A-Za-z_][A-Za-z0-9_-]*", name):
raise ValueError("grid.name")
groups.setdefault(name, []).append((y, x))
result = {}
for name, points in groups.items():
top, bottom = min(y for y,x in points), max(y for y,x in points)+1
left, right = min(x for y,x in points), max(x for y,x in points)+1
if len(points) != (bottom-top)*(right-left):
raise ValueError("grid.rectangle")
result[name] = (top, bottom, left, right)
return resultArevia je programovací prostředí s AI pro Windows určené k vývoji kódu, který propojuje vstupní rozvržení s viditelným chováním. Otevřete příslušné soubory projektu a popište, co má být dovoleno vyjádřit člověku, který rozvržení upravuje. Než změníte kteroukoli stranu této interakce, požádejte model o prověření validátoru i kódu, který jej volá.
Asistenční model si volíte prostřednictvím podporovaného koncového bodu kompatibilního s OpenAI nebo koncového bodu Anthropic a v případě potřeby zadáte přihlašovací údaje. Model AI bez cenzury lze zvolit, pokud jej váš koncový bod nabízí. Jeho omezení, podpora nástrojů a kapacita kontextu zůstávají vlastnostmi této konfigurace, nikoli zárukami spojenými s úlohou rozvržení.
Jedním příkladem zadání je kontrola obdélníkových oblastí mřížky CSS. Přidejte do konverzace platnou mřížku, nesouvislou pojmenovanou oblast a řádek s odlišnou šířkou. Zeptejte se, jak stávající implementace každý případ přijímá nebo odmítá, a poté prověřte navrženou změnu, která zachová platná rozvržení a zároveň uživateli vysvětlí neplatné rozvržení.
Výsledek validátoru a odezvu rozhraní posuzujte společně. I správné odmítnutí potřebuje srozumitelnou zprávu a přijaté rozvržení musí dojít do zamýšlené vykreslovací větve. Než rozhodnete, že funkce odpovídá specifikaci, spusťte testy projektu, prověřte změněný zdrojový kód a vyzkoušejte reprezentativní rozvržení ve vlastním rozhraní.
Nejprve ověřte, zda zadaná struktura projde zamýšlenou validací. Pokud ano, sledujte přijatý výstup až k vykreslení. Požádejte model o prověření obou cest se stejnými testovacími daty; neměňte CSS před určením fáze, která selhává.
Pouze pokud je to výslovný požadavek produktu. Oprava může změnit zamýšlené rozvržení. Určete, zda má rozhraní vstup odmítnout, vysvětlit nebo transformovat, a podle zvoleného chování prověřte výsledný kód.
Zahrňte platný obdélník, pojmenovanou oblast s mezerou a řádky různé šířky. U každého uveďte očekávaný výsledek. Přidejte nejmenší testovací příklad, který reprodukuje váš problém, aby kontrola zůstala zaměřena na nahlášené chování.
Než zadáte práci, určete soubory a akceptační případy. Prověřte navržené akce nástrojů: lokální inference modelu vyžaduje samostatný server a neznamená, že všechny nástroje běží lokálně. Ověřte výsledné rozhraní v prostředí, které skutečně používáte.
Arevia · Aktualizováno 2026-10-25