Find a file
Bogdan Abaev 0e2fdcec8d Embed passages through a verified llama endpoint
Passages can be embedded by a local llama.cpp server serving the same
model, configured from Settings -> Advanced. The server is trusted only
because its vectors match the local model's, never by name:

- Zotero.Embeddings.Endpoint: verify() embeds calibration passages
  locally and remotely (plus one chunk-length text) and stores a typed
  verdict (ok, unreachable, unauthorized, not-embeddings, width-mismatch,
  low-agreement, context-too-small) keyed to the URL and model version.
  Passages route to the endpoint only while a matching verdict says ok;
  queries always embed locally.
- Every batch carries a sentinel text whose local vector is cached, so a
  server switched to another model or pooling is caught on that batch and
  nothing wrong is stored. Three consecutive failures skip the endpoint
  for the rest of the run; a run start rechecks a verified endpoint.
- MODELS gains `serving` (GGUF repo and quant) for both bekko models;
  getCommand() renders the llama.cpp command with a 4096 context.
- Preferences: status line and Configure Endpoint dialog with the URL,
  the facts the server must match, a copyable command, typed errors, and
  a Stop Using Endpoint button.

Also fixes two tokenizer defects in the runtime's transformers.js that
the endpoint comparison exposed, both affecting every locally embedded
bekko vector:

- Metaspace's leading word marker was never prepended (the runtime needs
  the legacy add_prefix_space flag). `leadingSpace: true` in MODELS adds
  it in embedMany(). Short texts had drifted to cosine 0.83-0.95 against
  the reference.
- Newlines and repeated spaces were tokenized differently from the
  reference. Whitespace runs now collapse to one space in both embedding
  paths.
2026-09-11 16:42:24 -07:00
.github/workflows CI: Don't run duplicate jobs for same-repo pull requests 2026-07-08 10:50:32 -04:00
app Restore dxcompiler.dll on Windows for WebGPU and leave WebGPU pref on 2026-08-05 14:10:04 -04:00
chrome Embed passages through a verified llama endpoint 2026-09-11 16:42:24 -07:00
defaults/preferences Embed passages through a verified llama endpoint 2026-09-11 16:42:24 -07:00
document-worker@6d0c0ce45d Update document-worker submodule 2026-07-15 12:52:00 -04:00
js-build Add SDT support 2026-06-12 13:47:08 +03:00
note-editor@acec74d09b Improve undo/redo in the note editor (#3398) 2026-07-31 14:22:53 +02:00
reader@c6edbfff75 Update reader submodule 2026-07-20 10:50:56 -04:00
resource update calibration corpus with longer passages 2026-09-11 12:06:13 -07:00
scripts Add script for pulling Fluent translations 2026-01-25 22:15:29 -05:00
scss Embed passages through a verified llama endpoint 2026-09-11 16:42:24 -07:00
styles@dff7452b24 Update translators, styles, CSL locales, and renamed-styles.json 2026-04-02 15:51:43 -04:00
test Embed passages through a verified llama endpoint 2026-09-11 16:42:24 -07:00
translators@60f2d542ff Update translators submodule 2026-07-15 12:52:54 -04:00
types/gecko fx140: Update type definitions 2025-07-30 22:30:37 -04:00
.babelrc Use production builds of react libraries (#4482) 2024-08-02 03:43:02 -04:00
.gitattributes local semantic search on abstracts 2026-08-05 15:26:55 -04:00
.gitignore Use user-provided codesign script for Windows signing 2024-04-08 10:12:58 +01:00
.gitmodules Rename pdf-worker submodule to document-worker 2026-04-22 15:50:02 -04:00
chrome.manifest Remove old citation dialogs (#5177) 2025-04-02 05:26:06 -04:00
CLAUDE.md Rename pdf-worker submodule to document-worker 2026-04-22 15:50:02 -04:00
CONTRIBUTING.md Add "support questions" to CONTRIBUTING.md 2022-12-01 05:10:42 -05:00
COPYING Update COPYING 2018-03-26 11:27:48 +02:00
eslint.config.mjs Convert ItemPane{SectionElement,Container}Base to ES modules 2026-05-18 15:48:31 -04:00
package-lock.json Update package-lock.json 2026-01-29 13:22:13 -05:00
package.json Upgrade ftl-tx. Fix #5671. 2025-12-20 02:22:23 +01:00
README.md "Zotero wiki" → "Zotero documentation" in app build README 2023-04-26 04:40:22 -04:00
update.rdf Update Fx minVersion to 45 2016-12-13 09:12:55 -05:00
version Update version to 11.0 2026-08-03 14:14:05 -04:00

Zotero

CI

Zotero is a free, easy-to-use tool to help you collect, organize, cite, and share your research sources.

Please post feature requests or bug reports to the Zotero Forums. If you're having trouble with Zotero, see Getting Help.

For more information on how to use this source code, see the Zotero documentation.