Transcriptie 05 — web: bewijs en bouw een lokale inferentieroute binnen browsergrenzen #2513

Closed
opened 2026-10-22 19:55:42 +00:00 by brenno · 0 comments
Owner

Bovenliggend epic: #2508
Afhankelijk van: #2509, #2510

Gebruikersdoel

De webversie kan een bestand en eigen microfoon lokaal verwerken zonder audio naar de OciDeck-host te sturen, met eerlijk zicht op het model en de prestatiegrens.

Afhankelijkheid en feitelijke grens

Na contract/privacy. whisper.cpp heeft een WASM-proef, maar de eigen documentatie noemt alleen modellen tot en met small, een voorbeeldlimiet van 120 seconden en onvoldoende prestaties/geheugen daarboven. large-v3 op web mag dus niet als toegezegde pariteit worden geclaimd. OciDeck heeft een strenge CSP en een webopslaglimiet voor presentatiemedia; de browser kan lokale cache wissen.

Werk

  • Bouw eerst een meetbare browserproef op de echte OciDeck-webbundle: Chromium, Firefox, Safari; SIMD/threads/CSP, lange bestanden via segmentering, browsercache/quota en responsiviteit. Stel een concreet maximum per browser vast of bewijs een andere lokale browserengine. Een localhost-helper is alleen als aparte, expliciete optionele route toegestaan na onderzoek van CORS/private-network-permission; geen stille serverupload.
  • Bouw de bewezen route met gebruiker-geïnitieerde modeldownload/import, hash/licentie, voortgang, annuleren, herstel bij quota-/tabcrash, en geëxporteerde audio/Markdown voordat vluchtige browseropslag verloren kan gaan.
  • Geef als een browser of setup de inferentie niet kan dragen een specifieke, getoetste uitleg en een bruikbare keuze: desktopapp of de optionele, bewust gekozen ASR-server (#2524).

Acceptatie

  • Per doelbrowser staat een reproduceerbare lokale proef met model, opnamelengte, geheugen/duur en resultaat. Bouw lokale inferentie waar deze betrouwbaar werkt; markeer anders de lokale capability als niet beschikbaar en bied na expliciete keuze de geteste serverroute. Web-pariteit betreft de gebruikersroute, niet hetzelfde modelgewicht.
  • De gekozen webroute verwerkt audio lokaal; netwerkproef bevestigt geen audioverkeer naar host, proxy of AI-backend.
  • CSP/hardening blijft groen; geen CDN of ongepinde JavaScript als stil neveneffect.
  • Een lang bestand, volle quota en herladen krijgen een begrensde, begrijpelijke uitkomst zonder stil dataverlies.

Bronnen

https://github.com/ggml-org/whisper.cpp/blob/master/examples/whisper.wasm/README.md ; https://developer.mozilla.org/en-US/docs/Web/API/Storage_API/Storage_quotas_and_eviction_criteria .

**Bovenliggend epic:** [#2508](https://pawprint.vigilis.online/LibreKAT/Ocideck/issues/2508) **Afhankelijk van:** [#2509](https://pawprint.vigilis.online/LibreKAT/Ocideck/issues/2509), [#2510](https://pawprint.vigilis.online/LibreKAT/Ocideck/issues/2510) ## Gebruikersdoel De webversie kan een bestand en eigen microfoon lokaal verwerken zonder audio naar de OciDeck-host te sturen, met eerlijk zicht op het model en de prestatiegrens. ## Afhankelijkheid en feitelijke grens Na contract/privacy. `whisper.cpp` heeft een WASM-proef, maar de eigen documentatie noemt alleen modellen tot en met `small`, een voorbeeldlimiet van 120 seconden en onvoldoende prestaties/geheugen daarboven. `large-v3` op web mag dus niet als toegezegde pariteit worden geclaimd. OciDeck heeft een strenge CSP en een webopslaglimiet voor presentatiemedia; de browser kan lokale cache wissen. ## Werk - Bouw eerst een meetbare browserproef op de echte OciDeck-webbundle: Chromium, Firefox, Safari; SIMD/threads/CSP, lange bestanden via segmentering, browsercache/quota en responsiviteit. Stel een concreet maximum per browser vast of bewijs een andere lokale browserengine. Een localhost-helper is alleen als aparte, expliciete optionele route toegestaan na onderzoek van CORS/private-network-permission; geen stille serverupload. - Bouw de bewezen route met gebruiker-geïnitieerde modeldownload/import, hash/licentie, voortgang, annuleren, herstel bij quota-/tabcrash, en geëxporteerde audio/Markdown voordat vluchtige browseropslag verloren kan gaan. - Geef als een browser of setup de inferentie niet kan dragen een specifieke, getoetste uitleg en een bruikbare keuze: desktopapp of de optionele, bewust gekozen ASR-server ([#2524](https://pawprint.vigilis.online/LibreKAT/Ocideck/issues/2524)). ## Acceptatie - [ ] Per doelbrowser staat een reproduceerbare lokale proef met model, opnamelengte, geheugen/duur en resultaat. Bouw lokale inferentie waar deze betrouwbaar werkt; markeer anders de lokale capability als niet beschikbaar en bied na expliciete keuze de geteste serverroute. Web-pariteit betreft de gebruikersroute, niet hetzelfde modelgewicht. - [ ] De gekozen webroute verwerkt audio lokaal; netwerkproef bevestigt geen audioverkeer naar host, proxy of AI-backend. - [ ] CSP/hardening blijft groen; geen CDN of ongepinde JavaScript als stil neveneffect. - [ ] Een lang bestand, volle quota en herladen krijgen een begrensde, begrijpelijke uitkomst zonder stil dataverlies. ## Bronnen https://github.com/ggml-org/whisper.cpp/blob/master/examples/whisper.wasm/README.md ; https://developer.mozilla.org/en-US/docs/Web/API/Storage_API/Storage_quotas_and_eviction_criteria .
brenno 2026-10-23 13:10:33 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
LibreKAT/Ocideck#2513
No description provided.