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

Сумісність форм тензорів

Визначте спільну форму тензорів за кінцевими вимірами з розширенням одиничних осей.

● ● ●ShapeEstuary●
Сценарії · Сумісність форм тензорів ×
from itertools import zip_longest

def broadcast_shape(a, b):
    a, b = tuple(a), tuple(b)
    if any(type(d) is not int or d < 0 for d in a + b):
        raise ValueError("dimension.invalid")
    result = []
    for left, right in zip_longest(reversed(a), reversed(b), fillvalue=1):
        if left == right or right == 1:
            result.append(left)
        elif left == 1:
            result.append(right)
        else:
            raise ValueError("shape.incompatible")
    return tuple(reversed(result))
✳Визначте спільну форму тензорів за кінцевими вимірами з розширенням одиничних осей.
✓ ЗміниПеревірте перед застосуванням ↗
Ілюстрація робочого середовища
  1. Проєкт

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

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

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

  3. Моделі

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

Сценарії

Сумісність форм тензорів

Сценарії ↗
Сценарії
from itertools import zip_longest

def broadcast_shape(a, b):
    a, b = tuple(a), tuple(b)
    if any(type(d) is not int or d < 0 for d in a + b):
        raise ValueError("dimension.invalid")
    result = []
    for left, right in zip_longest(reversed(a), reversed(b), fillvalue=1):
        if left == right or right == 1:
            result.append(left)
        elif left == 1:
            result.append(right)
        else:
            raise ValueError("shape.incompatible")
    return tuple(reversed(result))
Робоче середовище з ШІ для коду

Простежуйте припущення щодо форм у числовому проєкті

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

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

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

Запитання для перевірки числових форм

Що має супроводжувати повідомлення про невідповідність форм?

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

Чи надає це середовище прискорення на GPU?

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

Як обробляти розмірності нульового розміру?

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

Чи слід змінювати подальший код, коли змінюється функція?

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

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

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