Modelli
Configura un endpoint compatibile con OpenAI o Anthropic usando URL di base e chiave API, se necessaria. Prova la connessione. Il server locale deve essere in esecuzione; gli strumenti remoti possono trasmettere dati separatamente.
Integra un decadimento esponenziale scalare con fino a 1000 passi classici di Runge–Kutta e input finiti limitati.
def decay_steps(initial, rate, dt, steps):
if any(type(v) not in (int, float) for v in (initial, rate, dt)):
raise ValueError("decay.numeric")
if not -10**6 <= initial <= 10**6 or not 0 <= rate <= 1000 or not 0 <= dt <= 1 or rate * dt > 1:
raise ValueError("decay.range")
if type(steps) is not int or not 0 <= steps <= 1000:
raise ValueError("decay.steps")
y = float(initial)
for _ in range(steps):
k1 = -rate * y
k2 = -rate * (y + dt*k1/2)
k3 = -rate * (y + dt*k2/2)
k4 = -rate * (y + dt*k3)
y += dt*(k1 + 2*k2 + 2*k3 + k4)/6
return yConfigura un endpoint compatibile con OpenAI o Anthropic usando URL di base e chiave API, se necessaria. Prova la connessione. Il server locale deve essere in esecuzione; gli strumenti remoti possono trasmettere dati separatamente.
Prova zero passi e tasso zero, rifiuta tasso o passo negativi e il loro prodotto superiore a uno.
Confronta il comportamento effettivo con il risultato atteso. Se una verifica fallisce, indaga la causa prima di altre modifiche.
def decay_steps(initial, rate, dt, steps):
if any(type(v) not in (int, float) for v in (initial, rate, dt)):
raise ValueError("decay.numeric")
if not -10**6 <= initial <= 10**6 or not 0 <= rate <= 1000 or not 0 <= dt <= 1 or rate * dt > 1:
raise ValueError("decay.range")
if type(steps) is not int or not 0 <= steps <= 1000:
raise ValueError("decay.steps")
y = float(initial)
for _ in range(steps):
k1 = -rate * y
k2 = -rate * (y + dt*k1/2)
k3 = -rate * (y + dt*k2/2)
k4 = -rate * (y + dt*k3)
y += dt*(k1 + 2*k2 + 2*k3 + k4)/6
return yUn risultato numerico può sembrare ragionevole pur allontanandosi dal comportamento che l'applicazione intende modellare. DecayMarsh offre un ambiente di programmazione con IA per Windows per esaminare questo rischio nel codice. Apri il progetto e discuti la regola di aggiornamento, i parametri accettati e il risultato di riferimento prima di chiedere a un modello collegato di modificare l'implementazione.
Per esempio, richiedi una revisione di passi Runge–Kutta limitati per un calcolo di decadimento. Mostra le espressioni delle pendenze e spiega l'intervallo e il numero di passi previsti. Chiedi al modello di esaminare come i valori intermedi alimentano la pendenza successiva, poi collega il valore finale a un riferimento calcolato indipendentemente per un caso semplice.
Mantieni il confine dell'applicazione nella revisione. Limiti dei parametri, zero passi e valori numerici non validi richiedono un comportamento deliberato, soprattutto quando gli input arrivano da un modulo o da un file di configurazione. Esamina le differenze proposte ed esegui controlli per casi ordinari e limite. Descrivi esplicitamente le tolleranze di confronto affinché un'asserzione superata abbia un significato numerico chiaro.
DecayMarsh supporta endpoint di modelli compatibili con OpenAI o Anthropic, incluso un modello di IA senza censura quando disponibile. Il modello e il server selezionati determinano capacità e limiti di contesto. Usa la conversazione per rendere visibili le ipotesi e preparare modifiche, mentre l'esecuzione del progetto e il confronto di riferimento stabiliscono se l'implementazione soddisfa i requisiti.
Usa un caso con risultato noto indipendentemente e indica la tolleranza di confronto. Includi i parametri e il numero di passi. Una seconda implementazione copiata dalle stesse espressioni può ripetere lo stesso errore anziché fornire prove indipendenti.
Specifica direttamente il contratto e verificalo nel chiamante. Per un aggiornamento basato su passi, mantenere il valore iniziale è un caso atteso utile da discutere. Controlla che la validazione proposta non rifiuti accidentalmente una richiesta consentita con zero passi.
Una dipendenza intermedia errata può talvolta produrre un numero finale plausibile. Chiedi al modello di seguire un caso breve attraverso le espressioni e confrontarlo con il codice. Poi esegui i controlli numerici pertinenti nel tuo ambiente.
Può discutere una proposta, ma la tolleranza deve riflettere le esigenze dell'applicazione e il calcolo. Registra la regola di confronto scelta e la motivazione. Evita una soglia arbitrariamente permissiva solo perché fa superare il test.
DecayMarsh · Aggiornato 2026-10-25