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.

Algoritmide rühmitamine andmetüübi järgi

BitWeave tähenduskihile rajatud teadmiste torustik.

BitWeave'i all õigesti ümardatud matemaatika.

BitWeave avaldatakse sihtasutuse väljalaskeprogrammi viiendas voorus. Ehitage sellest üks semantiline olek ja käitage seda tavalistel protsessoritel.

Muutke tähendus arvutatavaks, seejärel otsustage, mida sellega ehitada

Üks kettapõhine indeksivorming kõigi kolme jaoks.

Brauseripoolne, ühilduvad väiksemad olekud, võrguühenduseta.

TCP või UDS-server, keelest sõltumatud kliendid.

Manustage otse Rusti, C või Pythoni protsessi.

BitWeave töötab protsessisisese teegina, eraldiseisva TCP- või Unix-pistikupesa serverina või kompileerituna WASM-iks brauseripoolseks käitamiseks ühilduva väiksema oleku kohal. .bwks-olekuvorming on kõigis kolmes režiimis sama; ehitage serveris ja juurutage sama olek brauserisse ilma uuesti ehitamata.

Võrdlusnäitajate kviitungid avaldatakse hoidlaga viiendas voorus

Avaldatud DBpedia 100K käituse puhul tagastas BitWeave'i täpne mitmepäringu konfiguratsioon 9 473 QPS-i recall 1.000 juures 19 MB-s i9-13900KF lauaarvutil, millel on 24 tuuma, AVX2 ja 48 GB. Mõõdetud kahebitine ligikaudne võrdlussüsteem tagastas samal hostil ja andmetel 38 MB-s 3 580 QPS-i. D4096 juures üle 10K dokumendi hoidsid mõõdetud Hybrid-MultiQ käitused recall 1.000 35 842 QPS-i juhuslike andmete puhul, 34 459 klastrite andmete puhul ja 27 828 tekstist tuletatud andmete puhul. 250K dokumendi juures mõõdeti täpne mitmepäringu toore jõud 2 653 QPS-i recall 1.000 juures. Need on võrdlusnäitajate kviitungid, mitte universaalsed lubadused; käitage komplekt uuesti oma korpusel ja riistvaral, kui hoidla on avaldatud.

Täpne väga suures ulatuses. Enamik kaste.

Rohkem kaste, tihedamad kandidaadikomplektid.

Hea recall, mõõdukas kandidaatide vahetus.

Väike kandidaatide arv, suurim läbilaskevõime.

Lineaarne otsing on SIMD-i puhul väikeses mahus kiire, kuid väga suurte korpuste puhul muutub see pudelikaelaks. LSH-indeks jagab hüpervektorid ribadeks; kandidaadid, mis mõnes ribas kokku langevad, hinnatakse täpselt. Hybrid-MultiQ paketib neli päringut SIMD-registri kohta, et hoida täpset meeldetuletust läbilaskevõime juures. Indeks ehitatakse üks kord ja päringuid tehakse mitu korda.

Sublineaarne kandidaatide genereerimine skaalas

Tsükliline nihe, kodeerib järjestuse ja asukoha.

Enamushääl, superpositsioon kontseptsioonide hulgast.

Dokument, päring, lõik, koodisümbol kodeeruvad kõik fikseeritud mõõtmega binaarseks hüpervektoriks. Vaikimisi on see 4096 bitti, sest juhusliku projektsiooni aritmeetika käitub seal hästi ja 4096-bitine XOR ja popcount mahuvad puhtalt AVX2, AVX-512 ja NEON registritesse. Kooder on deterministlik; sama tekst annab igal käivitamisel sama hüpervektori.

Teadmusjuhtimine, mis on ehitatud BitWeave tähenduskihile.

Parsimine ja sisuaadresseerimine enne indekseerimist.

Kontrollitav rakendus, versioonikinnitamine ja puuduv varaliste õigustega käitusaja sõltuvus.

Puudub tarnija katkestus, mida üle elada.

Kinnitatud semantiline leping, sama järjestatud tulemus igal serveril.

Indeksid elavad infrastruktuuril, mida te kontrollite. Puudub tarnija töötlus.

Andmed jäävad teie valitud jurisdiktsiooni. Hooldusahel on auditeeritav. Vastavus on lahendatud arhitektuuris, mitte lisatud juhtpaneeli kaudu.

9 473 QPS-i mälestusväärtusega 1.000 DBpedia 100K puhul, ilma GPUta.

Hybrid-MultiQ 10K dokumendi juures, mälestusväärtus 1.000.

9 473 päringut sekundis mälestusväärtusega 1.000 DBpedia 100K puhul, 19 MB suuruses i9-13900KF lauaarvutis AVX2-ga ja ilma GPUta. Semantiline mootor Dweve virna all.

Deterministlik tulemus, mida saab hiljem selgitada.

Korpus jääb masinatele, mida te kontrollite.

Otsing päringuteedil, mitte partiitööna.

Hoidke failid ja tähenduste kaart muutumatuna ning järjekorda saab reprodutseerida.

Sama semantiline olek toidab sarnasuso tsingut, mitmevektori lõigu sobitamist, metaandmetega filtreeritud otsingut, duplikaatide tuvastamist, klasterdamist, ühekorra prototüüpe ja RAG-põhistamist. Otsing on nähtav päring. Selle all olev korduvkasutatav aluskiht on väärtus.

Rust crate, CLI, stabiilne C ABI, WASM-i ehitus ja Pythoni sidemed maturini kaudu. SDK on protsessisisene tee, server avab jagatud piiri autentimise ja jälgitavusega ning sidemed lähevad üle olemasolevatesse keeltesse ilma esitust ümber tegemata. WASM toob ühilduvad väiksemad olekud brauseripoolsesse täitmisse. Iga pind kannab sama semantilist olekut, samu indeksilepinguid ja samu järjestatud vastuseid, mida kontrollitakse ühe vastavusaluse vastu, et mootor ei omandaks iga kliendi jaoks uut tähendust.

Külmkäivituspartitsioneerimine väga suurte andmehulkade jaoks.

Reguleeritav mälestusväärtus, mitu ribaperet.

LSH-kandidaadid pluss täpne ümberhindamine. Vaikimisi täpse otsingu jaoks.

Täpne SIMD-skaneerimine, pakettpäringud. Mälestusväärtus 1.000.

BruteForce-MultiQ täpseks, tihedate korpuste jaoks, Hybrid-MultiQ täpseks mälestusväärtuseks suuremas mahus ning reguleeritavad LSH- ja IVF-taustsüsteemid väga suurte korpuste jaoks. Iga indeks on üks toimingute perekond samade hüpervektorite kohal.

Sama fikseeritud semantiline leping, standardsetel protsessoritel, mis on juba sinu käes, annab sama järjestatud tulemuse.

Paki kontekst kokku. Seo seos. Permuteeri järjestus. Võrdle tulemust.

Binaarsed hüpervektorid kannavad semantilist tähendust pakitud bittidena. Välised ujukomaallikad ületavad deklareeritud ühesuunalise teisenduspiiri; loomulik esitus ja kõik sisemised võrdlused ning skoorimine jäävad binaarseks või fikseeritud punktiga.

XOR paari kohta, võti/väärtus-kodeering.

HDC kodeerib tähenduse tuhandete binaarsete mõõtmete vahel, kus bundling jäädvustab hulgad, binding paarid ja permuteerimine järjekorra. Tulemuseks on üks fikseeritud laiusega hüpervektor, mis mahub mõnesse vahemäluritta. Dokumendi- ja märgitasandi režiimid eksisteerivad koos, nii et terve dokument saab pakendada ühte vektorisse või hoida märgivektorite hulka hilise interaktsiooni jaoks. Esitus jääb sarnaseks mõõduka bitimüra korral, nii et sama konstruktsioon peab vastu väikestele häiretele ilma vektorit laiendamata või eraldi positsioonitensorit lisamata.

Päring räsitakse ka, kõnnib ainult sobivates koppides.

LSH-perekonnad räsivad hüpervektorid koppidesse.

Dokument binaarseks hüpervektoriks bundlingu ja bindinguga.

Sisend muutub binaarseks hüpervektoriks. Bundle, bind ja permuteerimine komponeerivad hulgad, rollid ja järjekorra enne kui ükski päring jookseb. Indeksid, filtrid ja ümberjärjestamine korraldavad kandidaate ilma tüüpi ümber defineerimata. .bwks olek salvestab koodiraamatu, vektorid, metaandmed ja päritolu koos. SIMD-dispetš käivitab selle riistvaral, mis sul juba on, ja RAG või otsene sobivus on tulemuse üks kasutus. Sõltuvuse suund on tahtlik: arvutus ei impordi kunagi rakenduse muresid, kodeerijad saavad muutuda ilma indeksi tuumasid puudutamata, ja tüüp läbib iga kihi. Päringu API on viimane kiht, mitte toode.

Migreerimine on kvartalipikkune projekt.

Sama päring, erinev vastus järgmisel nädalal.

Päringu kohta pluss GB kohta pluss indekseeritud dokumendi kohta.

AI-virna semantiline keskosa on tarnitud teenusepakkujate ahela poolt. Üks manustab sisu, teine salvestab vektorid, kolmas valib kandidaadid, neljas järjestab need ümber, ja mudel muudab tulemuse proosaks. Iga kiht muudab oma mudelit, indeksit, hinda ja piirkonda iseseisvalt, ja keegi ei oska nimetada täielikku semantilist olekut.

BitWeave muudab teksti, pildid, heli ja olemasolevad vektorid fikseeritud laiusega binaarseteks hüpervektoriteks: loomulik semantiline tüüp, millel on algebra, mida saate koostada, võrrelda, indekseerida, filtreerida, järjestada, salvestada ja käivitada kõikjal. Otsing on üks toiming. RAG on üks rakendus.

Andmed jäävad teie valitud jurisdiktsiooni. Valdusahel on auditeeritav. Vastavus on lahendatud arhitektuuris, mitte lisatud juhtpaneeli kaudu, nii et igal ülevaates tõstatatud kohustusel on struktuurne vastus, mitte lubadus.

Kui BitWeave on avaldatud, suunake see ühele kaustale ja looge esimene semantiline olek ilma välisele teenusele tuginemata.

Kaust teie enda failidega. Need jäävad täpselt sinna, kus nad on, teie pool seina.

Tavapärased serverid või arvutid, mida te juba kasutate. GPU puudub, midagi spetsiaalset pole vaja osta.

Kasutuselevõtt ei tähenda migreerimisprogrammi. Sama mootor töötab kolmel viisil: teie töötajate juba kasutatava tööriista sees, ühe ühise siseteenusena kõigile meeskondadele või võrguühenduseta ühel masinal kõige tundlikuma materjali jaoks. Ühilduv semantiline olek liigub kõigi kolme vahel, nii et esimene valik pole kunagi ühesuunaline uks.

Üks kinnitatud semantiline leping, mis on reprodutseeritud igal toetatud masinal.

Litsentseeritud kood, mida saate hoida ja teisaldada, ilma et peaksite kartma sulgemist.

Puudub päringupõhine tasu ja spetsialiseeritud kiirendi park; tegevuskulu on standardne CPU-infrastruktuur, mille te valite.

Teie valite jurisdiktsiooni, mitte kauge müüja.

Haldatav semantiline teenus otsustab, kus andmed asuvad, kuidas kasutust mõõdetakse ja millal selle käitumine muutub. BitWeave annab need otsused tagasi teie meeskonnale: käitage seda standardserveritel, valige jurisdiktsioon, kinnitage semantiline leping ja hoidke indeks koos lähtematerjaliga.