Binary Hypervector Engine in Rust | Dweve BitWeave

BitWeave is a binary hypervector engine in Rust. Apache-2.0 terms, self-hosted; the repository publishes in the fifth release round.

Pipeline di conoscenza costruita sul layer di significato di BitWeave.

Matematica correttamente arrotondata alla base di BitWeave.

BitWeave pubblica nel quinto round del programma di rilascio della fondazione. Costruisci un unico stato semantico e eseguilo su CPU standard.

Rendi il significato computabile, poi decidi cosa costruirci

Un formato di indice su disco identico per tutti e tre.

Lato browser, stati più piccoli compatibili, offline.

Server TCP o UDS, client agnostici rispetto al linguaggio.

Integra direttamente in un processo Rust, C o Python.

BitWeave gira come libreria in-process, come server standalone TCP o Unix-socket, o compilato in WASM per l'esecuzione lato browser su uno stato più piccolo compatibile. Il formato di stato .bwks è lo stesso in tutte e tre le modalità; costruisci su un server e distribuisci lo stesso stato al browser senza ricompilare.

I receipt dei benchmark vengono pubblicati con il repository, nel quinto round

Nella pubblicazione DBpedia 100K, la configurazione esatta multi-query di BitWeave ha restituito 9.473 QPS con recall 1.000 in 19 MB su un desktop i9-13900KF con 24 core, AVX2 e 48 GB. Il sistema di confronto approssimativo a due bit misurato ha restituito 3.580 QPS in 38 MB sullo stesso host e dati. Con D4096 su 10.000 documenti, le esecuzioni Hybrid-MultiQ misurate hanno mantenuto recall 1.000 a 35.842 QPS su dati casuali, 34.459 su dati clusterizzati e 27.828 su dati derivati da testo. Con 250.000 documenti, la forza bruta esatta multi-query ha misurato 2.653 QPS con recall 1.000. Questi sono receipt di benchmark, non promesse universali; riesegui la suite sul tuo corpus e hardware quando il repository verrà pubblicato.

Esatto su scala molto ampia. La maggior parte dei bucket.

Più bucket, set di candidati più ristretti.

Buon recall, ricambio di candidati moderato.

Basso numero di candidati, throughput massimo.

Una scansione lineare è veloce su SIMD a piccola scala ma diventa il collo di bottiglia su corpora molto grandi. L'indice LSH divide gli ipervettori in bande; i candidati che collidono in qualsiasi banda vengono valutati esattamente. Hybrid-MultiQ raggruppa quattro query per registro SIMD per mantenere il recall esatto al throughput. L'indice viene costruito una volta e interrogato molte volte.

Generazione sub-lineare di candidati su larga scala

Spostamento ciclico, codifica ordine e posizione.

Auto-inversa, lega una chiave a un valore.

Voto di maggioranza, sovrappone un insieme di concetti.

Un documento, una query, un passaggio, un simbolo di codice si codificano tutti come un ipervettore binario di dimensione fissa. Il default è 4096 bit, perché l'aritmetica di proiezione casuale si comporta bene lì e uno XOR e un popcount a 4096 bit si adattano perfettamente ai registri AVX2, AVX-512 e NEON. L'encoder è deterministico; lo stesso testo produce lo stesso ipervettore a ogni esecuzione.

Governance della conoscenza basata sul livello di significato BitWeave.

Analizza e indirizza il contenuto prima dell'indicizzazione.

Implementazione ispezionabile, blocco delle versioni e nessuna dipendenza runtime proprietaria.

Nessuna interruzione del fornitore da sopportare.

Contratto semantico bloccato, stesso risultato ordinato su ogni server.

Gli indici vivono su infrastruttura che controlli tu. Nessuna elaborazione del fornitore.

I dati restano nella giurisdizione che scegli. La catena di custodia è verificabile. La conformità è affrontata nell'architettura piuttosto che aggiunta tramite una dashboard.

Esatto, mantenuto su tutte le scale misurate.

9.473 QPS con recall 1.000 su DBpedia 100K, senza GPU nell'esecuzione.

Hybrid-MultiQ a 10K documenti, recall 1.000.

9.473 query al secondo con recall 1.000 su DBpedia 100K, in 19 MB su un desktop i9-13900KF con AVX2 e senza GPU nell'esecuzione. Il motore semantico alla base dello stack Dweve.

Un risultato deterministico che puoi spiegare in seguito.

Il corpus resta su macchine che controlli tu.

Recupero sul percorso di richiesta, non un job batch.

Mantieni fissi i file e la mappa dei significati, e l'ordine può essere riprodotto.

Lo stesso stato semantico alimenta la ricerca di similarità, il matching di passaggi multi-vettore, la ricerca con filtro per metadati, il rilevamento di duplicati, il clustering, i prototipi one-shot e il grounding RAG. La ricerca è la query visibile. Il substrato riutilizzabile sottostante è il valore.

Un crate Rust, una CLI, un'ABI C stabile, una build WASM e binding Python tramite maturin. L'SDK è il percorso in-process, il server espone un confine condiviso con autenticazione e osservabilità, e i binding attraversano i linguaggi esistenti senza reimplementare la rappresentazione. WASM porta stati più piccoli compatibili nell'esecuzione lato browser. Ogni superficie porta lo stesso stato semantico, gli stessi contratti di indice e le stesse risposte ordinate, verificati contro una baseline di conformità, così il motore non acquisisce un significato diverso per ogni client.

Partizionamento cold-start per dataset molto grandi.

Recall regolabile, più famiglie di bande.

Candidati LSH più riscore esatto. Predefinito per la ricerca esatta.

Scansione SIMD esatta, query in batch. Recall 1.000.

BruteForce-MultiQ per corpora esatti e compatti, Hybrid-MultiQ per recall esatto a scala maggiore, e backend LSH e IVF regolabili per i corpora più grandi. Ogni indice è una famiglia di operazioni sugli stessi ipervettori.

Lo stesso contratto semantico bloccato, su CPU standard che già possiedi, restituisce lo stesso risultato ordinato.

Raggruppa il contesto. Lega la relazione. Permuta l'ordine. Confronta il risultato.

Gli ipervettori binari trasportano significato semantico come bit impacchettati. Le sorgenti esterne in virgola mobile attraversano un confine di conversione unidirezionale dichiarato; la rappresentazione nativa e tutti i confronti e punteggi interni rimangono binari o a virgola fissa.

Spostamento ciclico, ordine e posizione.

Maggioranza dei bit, codifica di insieme.

HDC codifica il significato attraverso migliaia di dimensioni binarie dove il raggruppamento cattura gli insiemi, il legame cattura le coppie e la permutazione cattura l'ordine. Il risultato è un singolo ipervettore a larghezza fissa che sta in poche linee di cache. Le modalità a livello di documento e a livello di token coesistono, quindi un intero documento può essere raggruppato in un vettore o mantenere un insieme di vettori di token per l'interazione tardiva. La rappresentazione rimane simile sotto rumore di bit modesto, quindi la stessa costruzione sopravvive a piccole perturbazioni senza allargare il vettore o aggiungere un tensore posizionale separato.

Anche le query vengono hashate, si percorrono solo i bucket corrispondenti.

Le famiglie LSH hashano gli ipervettori in bucket.

Documento in un ipervettore binario tramite raggruppamento e legame.

L'input diventa un ipervettore binario. Raggruppa, lega e permuta compongono insiemi, ruoli e ordine prima che qualsiasi query venga eseguita. Indici, filtri e riordinamento organizzano i candidati senza ridefinire il tipo. Lo stato .bwks persiste il codebook, i vettori, i metadati e la provenienza insieme. Il dispatch SIMD lo esegue sull'hardware che già possiedi, e RAG o una corrispondenza diretta è un uso del risultato. La direzione delle dipendenze è deliberata: il calcolo non importa mai preoccupazioni applicative, gli encoder possono cambiare senza toccare i kernel dell'indice, e il tipo attraversa ogni livello. L'API di query è l'ultimo livello, non il prodotto.

La migrazione è un progetto di un trimestre.

Stessa query, risposta diversa la settimana prossima.

Per query più per GB più per documento indicizzato.

Gli indici vivono dove vuole il fornitore.

La parte semantica centrale dello stack AI è fornita da una catena di provider. Uno incorpora il contenuto, uno memorizza i vettori, uno seleziona i candidati, uno li riordina, e un modello trasforma il risultato in prosa. Ogni livello cambia il proprio modello, indice, prezzo e regione in modo indipendente, e nessuno può nominare lo stato semantico completo.

Dimensione predefinita degli ipervettori.

BitWeave trasforma testo, immagini, audio e vettori esistenti in ipervettori binari a larghezza fissa: un tipo semantico nativo con un'algebra che puoi comporre, confrontare, indicizzare, filtrare, classificare, memorizzare ed eseguire ovunque. La ricerca è una singola operazione. Il RAG è una singola applicazione.

I dati restano nella giurisdizione che scegli. La catena di custodia è verificabile. La conformità è affrontata nell'architettura, non aggiunta tramite un pannello di controllo, così ogni obbligo sollevato da una revisione ha una risposta strutturale, non una promessa.

Una volta pubblicato BitWeave, puntalo su una cartella e costruisci il primo stato semantico senza dipendere da un servizio esterno.

Una cartella con i tuoi file. Restano esattamente dove sono, dalla tua parte del muro.

I server o computer standard che già utilizzi. Niente GPU, niente di specialistico da acquistare.

L'adozione non significa un programma di migrazione. Lo stesso motore funziona in tre modi: dentro uno strumento che il tuo staff già usa, come servizio interno condiviso per ogni team, oppure offline su una singola macchina per il materiale più sensibile. Lo stato semantico compatibile si sposta tra tutti e tre, quindi la prima scelta non è mai una porta a senso unico.