Моделі
Налаштуйте OpenAI-сумісний або Anthropic endpoint із базовою URL-адресою та API-ключем, якщо він потрібен. Перевірте з’єднання. Локальний сервер моделі має працювати; віддалені інструменти можуть окремо передавати дані.
Розподіліть до 4096 скінченних значень за 2–257 строго зростаючими межами в ±10^100.
import bisect, math
def histogram(edges, values):
if type(edges) is not list or type(values) is not list or not 2 <= len(edges) <= 257 or len(values) > 4096:
raise ValueError("bins.shape")
if any(type(x) not in (int, float) or not -10**100 <= x <= 10**100 or not math.isfinite(x) for x in edges+values):
raise ValueError("bins.value")
if any(a >= b for a, b in zip(edges, edges[1:])):
raise ValueError("bins.edges")
counts, under, over = [0]*(len(edges)-1), 0, 0
for value in values:
if value < edges[0]:
under += 1
elif value > edges[-1]:
over += 1
else:
counts[min(bisect.bisect_right(edges, value)-1, len(counts)-1)] += 1
return counts, under, over
Налаштуйте OpenAI-сумісний або Anthropic endpoint із базовою URL-адресою та API-ключем, якщо він потрібен. Перевірте з’єднання. Локальний сервер моделі має працювати; віддалені інструменти можуть окремо передавати дані.
Перевірте рівність межам, порожні дані й викиди, включіть останню межу та порахуйте виходи за діапазон без зміни списків.
Порівняйте фактичну поведінку з очікуваним результатом. Якщо перевірка не проходить, з’ясуйте причину перед наступними змінами.
import bisect, math
def histogram(edges, values):
if type(edges) is not list or type(values) is not list or not 2 <= len(edges) <= 257 or len(values) > 4096:
raise ValueError("bins.shape")
if any(type(x) not in (int, float) or not -10**100 <= x <= 10**100 or not math.isfinite(x) for x in edges+values):
raise ValueError("bins.value")
if any(a >= b for a, b in zip(edges, edges[1:])):
raise ValueError("bins.edges")
counts, under, over = [0]*(len(edges)-1), 0, 0
for value in values:
if value < edges[0]:
under += 1
elif value > edges[-1]:
over += 1
else:
counts[min(bisect.bisect_right(edges, value)-1, len(counts)-1)] += 1
return counts, under, over
Гістограма може виглядати достовірно, але відносити граничні спостереження до неправильної групи. BinOriole надає робоче середовище програмування з ШІ для Windows для коду обробки даних, де ці рішення можна дослідити до тлумачення результатів. Відкрийте теку проєкту й обговоріть визначення інтервалів разом із функцією підрахунку спостережень.
Наприклад, попросіть підключену модель перевірити належність значень, точно рівних межі. Надайте малий список зі значенням на внутрішній межі, останньою межею та спостереженнями поза діапазоном. Укажіть очікувані кількості й спосіб повідомлення значень нижче та вище діапазону, щоб запропонована зміна відповідала конкретному контракту.
Простежте ці результати до діаграми або звіту, що їх використовує. Код виклику, який відкидає кількості поза діапазоном, може показувати оманливу суму, навіть коли допоміжна функція працює як задумано. Перевірте зміни коду й запустіть приклади, що зіставляють кожне спостереження з повідомленою категорією. Додайте до перевірки меж відхилені нескінченні значення й NaN та неправильний порядок меж.
BinOriole підтримує підключення до кінцевих точок, сумісних з OpenAI, або Anthropic. Можна вибрати модель ШІ без цензури, яку пропонує налаштований сервіс, але фактична поведінка, контекст і підтримка інструментів залежать від цього налаштування. Розмова допомагає підготувати виправлення; перевірені приклади й тести програми визначають готовність кількостей до використання.
Додайте значення нижче діапазону, кожну важливу межу, звичайне внутрішнє значення й значення вище діапазону. Явно запишіть очікувану належність. Це виявляє рішення щодо кінців інтервалів, які може приховати великий випадковий набір даних.
Остання межа може включатися, навіть якщо внутрішні інтервали мають іншу граничну домовленість. Укажіть правило в запиті й протестуйте безпосередньо. Інакше рефакторинг може ненавмисно перенести максимальне спостереження за верхню межу.
Звірте суми кількостей в інтервалах і поза ними з кількістю прийнятих спостережень. Потім перевірте окремі призначення на малому прикладі. Сам збіг загальної кількості може приховати спостереження в неправильних категоріях.
Лише якщо це перетворення є частиною контракту програми. Сортування може приховати проблему попереднього налаштування або змінити зміст категорій. Перед прийняттям такої пропозиції перевірте наявну валідацію й повідомлення помилки кодом виклику.
BinOriole · Оновлено 2026-10-25