You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Julia-1 (Apache-2.0, checkpoint dated 2026-09-24) is a 144M-parameter decision model fine-tuned from mmBERT-small, a multilingual ModernBERT encoder. It answers choice, score and noul questions and runs on CPU. The authors report 73.15% accuracy on typed decisions and 71.50% on MASSIVE across 52 locales. Neither result has been reproduced here.
At 144M parameters it is smaller than LAYA (0.4B) and multilingual. That makes it a candidate for a local backend on machines without a GPU.
Scope
Add a julia backend that runs in process on a thread, following the laya and cua backends, behind uv sync --extra julia. The request can reuse jev_question from the Jev backend because engine.predict(state=..., questions=...) takes the TypeSafe question shape.
Two limits need explicit handling:
Option count. Julia-1 accepts 2 to 20 options per question. Browser pages often offer more elements. As a minimum, a question with more than 20 options raises MODEL_SERVICE_CONFIG_ERROR, and the evaluation reports how often that happens. Pre-filtering or chunking is out of scope until those numbers exist, because chunking breaks the requirement that probabilities cover exactly the offered keys and sum to 1.
Context length. Combined state, question and options are capped at 8,192 tokens, and strict_encoding=True rejects overflow. Browser states on the Allrecipes run measure 18,785 to 23,654 tokens (docs/benchmarks.md). [decision_models] Compact the browser front's state for Laya's window #9 compacts the browser state for LAYA in laya_state(). Move that function out of laya.py into shared code and apply it to Julia-1 as well.
Packaging risk: the model installs as a local editable package named julia. PyJulia on PyPI uses the same import name. Pin the checkpoint by Hugging Face revision and confirm the extra resolves without a name clash.
Acceptance criteria
Installation and run instructions specify the checkpoint revision, dependencies, device settings, max_length and head_length, and a reproducible smoke test.
Behavioural tests with a fake engine cover option mapping, choice, noul and score answers, invalid outputs, more than 20 options, and context overflow.
Why
Julia-1 (Apache-2.0, checkpoint dated 2026-09-24) is a 144M-parameter decision model fine-tuned from mmBERT-small, a multilingual ModernBERT encoder. It answers
choice,scoreandnoulquestions and runs on CPU. The authors report 73.15% accuracy on typed decisions and 71.50% on MASSIVE across 52 locales. Neither result has been reproduced here.At 144M parameters it is smaller than LAYA (0.4B) and multilingual. That makes it a candidate for a local backend on machines without a GPU.
Scope
Add a
juliabackend that runs in process on a thread, following thelayaandcuabackends, behinduv sync --extra julia. The request can reusejev_questionfrom the Jev backend becauseengine.predict(state=..., questions=...)takes the TypeSafe question shape.Two limits need explicit handling:
MODEL_SERVICE_CONFIG_ERROR, and the evaluation reports how often that happens. Pre-filtering or chunking is out of scope until those numbers exist, because chunking breaks the requirement that probabilities cover exactly the offered keys and sum to 1.strict_encoding=Truerejects overflow. Browser states on the Allrecipes run measure 18,785 to 23,654 tokens (docs/benchmarks.md). [decision_models] Compact the browser front's state for Laya's window #9 compacts the browser state for LAYA inlaya_state(). Move that function out oflaya.pyinto shared code and apply it to Julia-1 as well.Packaging risk: the model installs as a local editable package named
julia. PyJulia on PyPI uses the same import name. Pin the checkpoint by Hugging Face revision and confirm the extra resolves without a name clash.Acceptance criteria
max_lengthandhead_length, and a reproducible smoke test.choice,noulandscoreanswers, invalid outputs, more than 20 options, and context overflow.Dependencies and references
Model card, ONNX export, decision-model interface, CUA backend.
State compaction: #9. Evaluation: #13. Comparison table: #14. Serving-side candidate list: ThinkFlowLab/system1-omni#9.