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.
Verdeel maximaal 4096 eindige waarden met twee tot 257 strikt stijgende grenzen binnen ±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
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 grensgelijkheid, leegte en uitschieters, neem de laatste grens mee en tel waarden erbuiten zonder de lijsten te veranderen.
Vergelijk het werkelijke gedrag met het verwachte resultaat. Onderzoek een mislukte controle voordat je verdergaat met wijzigingen.
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
Een histogram kan geloofwaardig lijken terwijl het waarnemingen op grenzen aan de verkeerde groep toewijst. BinOriole biedt gegevensverwerkingscode een AI-programmeerwerkruimte voor Windows waarin die keuzes kunnen worden onderzocht voordat resultaten worden geïnterpreteerd. Open de projectmap en bespreek de klassedefinities samen met de functie die waarnemingen telt.
Vraag het verbonden model bijvoorbeeld te beoordelen aan welke klasse waarden precies op een grens toebehoren. Geef een kleine lijst met een waarde op een binnengrens, de laatste grens en waarnemingen buiten het bereik. Vermeld de verwachte aantallen en hoe waarden onder en boven het bereik moeten worden gerapporteerd, zodat de voorgestelde wijziging aan een concreet contract beantwoordt.
Volg die uitvoer naar de grafiek of het rapport dat haar gebruikt. Aanroepende code die aantallen buiten het bereik weglaat, kan een misleidend totaal tonen, ook wanneer de indelingshulpfunctie werkt zoals ontworpen. Beoordeel voorgestelde bronwijzigingen en voer testgevallen uit die elke waarneming aan een gerapporteerde categorie koppelen. Neem afgewezen niet-eindige invoer en ongeldige grensvolgorde mee in de grensbeoordeling.
BinOriole ondersteunt verbindingen met OpenAI-compatibele of Anthropic-eindpunten. Je kunt een AI-model zonder censuur selecteren dat je ingestelde dienst aanbiedt, terwijl werkelijk gedrag, context en toolondersteuning afhankelijk blijven van die configuratie. Het gesprek helpt een patch voor te bereiden; je gecontroleerde voorbeelden en toepassingstests bepalen of de aantallen klaar zijn voor gebruik.
Neem een waarde onder het bereik, elke relevante grens, een gewone waarde binnen een klasse en een waarde boven het bereik op. Leg de verwachte toewijzing expliciet vast. Dit maakt beslissingen over eindpunten zichtbaar die een grote willekeurige dataset kan verbergen.
De laatste grens kan zijn inbegrepen, ook wanneer binnenklassen een andere grensconventie gebruiken. Vermeld die regel in het verzoek en test hem direct. Anders kan een refactoring de maximale waarneming onbedoeld boven het bereik plaatsen.
Stem klasseaantallen en aantallen buiten het bereik af op het aantal geaccepteerde invoerwaarden. Verifieer vervolgens individuele toewijzingen in een klein testgeval. Een kloppend totaal alleen kan waarnemingen in verkeerde categorieën verhullen.
Alleen als die transformatie onderdeel van het toepassingscontract is. Sorteren kan een eerder configuratieprobleem verbergen of de betekenis van categorieën veranderen. Beoordeel het bestaande validatiepad en hoe de aanroepende code fouten rapporteert voordat je zo'n voorstel accepteert.
BinOriole · Bijgewerkt 2026-10-25