AArevia
Робоче середовище з ШІ для коду

Прямокутні області CSS Grid

Перевірте прямокутні області сітки з іменами ASCII та одиночними крапками для порожніх комірок.

● ● ●Arevia●
Сценарії · Прямокутні області CSS Grid ×
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 result
✳Прямокутні області CSS Grid
✓ ЗміниПеревірте перед застосуванням ↗
Ілюстрація робочого середовища
01

Проєкт

Випробуйте порожній ввід, нерівні рядки та розірвані імена, повертаючи виключні межі лише для повністю заповнених прямокутників.

02

Перевірте перед застосуванням

Порівняйте фактичну поведінку з очікуваним результатом. Якщо перевірка не проходить, з’ясуйте причину перед наступними змінами.

03

Моделі

Налаштуйте OpenAI-сумісний або Anthropic endpoint із базовою URL-адресою та API-ключем, якщо він потрібен. Перевірте з’єднання. Локальний сервер моделі має працювати; віддалені інструменти можуть окремо передавати дані.

Сценарії

Прямокутні області CSS Grid

Сценарії ↗
Сценарії
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 result
Робоче середовище з ШІ для коду

Від правила макета до корисної відповіді інтерфейсу

Arevia — це робоче середовище для програмування з ШІ у Windows, у якому можна розробляти код, що пов’язує вхідні дані макета з видимою поведінкою. Відкрийте відповідні файли проєкту й опишіть, що має бути дозволено задавати людині, яка редагує макет. Попросіть модель перевірити валідатор і код, що його викликає, перш ніж змінювати будь-яку сторону цієї взаємодії.

Ви обираєте модель-помічника через підтримувану кінцеву точку, сумісну з OpenAI, або кінцеву точку Anthropic і за потреби надаєте облікові дані. Модель ШІ без цензури можна обрати, якщо її пропонує ваша кінцева точка. Її обмеження, підтримка інструментів та місткість контексту залежать від цієї конфігурації, а не є гарантіями для завдання з макетом.

Перевірка прямокутності областей CSS Grid — один із прикладів запиту. Додайте до розмови правильну сітку, незв’язну іменовану область і рядок нерівномірної ширини. Запитайте, як поточна реалізація приймає або відхиляє кожен випадок, а потім перевірте запропоновану зміну, яка зберігає правильні макети та пояснює користувачеві помилковий.

Перевіряйте результат валідатора разом із відповіддю інтерфейсу. Навіть правильне відхилення потребує корисного повідомлення, а прийнятий макет має потрапляти до передбаченого шляху відображення. Запустіть тести проєкту, перегляньте змінений код і випробуйте характерні макети у власному інтерфейсі, перш ніж вирішувати, що функція працює за специфікацією.

Від даних макета до зворотного зв’язку

Чим помилка правил сітки відрізняється від проблеми відображення?

Спочатку перевірте, чи проходить подана структура передбачену валідацію. Якщо так, простежте шлях прийнятого результату до відображення. Попросіть модель перевірити обидва шляхи на тих самих тестових даних, замість змінювати CSS до визначення етапу збою.

Чи слід автоматично виправляти неправильну область?

Лише якщо це явна вимога продукту. Виправлення може змінити задуманий макет. Визначте, чи інтерфейс має відхиляти, пояснювати або перетворювати вхідні дані, і перевірте отриманий код відповідно до обраної поведінки.

Які приклади сітки додати до запиту на зміну?

Додайте правильний прямокутник, іменовану область із прогалиною та рядки різної ширини. Для кожного вкажіть очікуваний результат. Додайте найменший набір тестових даних, що відтворює вашу проблему, щоб перевірка залишалася прив’язаною до описаної поведінки.

Як обмежити обсяг завдання з попереднього перегляду макета?

Назвіть файли та критерії приймання перед запитом роботи. Перевіряйте запропоновані дії інструментів: локальне виконання моделі потребує окремого сервера й не робить усі інструменти локальними. Перевірте отриманий інтерфейс у середовищі, яким справді користуєтеся.

Завантажити для Windows ↗

Arevia · Оновлено 2026-10-25