Modellen
Stel een OpenAI-compatibel of Anthropic-endpoint in met de basis-URL en zo nodig een API-sleutel. Test de verbinding. Een lokale modelserver moet actief zijn; externe hulpmiddelen kunnen apart gegevens versturen.
Geef de mediaan en ongeschaalde mediane absolute afwijking van 1–4096 eindige getallen binnen ±10^100.
import math
def median_deviation(values):
if type(values) is not list or not 1 <= len(values) <= 4096:
raise ValueError("mad.input")
if any(type(x) not in (int, float) or not -10**100 <= x <= 10**100 or not math.isfinite(x) for x in values):
raise ValueError("mad.value")
def median(items):
ordered = sorted(items)
n = len(ordered)
return float(ordered[n//2]) if n % 2 else ordered[n//2-1]/2+ordered[n//2]/2
center = median(values)
return center, median([abs(x-center) for x in values])
Stel een OpenAI-compatibel of Anthropic-endpoint in met de basis-URL en zo nodig een API-sleutel. Test de verbinding. Een lokale modelserver moet actief zijn; externe hulpmiddelen kunnen apart gegevens versturen.
Test even lengtes, gelijke waarden en een uitschieter, en weiger booleans of oneindige waarden zonder de invoervolgorde te wijzigen.
Vergelijk het werkelijke gedrag met het verwachte resultaat. Onderzoek een mislukte controle voordat je verdergaat met wijzigingen.
import math
def median_deviation(values):
if type(values) is not list or not 1 <= len(values) <= 4096:
raise ValueError("mad.input")
if any(type(x) not in (int, float) or not -10**100 <= x <= 10**100 or not math.isfinite(x) for x in values):
raise ValueError("mad.value")
def median(items):
ordered = sorted(items)
n = len(ordered)
return float(ordered[n//2]) if n % 2 else ordered[n//2-1]/2+ordered[n//2]/2
center = median(values)
return center, median([abs(x-center) for x in values])
Twee functies kunnen beide beweren spreiding te meten en toch grootheden met verschillende betekenissen teruggeven. MedianRove is AI-programmeersoftware voor Windows om die verschillen in je project te beoordelen. Neem de hulpfunctie, de aanroeper en een kleine referentiedataset mee in het gesprek, zodat een voorgestelde wijziging de statistiek behoudt die je toepassing werkelijk gebruikt.
Een praktische taak is een berekening van de ongeschaalde mediane absolute afwijking inspecteren. Vraag het verbonden model de mediaanconventie bij invoer met een even aantal elementen en de behandeling van een uitschieter te bekijken. Geef aan of schaling elders in de toepassing thuishoort, zodat de beoordeling niet stilzwijgend andere uitvoer onder dezelfde functienaam introduceert.
Volg het resultaat naar weergave, drempelwaarden of opgeslagen records. Een numerieke wijziging kan beslissingen buiten de hulpfunctie beïnvloeden, ook als het terugkeertype gelijk blijft. Beoordeel controles op eindige waarden en het toegestane groottebereik en voer onafhankelijk gecontroleerde testgevallen in je runtime uit. Controleer ook de invoervolgorde als de aanroeper verwacht dat de oorspronkelijke verzameling onaangeroerd blijft.
MedianRove verbindt met ondersteunde OpenAI-compatibele of Anthropic-endpoints. Een geablitereerd AI-model kan worden gekozen wanneer je dienst het aanbiedt; gedrag en toolondersteuning worden door model en server bepaald. De uitleg ondersteunt de beoordeling; de verwachtingen voor je dataset en projecttests bepalen of de patch geschikt is.
Schaling verandert de teruggegeven grootheid en kan latere drempelwaarden beïnvloeden. Leg vast welke statistiek de hulpfunctie belooft en bekijk aanroepers op extra transformaties. Een refactor mag niet stilzwijgend de interpretatie veranderen terwijl de naam gelijk blijft.
Gebruik een korte verzameling met een duidelijke centrale groep en één verre waarde, naast een onafhankelijk berekende mediaan en afwijking. Voeg een geval met een even aantal elementen toe om de mediaanconventie zichtbaar te maken. Vertrouw niet alleen op willekeurige gegevens.
Maak die eigendomsregel expliciet. Als aanroepers de oorspronkelijke volgorde hergebruiken, kan ter plaatse sorteren een losstaande fout veroorzaken. Bekijk de implementatie en controleer na uitvoering zowel de invoer als de teruggegeven statistiek.
Gebruik het vastgelegde contract voor type, grootte en eindige getallen van de hulpfunctie. Vraag het model elke grens te behouden of bewust te herzien en test daarna weigering en afhandeling door de aanroeper. Neem niet aan dat een aannemelijke statistiek ongeldige invoer aanvaardbaar maakt.
MedianRove · Bijgewerkt 2026-10-25