Én platform, 1.930 algoritmer, alle backends: sådan byggede vi den komplette stack til diskret AI
Fragmenteringsproblemet
Dit AI-udviklingsmiljø er fragmenteret.
Du laver prototyper i PyTorch, fordi forskere foretrækker det. Du deployer med TensorFlow, fordi produktionshold vil have Googles værktøjer. Du skriver CUDA-kerner til NVIDIA-GPU'er. Du porterer til ROCm til AMD-hardware. Du omskriver alting til mobil med TensorFlow Lite eller Core ML. Du bruger ONNX til at konvertere mellem frameworks i håb om, at intet går i stykker. Du vedligeholder separate kodebaser til cloud, edge og browser-deployment.
Ti forskellige værktøjer. Tusindvis af afhængigheder. Mareridt med versionskompatibilitet. Breaking changes i hver release-cyklus.
Opdaterer du PyTorch? Håb på, at din CUDA-version matcher. Vil du deploye på AMD? Omskriv dine kerner. Har du brug for inference i browseren? Start forfra med WebAssembly. Skifter du fra NVIDIA til AMD-GPU'er? Held og lykke med at porte den kodebase. Deployer du på FPGA'er? Lær en helt anden værktøjskæde at kende.
Denne fragmentering er ikke et tilfælde. Det er det naturlige resultat af, at hvert framework optimerer til sin specifikke use case, mens det ignorerer interoperabilitet. PyTorch er fremragende til forskning, men behandler deployment som en eftertanke. TensorFlow er rettet mod produktion, men forskningsoplevelsen er smertefuld. CUDA låser dig fast til NVIDIA-hardware. Hvert værktøj løser ét problem, mens det skaber tre nye.
Der findes en bedre måde.
Dweve Core: Den komplette platform til diskret AI
Dweve Core er en samlet platform til at bygge diskrete neurale netværk fra binær til 8-bit præcision. Det er ikke endnu et framework. Det er en komplet erstatning for din fragmenterede stack.
Én installation. Ét API. Én kodebase. Automatisk deployment til CPU, GPU, FPGA, WebAssembly, hvor som helst du har brug for at køre.
Her er, hvad komplet betyder:
1.930 algoritmer, der dækker alle de operationer, du har brug for:
- 415 primitiver: Atomare operationer som XNOR, popcount, bitmanipulation, kvantisering, konvertering mellem formater
- 500 kerner: Optimerede sammensatte operationer til almindelige mønstre
- 191 lag: Komplette byggeblokke til neurale netværk (konvolution, dense, normalisering, aktivering, attention)
- 674 algoritmer: Avancerede metoder inklusive transforms, træningsprocedurer, evolutionær søgning, knowledge distillation
- 30 interop-værktøjer: Valgfrie floating-point-broer til hybride tilgange
- 120 modelarkitekturer: Præ-optimerede netværksskabeloner fra ResNets til Transformers
Dette er ikke en delmængde. Det er matematisk fuldstændighed. Vi analyserede alle større neurale netværksarkitekturer og byggede alle de operationer, de kræver, optimeret til diskret beregning fra første principper.
6 backends med automatisk kompilering:
- SIMD CPU: Håndoptimerede kerner til x86 og ARM med automatisk ISA-registrering (SSE2, AVX2, AVX-512, NEON, SVE/SVE2)
- CUDA: NVIDIA-GPU-optimering med warp-level-primitiver og Tensor Core-udnyttelse
- Rust-HDL: Direkte FPGA- og ASIC-syntese fra algoritmebeskrivelser
- WebAssembly: Browserbaseret inference med SIMD128-understøttelse til GDPR-kompatibel behandling på enheden
- ROCm: AMD-GPU-optimering med wavefront-level-operationer
- Metal: Apple Silicon-optimering med unified memory-arkitektur
6 bit-bredder med adaptiv præcision:
- Binær (1-bit): Maksimal effektivitet med 16× komprimering sammenlignet med FP16
- Ternary: {-1, 0, +1} med eksplicit sparsitet
- 2-bit: Fire niveauer for afbalanceret komprimering
- 3-bit: Otte niveauer til kvalitetsfølsomme lag
- 4-bit: Seksten niveauer tæt på FP16-kvalitet
- 8-bit: Næsten fuld præcision til kritiske operationer
Platformen lærer den optimale bitbredde per lag under træning gennem gradientbaseret udvælgelse. Ikke heuristik. Ikke gætværk. Faktisk optimering baseret på, hvordan nøjagtigheden forbedres med øget præcision.
Skriv én gang, kør overalt
Platformen bruger et deklarativt Rust-API. Du beskriver, hvad du vil have, og compileren finder ud af, hvordan den kører det optimalt på din målhardware.
Eksempel på netværksdefinition:
let model = NetworkBuilder::new()
.input(BinaryTensor::new([1024, 784]))
.dense(784, 512, activation=BinaryActivation::Sign)
.dense(512, 256, activation=BinaryActivation::Sign)
.output(256, 10)
.build();
Det er det. Skriv dette én gang, og compileren genererer automatisk optimerede implementeringer til hver backend.
Kompileringspipelinen arbejder gennem fire niveauer:
Niveau 1: Neural Network IR - Din overordnede netværksbeskrivelse parses til en beregningsgraf med operationer, dataflow og hyperparametre.
Niveau 2: Grafoptimering - Standard compiler-pass fjerner død kode, folder konstanter, deduplicerer udtryk og fusionerer sekventielle operationer. Et tæt lag efterfulgt af batchnormalisering og aktivering bliver til en enkelt fusioneret kerne, der indlæser input én gang og producerer det endelige output.
Niveau 3: BitOps-dialekt - Grafen sænkes til bitniveau-operationer eksplicit typet med præcision. Denne mellemliggende repræsentation er hardware-agnostisk, men tæt på faktiske maskinoperationer. Bygget på MLIR-infrastruktur (Multi-Level Intermediate Representation) til industriel styrkeoptimering.
Niveau 4: Hardware-lowering - Den endelige kodegenerering producerer platformspecifikke implementeringer. For AVX-512 bliver bitoperationer til VPXORQ- og VPOPCNTQ-instruktioner. For CUDA bliver de til warp-niveau-intrinsics med sammenhængende hukommelsesadgang. For FPGA bliver de til XNOR-porte og adder-træer syntetiseret til Verilog.
Den samme kildekode kører på din bærbare CPU under udvikling, deployes til cloud-GPU'er i produktion og kompileres til FPGA'er til deterministisk realtidsinferens. Ingen oversættelse. Ingen porting. Ingen platformspecifik kode.
Bygget til, at kunder kan bygge med
Dweve Core driver Dweve Loom, vores begrænsningsbaserede ræsonneringssystem. Men det er ikke kun for os. Det er en komplet platform for alle, der bygger diskrete neurale netværk.
Du kan bygge:
- Brugerdefinerede arkitekturer ved hjælp af de 191 lagtyper og 674 algoritmer
- Domænespecifikke modeller optimeret til dine præcise krav
- Hybride tilgange der blander diskret og kontinuerlig beregning via de 30 interop-værktøjer
- Nye træningsmetoder ved hjælp af evolutionær søgning, viden-destillation eller brugerdefinerede gradient-estimatorer
Platformen tilbyder:
Komplet træningsinfrastruktur: Seks straight-through estimator-varianter til binær/ternær gradient-flow. Binære optimeringsalgoritmer der internt vedligeholder fuld præcision i vægtene, mens de binariserer til fremadrettede passager. Automatisk bitbredde-valg gennem gradientbaseret optimering. Progressiv flertrins-destillation fra FP32 gennem INT8, INT4, ternær til binær.
Automatisk hardwareoptimering: Registrering af CPU-kapacitet ved kørsel (CPUID på x86, systemregistre på ARM) og automatisk valg af den hurtigste tilgængelige SIMD-implementering. GPU-kernel-varianter valgt ud fra warp-størrelse, delt hukommelse og registerantal. FPGA-syntese med automatisk indsættelse af pipeline-registre baseret på timing-begrænsninger.
Fleksibel kvantisering: Symmetrisk og asymmetrisk kvantisering med skalaer pr. tensor, pr. kanal eller pr. gruppe. Dynamisk kvantisering med registrering af interval ved kørsel eller statisk kvantisering med forudberegnede skalaer fra kalibreringsdata. MSE-optimal og KL-divergensbaseret skala-beregning for minimalt præcisionstab.
Hvorfor diskret beregning betyder noget
Traditionelle neurale netværk beregner alt i 16-bit eller 32-bit flydende komma og træffer derefter diskrete beslutninger til sidst. Vi arbejder direkte i diskret rum fra binær til 8-bit, hvilket eliminerer mellemliggende kontinuerlig beregning.
Dette er ikke simpel kvantisering af eksisterende modeller. Frameworket er arkitekteret fra første principper omkring diskrete operationer:
Hardware-virkelighed: Moderne processorer består af milliarder af transistorer i to tilstande. En XNOR-port kræver 6 transistorer. En 32-bit flydende komma-multiplikator kræver tusindvis og forbruger størrelsesordener mere energi. Diskrete operationer er i tråd med hardwarens grundprincipper.
Hukommelseseffektivitet: Binære vægte pakker 64 værdier pr. 64-bit ord. En ResNet-50 med 25,6 millioner parametre fylder 3,1 MB i binær form mod 50 MB i FP16. Hele modellen passer i CPU'ens L3-cache (typisk: 36-64 MB). Du bliver beregningsbegrænset i stedet for hukommelsesbegrænset.
Implementeringsfleksibilitet: Små modeller muliggør inferens på enheden. Ingen cloud-afhængighed. Ingen netværksforsinkelse. Ingen bekymringer om databeskyttelse. Behandl følsomme oplysninger helt på brugernes enheder uden nogensinde at sende dem til servere.
Den komplette algoritmematrix
Platformen giver omfattende dækning på tværs af tre dimensioner: algoritmer, backends og bitbredder.
Grundlæggende operationer (415 primitiver):
- 46 bitoperationer: logiske porte, manipulation, skift, optælling, søgning
- 16 feltoperationer: udtræk, deponering, pakning, spredning, samling, maskedannelse
- 25 reduktioner: logisk AND/OR/XOR, aritmetisk sum/produkt, afstemning og konsensus
- 17 afstandsmetrikker: Hamming, Jaccard, Dice, Tanimoto, cosinus, Manhattan, euklidisk
- 12 interleaving-operationer: 2-vejs til 4-vejs interleave, Morton- og Hilbert-rumfyldende kurver
- 44 aritmetiske operationer: addition, subtraktion, multiplikation, division, fixed-point-operationer
- 39 transformationer: Walsh-Hadamard, FFT, DCT, NTT, wavelets (Haar, Daubechies, CDF97)
- 11 hashing: SHA-256, Blake3, xxHash, MinHash, SimHash, lokalitetsfølsom hashing
- 22 tilfældig talgenerering: LFSR, Mersenne Twister, ChaCha20, Sobol-sekvenser
- 15 kvantisering: symmetrisk, asymmetrisk, per-tensor, per-kanal, skalaberegning
- 30 binær matematik: XNOR-popcount, ternær kodning, vægtopdateringer, gradientoperationer
- 48 formatkonverteringer: FP32/FP16/FP8/INT8/INT4/INT2-konverteringer i alle retninger
- 42 fixed-point-operationer: aritmetik, transcendentale funktioner, mætning på tværs af alle bitbredder
Kompositoperationer (500 kerner):
Optimerede kerner, der kombinerer primitiver til almindelige mønstre. Matrixmultiplikationsvarianter (standard, transponeret, blokeret). Konvolutionstyper (2D, 3D, dybdevis, grupperet, dilateret). Normalisering (batch, lag, gruppe, instans). Aktiveringsfunktioner (sign, hård tanh, stykkevis lineær). Attention-mekanismer (self-attention, cross-attention, multi-head). Pooling (max, gennemsnit, stokastisk).
Netværkslag (191 lag):
Komplette byggeklodser til konstruktion af netværker. Tætte lag med binære, ternære og multi-bit vægte. Konvolutionslag med alle almindelige varianter. Tilbagevendende lag (LSTM, GRU med binære porte). Attention-lag (skaleret dot-produkt, multi-head, relativ position). Normaliseringslag med batch-statistik og indlærte parametre. Residualforbindelser med dimensionsmatchning.
Højniveau-algoritmer (674 algoritmer):
Komplette metoder til træning, inferens og optimering. Knowledge distillation med progressiv multi-trins forfining. Evolutionær begrænsningsopdagelse med genetisk programmering. Neural arkitektursøgning for diskrete netværker. Gradientestimatorer (straight-through, klippet, adaptiv, momentum, hypernetværk). Optimizere (BinaryAdam, TernaryAdam, adaptiv kvantisering). Distribueret træning med byzantinsk-robust aggregering.
Dybde i backend-implementering
Hver algoritme findes i flere optimerede varianter pr. backend. Ikke generiske implementeringer. Hardware-specifik kode, der udnytter alle arkitektoniske funktioner.
CPU SIMD: SSE2 giver universel x86-64-kompatibilitet (enhver processor siden 2001). AVX2 leverer 4-8× hastighedsforøgelse på Haswell og nyere (2013+). AVX-512 når 10-16× med maskeregistre til prædikering og VPTERNLOG til enhver 3-input Boolean-funktion. NEON giver 3-4× hastighedsforøgelse til alle ARMv8-processorer inklusive mobil og Apple Silicon. SVE/SVE2 giver vektorlængde-agnostisk kode, der automatisk udnytter bredere vektorer på nyere hardware.
CUDA: Warp-niveau-primitiver organiserer 32 tråde, der udføres i låst trit. Hver tråd behandler 32 binære værdier pakket i uint32. En fuld warp behandler 1.024 binære værdier parallelt. Hardware-intrinsics inkluderer __popc til populationsoptælling, __ballot_sync til warp-afstemning og __shfl_sync til hurtig kommunikation uden delt hukommelse. Sammenhængende hukommelsesadgang sikrer båndbreddeudnyttelse. Tensor Core-udnyttelse til matrixoperationer selv med binære data.
Rust-HDL: Direkte hardwaresyntese fra annoteret Rust-kode. Frameworket genererer automatisk Verilog/VHDL. Binære XNOR-popcount-operationer mappes til XNOR-gates (kombinatorisk logik, nul udbredelsesforsinkelse) plus addertræer. Pipeline-registre indsættes automatisk baseret på timingbegrænsninger. Syntetiserer til både FPGA'er (Xilinx, Intel) og ASIC'er.
WebAssembly: SIMD128 giver 128-bit vektoroperationer i alle moderne browsere (Chrome 91+, Firefox 89+, Safari 16.4+). Operationer inkluderer v128.and/or/xor til bitvis logik og i8x16.popcnt til populationsoptælling. Kombineret med Web Workers til flertrådning og SharedArrayBuffer til delt hukommelse opnås 60-80 % af indbygget CPU-ydeevne. Inferens i browseren på enheden muliggør GDPR-kompatibel behandling uden serveruploads.
ROCm: Wavefront-niveauoptimering til AMD-arkitekturer med 64 tråde pr. wavefront (det dobbelte af NVIDIAs 32). Hver tråd behandler 32 binære værdier for 2.048 værdier pr. wavefront. Lignende intrinsics som CUDA med __builtin_popcount, __ballot og ds_swizzle. Programmeringsmodellen er tæt nok på, at CUDA-udviklere kan skrive ROCm-kode med det samme.
Metal: Apple Silicon-optimering ved hjælp af en forenet hukommelsesarkitektur, hvor CPU og GPU deler fysisk RAM med cache-koherens. Eliminerer data-kopieringsoverhead. Binære operationer udnytter Apples brugerdefinerede matrixmotorer. M3 Max Neural Engine leverer 50-80 TOPS på binær inferens ved hjælp af dedikerede acceleratorer indbygget i SoC'en.
Hvad vi ikke gør (og hvorfor fokus betyder noget)
Vigtigt at præcisere: Vi gør ikke alt. Fokus muliggør ekspertise.
Ingen floating-point-inferens: Kun diskret beregning fra binær til 8-bit. Hvis du har brug for FP32/FP16/BFloat16 til implementering, så brug PyTorch eller JAX i stedet. Vi optimerer udelukkende til diskrete operationer, hvilket muliggør specialiseringer, der er umulige med mixed-precision floating-point. Man kan ikke være fremragende til alt. Vi valgte diskret AI og optimerede nådesløst.
Ingen dynamiske inferensgrafer: Modeller kompileres til statiske grafer til implementering. Træning understøtter dynamisk beregning (nødvendigt for forskningsfleksibilitet), men produktionsinferens er statisk. Dette muliggør optimering på forhånd: kernefusion på tværs af hele netværket, hukommelseslayoutoptimering med kendte tensorformer og præfetch-instruktionsindsættelse med forudsigelige adgangsmønstre.
Fokuseret dataforbehandling: Vi leverer 8 specialiserede algoritmer til forberedelse af neurale netværksinput (normalisering, adaptiv skalering, lært kvantisering, binær augmentering), ikke generel ETL. Til feature engineering-pipelines og dataindlæsning skal du bruge eksisterende værktøjer (Pandas, Polars, DuckDB). Vi er fremragende til diskret inferens i neurale netværk fra binær til 8-bit. Vi erstatter ikke hele din datastak.
Disse er ikke begrænsninger. De er fokus. Ved at begrænse omfanget til diskrete neurale netværk med statiske inferensgrafer opnår vi en optimeringsdybde, som omfattende frameworks ikke kan matche.
Byg på Dweve Core
Platformen er klar til brug. Du kan begynde at bygge diskrete neurale netværk i dag.
Komplet værktøjskæde:
- Deklarativ API: Rust-DSL med NetworkBuilder til modeldefinition
- Compilerinfrastruktur: MLIR-baseret optimeringspipeline med fire IR-niveauer
- Træningsframework: Seks STE-varianter, binære optimerere, automatisk bitbreddevalg
- Backend-kodegeneratorer: C med intrinsics til CPU, CUDA/HIP-kerner til GPU, Verilog til FPGA
- Implementeringsværktøjer: Eksport til ONNX, Core ML, TensorFlow Lite eller selvstændige binære filer
Eksempel på arbejdsgang:
1. Definér dit netværk med NetworkBuilder
2. Træn med binære optimerere og adaptiv bitbreddevalg
3. Kompilér til målhardware med automatisk backendvalg
4. Implementér som optimeret binær fil eller eksportér til standardformat
5. Kør hvor som helst: cloudservere, edge-enheder, browsere, FPGAs
Én platform. Én kodebase. Alle backends. Komplet diskret AI.
Stop med at jonglere med ti frameworks. Stop med at omskrive kode til hvert implementeringsmål. Stop med at kæmpe med versionskompatibilitet. Byg én gang på Dweve Core og implementér overalt.
Dweve Core driver Dweve Loom, vores begrænsningsbaserede ræsonneringssystem, der lanceres i 2026. Frameworket implementerer den komplette stak med 1.930 algoritmer på tværs af 6 backends med adaptiv multi-bit-kvantisering fra binær til 8-bit. Bygget af et hollandsk ingeniørteam over tre års udvikling.