filed under: on-device text search
UltraBERT in the browser
UltraBERT is a family of English text models from dmis-lab. We converted three of them to a format that runs in web pages, and this page lets you try two. The search tab turns a question and some documents into lists of numbers that capture their meaning, then ranks the documents by how close each one is to the question. The second tab asks a model to guess a missing word.
The models run inside this tab, on the graphics chip when the browser allows it, otherwise on the processor. The first search downloads about 0.3 GB and the first guess about 0.4 GB, so Wi-Fi helps.
Source: file sizes of the published model files on Hugging Face, 2026-10-15.
How the models did in our tests
We scored search quality from 0 to 1, where 1 means the right documents always come first. On SciFact, a set of 5,183 science abstracts and 300 questions, the web version of the search model scored 0.768 and the original scored 0.766, so the conversion lost nothing. Standard keyword search scored 0.686, and Google's EmbeddingGemma, a search model of about twice the size, scored 0.786.
Source: Pastel Labs search run, 2026-10-15, CPU only. Documents up to about 6,000 words.
Long documents are where it fell short for us. On QMSum meeting transcripts (197 transcripts, 1,527 summaries to match, in the LongEmbed version), with each transcript cut to its first 3,000 words or so because longer ones ran out of memory on our test machine, the web version scored 0.449 and the original 0.448. Standard keyword search, which read every transcript in full, scored 0.832. dmis-lab report 0.553 when the model reads whole transcripts.
Source: Pastel Labs search run, 2026-10-15, CPU only, transcripts cut to about 3,000 words. dmis-lab's figure: UltraBERT-Embed-150M model card on Hugging Face, checked 2026-10-15.
We also wrote 30 sentences with one missing word each (facts, grammar, short code). Both the smaller and larger fill-in models, in their web versions, put the expected word first 28 times and in their top five all 30 times, the same as the originals. The two misses had more than one right answer.
Source: Pastel Labs fill-in-the-blank run, 2026-10-15, CPU only.
The start and run times shown after you press a button are measured in your own browser.
Where things load from
The page and its code come from this site. The model files come from Hugging Face, but this site fetches them for you at fixed versions, so your browser only talks to this site and Hugging Face doesn't see your visit. Your browser may keep the model files in its cache. What you type stays in this tab; we checked in an automated test browser that the page sends nothing besides requests for its own files.
Our host, Cloudflare, keeps standard request logs (including IP addresses) for security and operations; we don't add analytics or cookies.
Tested in Chrome.
Licenses
Converted to ONNX from dmis-lab/UltraBERT-Embed-150M; modified. Converted to ONNX from dmis-lab/UltraBERT-150M; modified. Both originals are by dmis-lab under the Apache License 2.0; their repositories ship no NOTICE file. The conversion changed the file format and stored the weights as 16-bit numbers; nothing was retrained.
Test data, used only for the scores above: SciFact (claims under CC BY 4.0, abstracts from S2ORC under ODC-By 1.0) and QMSum (MIT License, Copyright (c) 2021 Yale-LILY), via LongEmbed. No text from either set appears on this page; the sample documents were written by us. EmbeddingGemma was used only in our own test run and is not served here.