Run 001prima esecuzione
envelope di determinismo
- capability
- finance.npv
- runtime_bundle
- 0.1.0 · 4d64142e…
- platform
- darwin-arm64
- precision_mode
- float64
- thread_count
- 1
- value
- 505.020148896933
computation_hashb74f67d0d7a594aa…
Determinismo, per costruzione
Poni la stessa domanda a un modello due volte e puoi ottenere due risposte diverse. Questo è l'AI non deterministico — accettabile per la prosa, fatale per i numeri. SQAI sottrae il numero al modello: ogni calcolo gira su un runtime float64 fissato, single-threaded, e stampa l'hash che lo riproduce esattamente.
IIIl replay
Un calcolo — finance.npv a un tasso di sconto del 10% su cinque flussi di cassa — eseguito una volta, poi riprodotto mesi dopo. Il determinismo come promessa chiede fiducia. Come hash, chiede un confronto.
Run 001prima esecuzione
envelope di determinismo
computation_hashb74f67d0d7a594aa…
Run 002mesi dopo
envelope di determinismo
computation_hashb74f67d0d7a594aa…
Identici. Non simili — identici.
computation_hash condivisob74f67d0d7a594aa7ac91f6291612452aa8ccdf603351ebc8d801a6fddd91bc8
Due linguaggi, un unico flusso di byte
TypeScriptcanonicalJson(result.value)
Pythoncanonical_json(result.value)
byte identici, in entrambi i linguaggi505.020148896933
stessi byte in entrata → stesso sha256 in uscita → lo stesso certificato
canonicalJson in TypeScript e canonical_json in Python emettono gli stessi byte per costruzione: −0 diventa 0, le chiavi sono ordinate, l'escape unicode è fisso. L'uguaglianza degli hash tra linguaggi non è una coincidenza da sperare — è un contratto di serializzazione.
IIILa clausola fine
"Deterministico" è facile da scrivere e difficile da mantenere. SQAI non afferma che il risultato sia identico su ogni macchina dell'universo. Dichiara un ambito di esecuzione, lo registra nell'envelope e garantisce l'identità al suo interno.
Registrare l'ambiente vale più che sopravvalutarlo. Tutto ciò che potrebbe alterare il numero è o fissato o documentato.
dichiarato su ogni risultatodeterministic_scope: "local_registered_source"
IVProvenienza a domini separati
La provenienza qui non è una riga di log. Sono tre costruzioni sha256, ciascuna risponde a una domanda diversa, ciascuna calcolata su byte canonici.
plan_hashf87610d8afeb…Il piano risolto, sottoposto a hash prima che qualsiasi cosa venga eseguita. La stessa domanda produce lo stesso piano — decision_path: exact_spec — quindi un piano revisionato una volta è revisionato per sempre.
invocation_hashL'identità della chiamata — la capability con i suoi argomenti canonicalizzati — dietro il proprio prefisso con versione. explainQuery lo stampa come anteprima dry-run; l'hash eseguito viene marcato indipendentemente a runtime.
computation_hashb74f67d0d7a594aa…Incorpora l'invocation_hash prima dei byte canonici del valore. La risposta è crittograficamente concatenata alla sua domanda — questo hash non può essere applicato a un risultato diverso.
invocation_hash = sha256("sqai:invocation:v1\0" + canonicalJson(identity))
computation_hash = sha256("sqai:computation:v1\0" + invocation_hash + canonicalJson(value))I prefissi sono il punto. "sqai:invocation:v1" e "sqai:computation:v1" sono universi di byte disgiunti: un'invocazione non può mai collidere con una computation, e una futura v2 non può mai impersonare la v1. La separazione dei domini rende gli hash prove, non decorazioni.
Sotto tutti e tre, la superficie stessa è fissata. Il contratto di capability che definisce cosa può essere eseguito viene distribuito con un proprio hash:contract_hash sha256:79f1c5a6c716…
il campionamento non è esecuzione — il modello non calcola qui
VCampionamento vs esecuzione
temperature: 0un'impostazione di decodifica
computation_hashuna proprietà di esecuzione
VIDove il determinismo potrebbe cedere
seed_required
Dieci delle 4.574 capability esposte simulano casualità. Senza seed, non vengono eseguite affatto — la chiamata viene rifiutata prima dell'esecuzione. Con seed, si riproducono come tutto il resto. Nessuna entropia nascosta, nessuna eccezione silenziosa.
una delle diecidistributions.sample_normal
schema_revision_mismatch
Ogni sorgente registrata porta una revisione dello schema. Riprodurre un piano su dati che sono cambiati e il motore rifiuta con un errore strutturato — non un numero silenziosamente diverso che nulla segnalerebbe mai.
dichiarato su ogni sorgenteschema_revision
4.564 deterministiche di default · 10 deterministiche una volta con seed · 0 che indovinano
VIIDomande
Un sistema le cui risposte si riproducono esattamente: stesso input, stesso output, in modo dimostrabile. SQAI lo implementa per costruzione — i calcoli vengono eseguiti su un runtime float64 fissato, single-threaded, e ogni risultato porta un computation_hash che lo riproduce byte per byte.
Un sistema il cui output può variare tra richieste identiche. I modelli linguistici campionano token, quindi la stessa domanda può produrre ragionamenti diversi, SQL diverso e numeri diversi — senza alcun segnale che qualcosa sia cambiato. Un hash riproducibile è l'antidoto a questa deriva.
La temperatura restringe solo il modo in cui viene scelto il token successivo. Il modello sta ancora prevedendo il tuo numero anziché calcolarlo, e nulla dell'esecuzione viene registrato o riprodotto. Il determinismo di SQAI è una proprietà dell'esecuzione, non della decodifica: il modello deposita un piano tipizzato e il motore esegue l'aritmetica.
Confronta il computation_hash di ciascun risultato. È un sha256 con separazione di dominio sull'identità dell'invocazione e sui byte canonici del valore: hash corrispondenti significano risposte byte-identiche — l'esempio finance.npv stampa b74f67d0… sia in TypeScript che in Python.
Rifiutando di essere casuali in segreto. Esattamente 10 delle 4.574 capability esposte di SQAI simulano la casualità; chiamate senza seed vengono rifiutate con seed_required, e con un seed si riproducono esattamente come qualsiasi altra capability.
La riproduzione fallisce in modo esplicito. Ogni sorgente registrata porta una revisione dello schema, e un piano riprodotto su dati modificati restituisce schema_revision_mismatch — un errore strutturato, mai un numero silenziosamente diverso.