Skip to content

Build Not yet confirmed elsewhere1 publisher 3 min read Published

On-device continual learning gets an artifact: 230M model, rank-4 LoRA, one frozen teacher

Online-SDFT fine-tunes a 230M model on an Android phone from delayed, unlabeled interactions. The teacher is the same frozen base weights with the adapter off, and the write-up reports no measurements.

The Engineer · Build desk

How we use AI Send a correction

What happened

  • Online-SDFT, an open-source prototype, continually fine-tunes a small language model from delayed user interactions with the learning loop kept on the phone.
  • The stack is LiquidAI's LFM2.5-230M, a rank-4 LoRA adapter, ONNX Runtime Training, a bounded replay buffer and an Android notification-routing testbed.
  • After provisioning, inference, interaction storage, replay and adapter updates all run locally.

Why it matters

  • capability Signals that only exist after the model acts can be turned into weight updates without a server round trip or a labelled dataset.
  • constraint Every lesson covers only the branch the model already chose, which bounds how quickly a bad early habit can be corrected for one user.
  • decision Anyone porting this has to budget training cost blind, since the mechanism arrives without latency or energy figures to size it against.
  • precedent Grading gestures by reliability instead of reading them as preference votes raises the bar for how the next on-device feedback pipeline is expected to be built.

The economical move here is the absence of a second model. The deployed adapter acts; the same frozen base weights then re-read the finished interaction with the adapter switched off and the observed outcome appended to the original context [2][1]. Teacher and student are one network, so the only advantage the teacher holds is the outcome sitting in its input [15]. On a handset that is the difference between one resident set of weights and two: reviewing an interaction costs an extra forward pass, not a second model in memory [16].

That also explains why most of the design effort goes into what not to learn from. Supervised fine-tuning wants a correct action the phone never observes, and a reward is no better defined, since an opened notification is not proof of good timing and an ignored one is not proof of unimportance [12]. The obvious repair, mapping a dismissal onto "archive", overstates what a dismissal means, which could be irrelevance, bad timing, a preview that already did the job, or an interruption [13]. So outcomes arrive as reliability-conditioned soft targets: strong support for one action when the outcome is reliable, redistribution across the still-plausible actions when it is ambiguous, and no update at all when it reveals nothing [10]. The pseudocode puts a causal-support check in front of the buffer as well [3]. Two gates stand between a user gesture and a gradient step [17].

The limit the design cannot engineer away is the branch not taken. Archive a notification and the result of showing it is unobservable, to the reviewing pass as much as to the acting one [8]. Hindsight is richer than a label and still one-armed. The prototype's answer is exploration while the model is uncertain, tapered as confidence grows, on the argument that a greedy policy locks into an early behaviour and then collects only the evidence that confirms it [11]. Look at what the taper does to the data supply: the mechanism that produces off-policy evidence is scheduled to wind down precisely when the policy has become confident, which is also when a change in the user's routine would be hardest to notice. The bounded replay window and the category-balanced sampling are the counterweight [14], and whether they are enough is an empirical question.

Which is where the excerpt stops. There is no routing comparison with the adapter learning against the adapter frozen, no per-step latency, no battery cost [18]. For a training loop that runs inside a thermal budget, those are the numbers that decide whether it ships or stays a demo.

What the artifact does settle is narrower and still worth having. A 230M model with a rank-4 adapter, ONNX Runtime Training and a bounded buffer is enough to keep updating after deployment, with provisioning the only remote step described [5][6]. The frozen-at-ship default that shipped small models inherit [7] now needs an argument other than the hardware.

What to watch

  • Published numbers from the Android testbed: routing behaviour with the adapter learning versus frozen, plus per-step latency and battery draw.
  • Whether the exploration taper survives users whose habits change after confidence has already narrowed the evidence the device collects.
  • Whether the replay buffer and adapter deltas stay local under a real privacy and update review, given provisioning is the one remote step described.

Clarity's read

What the record supports and how the coverage leans. The claims behind it follow.

Reality

Evidence38
Adoption12
Hype gap+15
Incentives65
Confidence35
Why these scores

Claim ledger

Ranked by verification strength, evidence, and original report placement.

  1. [1]

    At decision time the student sees notification, time and local context; later the teacher sees the same context plus what the user did afterward, and that better-informed soft distribution is distilled into the student, which must decide without access to the outcome.

  2. [2]

    There is no separate teacher model: the deployed model uses its LoRA adapter to act, while the same frozen base model reviews the completed interaction with the adapter disabled.

  3. [3]

    In the described loop, an interaction is added to the replay buffer only if the action and the hindsight are causally supported.

Sources

1 independent publisher whose own reporting we read for this story.

  1. dev.to

    1 article · August 23, 2026

    We Taught a 230M Language Model to Keep Learning on Android

Share your take

Let Clarity write the post for you.

Signed-in readers get a short post drafted on this story in the register they choose — narrative, analytical, or a direct position — editable to the last word before it goes anywhere. The share buttons at the top of this story work without an account.

Topics and entities

Follow any of these and your For You feed starts watching them — no settings page required.

Topics

Entities

Loading related stories