Моделі
Налаштуйте OpenAI-сумісний або Anthropic endpoint із базовою URL-адресою та API-ключем, якщо він потрібен. Перевірте з’єднання. Локальний сервер моделі має працювати; віддалені інструменти можуть окремо передавати дані.
Перевірте quaternion.py з явно першим скаляром перед порівнянням порядку множення.
Налаштуйте OpenAI-сумісний або Anthropic endpoint із базовою URL-адресою та API-ключем, якщо він потрібен. Перевірте з’єднання. Локальний сервер моделі має працювати; віддалені інструменти можуть окремо передавати дані.
Виберіть папку й попросіть помічника прочитати потрібні файли перед редагуванням. Визначте мету та межі завдання.
Переглядайте зміни й результати команд. Перед прийняттям результату виконайте перевірки проєкту; створений код не тестується автоматично.
import math
def quaternion_product(a, b):
for q in (a, b):
if type(q) not in (list, tuple) or len(q) != 4:
raise ValueError("quaternion.shape")
if any(type(x) not in (int, float) or not -10**6 <= x <= 10**6 or not math.isfinite(x) for x in q):
raise ValueError("quaternion.value")
w, x, y, z = a
v, i, j, k = b
return (w*v-x*i-y*j-z*k, w*i+x*v+y*k-z*j,
w*j-x*k+y*v+z*i, w*k+x*j-y*i+z*v)