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

Повна дискретна згортка

Обчисліть повну дискретну згортку двох скінченних числових послідовностей.

● ● ●KernelQuay●
Сценарії · Повна дискретна згортка ×
import math
def convolve(values, kernel):
    if not all(map(math.isfinite, [*values, *kernel])):
        raise ValueError("finite inputs required")
    if not values or not kernel: return []
    result = [0] * (len(values) + len(kernel) - 1)
    for i, value in enumerate(values):
        for j, weight in enumerate(kernel):
            result[i + j] += value * weight
    if not all(map(math.isfinite, result)):
        raise ValueError("non-finite result")
    return result
✳Обчисліть повну дискретну згортку двох скінченних числових послідовностей.
✓ ЗміниПеревірте перед застосуванням ↗
Ілюстрація робочого середовища
01

Моделі

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

02

Проєкт

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

03

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

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

Сценарії

Повна дискретна згортка

Сценарії ↗
Сценарії
import math
def convolve(values, kernel):
    if not all(map(math.isfinite, [*values, *kernel])):
        raise ValueError("finite inputs required")
    if not values or not kernel: return []
    result = [0] * (len(values) + len(kernel) - 1)
    for i, value in enumerate(values):
        for j, weight in enumerate(kernel):
            result[i + j] += value * weight
    if not all(map(math.isfinite, result)):
        raise ValueError("non-finite result")
    return result
Робоче середовище з ШІ для коду

Пов’яжіть числову зміну з програмою, що її використовує

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

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

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

KernelQuay дозволяє налаштувати підтримувану кінцеву точку, сумісну з OpenAI, або Anthropic, з обліковими даними за потреби. Доступна модель ШІ з усуненими механізмами відмов може допомагати в обговоренні коду; її сервер визначає доступні інструменти й контекст. Ваші приклади та результати виконання дають перевірці конкретну основу.

Зв’язок числової зміни з програмою-споживачем — запитання перед редагуванням

Навіщо додавати код виклику числової функції?

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

Що робить невеликий приклад корисним тут?

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

Чи слід перевіряти некоректні виходи разом із входами?

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

Чи можна прийняти оптимізацію після збігу одного прикладу?

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

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

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