SSimplexDune
AI-werkruimte voor code

Euclidische simplexprojectie

Projecteer 1–256 eindige getallen binnen ±10^6 op de niet-negatieve eenheidssimplex.

● ● ●SimplexDune●
Werkprocessen · Euclidische simplexprojectie ×
import math

def simplex_projection(values):
    if type(values) is not list or not 1 <= len(values) <= 256:
        raise ValueError("simplex.input")
    if any(type(x) not in (int, float) or not -10**6 <= x <= 10**6 or not math.isfinite(x) for x in values):
        raise ValueError("simplex.value")
    ranked = sorted(values, reverse=True)
    total, theta = 0.0, 0.0
    for count, value in enumerate(ranked, 1):
        total += value
        candidate = (total-1)/count
        if value > candidate:
            theta = candidate
    return [max(0.0, value-theta) for value in values]
✳Euclidische simplexprojectie
✓ WijzigingenControleer vóór het toepassen ↗
Illustratie van de werkruimte
  1. Project

    Test gelijke waarden en hoekpuntoplossingen, weiger booleans en vergelijk met numerieke tolerantie zonder de gewichten als gekalibreerde kansen te zien.

  2. Controleer vóór het toepassen

    Vergelijk het werkelijke gedrag met het verwachte resultaat. Onderzoek een mislukte controle voordat je verdergaat met wijzigingen.

  3. 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.

Werkprocessen

Euclidische simplexprojectie

Werkprocessen ↗
Werkprocessen
import math

def simplex_projection(values):
    if type(values) is not list or not 1 <= len(values) <= 256:
        raise ValueError("simplex.input")
    if any(type(x) not in (int, float) or not -10**6 <= x <= 10**6 or not math.isfinite(x) for x in values):
        raise ValueError("simplex.value")
    ranked = sorted(values, reverse=True)
    total, theta = 0.0, 0.0
    for count, value in enumerate(ranked, 1):
        total += value
        candidate = (total-1)/count
        if value > candidate:
            theta = candidate
    return [max(0.0, value-theta) for value in values]
AI-werkruimte voor code

Houd numerieke voorwaarden tijdens de hele beoordeling zichtbaar

SimplexDune is een AI-programmeeromgeving voor Windows voor ontwikkelaars die numerieke transformaties in een toepassing beoordelen. Begin met een projectmap en de eigenschappen waaraan de uitvoer moet voldoen. Het verbonden model kan helpen onderzoeken hoe die eisen in de code voorkomen en een afgebakende wijziging bespreken, terwijl jij het voorstel toetst aan de gebruikende code die van het resultaat afhangt.

Een taak op basis van simplex_projection.py betreft het omzetten van een vector in niet-negatieve gewichten met een totaal van één. Vraag de assistent geaccepteerde invoer, uitvoervolgorde en controles voor drijvende-kommaresultaten te bekijken. Geef representatieve vectoren en beschrijf het verdere gebruik. Zo blijft het voorbeeld in een werkelijk softwarecontract geworteld in plaats van de omgeving als ingebouwde optimalisator of modeltrainingsdienst te behandelen.

Kies een AI-model zonder beperkingen als er één beschikbaar is via een ondersteund OpenAI-compatibel of Anthropic-endpoint. Stel het adres en de vereiste inloggegevens in en houd rekening met de context- en toolondersteuning van de server. Bekijk voorgestelde bewerkingen en voer zowel controles op verwachte resultaten als op uitvoereigenschappen uit in je numerieke omgeving. Gebruik een vastgelegde tolerantie waar exacte drijvende-kommagelijkheid ongeschikt is. Het gesprek moet de aannames achter de patch blootleggen, zodat je kunt beslissen of deze het benodigde toepassingsgedrag behoudt.

Numerieke uitvoer met voorwaarden beoordelen

Welke uitvoereigenschappen moet ik expliciet vragen?

Benoem vereiste lengte, volgorde, toegestane tekens en verwacht totaal, inclusief eventuele tolerantie. Neem de eisen van de gebruikende code mee. Een resultaat kan aan één voorwaarde voldoen en een andere schenden; stop daarom niet bij één totaalwaarde.

Is exacte gelijkheid aan één een betrouwbare drijvende-kommatest?

Niet bij elke berekening. Kies een tolerantie die bij het numerieke contract en de testomgeving past en licht die toe in de controle. Vraag het model representatie-effecten van een echte schending te onderscheiden in plaats van asserties stilzwijgend te verzwakken.

Mag de patch de oorspronkelijke vector herordenen?

Alleen als het uitvoercontract dat toestaat. Intern sorteren kan de berekening dienen terwijl de eindwaarden nog steeds bij de oorspronkelijke posities moeten horen. Bekijk de gebruikende code en test invoer met verschillende elementen die een volgordefout zichtbaar maken.

Kan een eigenschappencontrole verwachte-resultaatvoorbeelden vervangen?

Gebruik beide als ze verschillende beweringen toetsen. Een vector kan niet-negatief zijn en tot één optellen zonder de bedoelde projectie te zijn. Kleine onafhankelijk vastgestelde resultaten helpen de transformatie te verifiëren; eigenschappen dekken bredere aspecten van het uitvoercontract.

Download voor Windows ↗

SimplexDune · Bijgewerkt 2026-10-25