You need to agree to share your contact information to access this model

This repository is publicly accessible, but you have to accept the conditions to access its files and content.

SMLR Logs 4B is a research preview. Please provide basic contact information to help us understand the model's research and operational use cases.

Log in or Sign Up to review the conditions and access this model content.

SMLR-Logs-4B — Streaming Multi-Lane Reasoner

A fused event-driven streaming reasoner built on Qwen3-4B. Instead of the usual "full input → one answer", it consumes an event/log stream, keeps state, runs several reasoning lanes in parallel, calls tools, and folds its own structured memory back into the input:

S_t = Model(S_{t-1}, E_t, R_t)     # state = Model(prev state, new event, tool result)

This is the logs tier of SMLR (cross-source log root-cause + alerting). Weights are the m7 adapter merged into Qwen3-4B (self-contained, no separate adapter needed).

What's in the model

A single forward gives a policy decision + every lane's next token in parallel:

  • policy_head → one of 10 timing actions: WAIT NOTE SUMMARY QUESTION VERIFY QUERY_TOOL WARN ALERT RESOLVE REVISE
  • 6 lane heads (observation reasoning public_output notes state_patch actions) decode their own JSON channel from the same prefill — wall-clock = prefill + max(lane), not the sum.

Core behaviour is discriminate-then-alert: QUERY_TOOL → read the discriminative tool field → ALERT with the root cause.

Intended use

Real-time monitoring of logs / event streams — detect a cross-source incident early, find the root cause, prescribe a remedy. Secondary: metrics streams, dictation/transcript streams (text). Not a chat model.

Evaluation (logs_heldout, hardened evaluator, cascade off)

This merged model, over 3 independent runs (n=12 incidents each):

run detect root_cause alert false_alert
1 0.917 0.917 0.917 0
2 0.833 0.750 0.750 0
3 0.917 0.917 0.917 0
band 0.83–0.92 0.75–0.92 (mean ≈0.86) 0.75–0.92 0

Root-cause sits in the 0.75–0.92 band, mean ≈0.86, consistent with the pre-merge adapter (which was 0.833 stable across 3 runs). The bf16 LoRA merge adds a little run-to-run variance (it nudges some borderline argmax decisions). Zero false alerts in every run. Zero-shot transfer to unseen k8s events is modest with restraint preserved — not a target domain.

Honest limitations. The held-out set is small (n=12): single-run scores carry ~±1 incident (±0.08) of GPU-argmax run-to-run noise — read the band, not a point. This is the cascade-off base reasoner, a research artifact, not a hardened production service (no auth / persistence / ops layer).

How to run

This model is not a vanilla CausalLM — it needs SMLR's lane-parallel decode loop. Use the SMLR runtime:

from runtime.vla_client import VLAClient   # from the SMLR repo

# merged release dir loads directly — no separate base, no PEFT
client = VLAClient(base="path/to/smlr-stream-4b", adapter="path/to/smlr-stream-4b")
upd, meta = client.call(tier=None, system=SYS, user_obj=frame, max_tokens=256, extra={})
# upd carries: public_output {mode, text}, reasoning, hypotheses, actions(tool calls), ...

See example_infer.py and the SMLR repository for the full streaming runtime (event-sourcing player, tool loop, layered memory).

Training

Distilled from a 27B teacher by event-sourcing replay (the teacher's lane/tool/policy behaviour over recorded streams), m7 recipe: ~15.7k frames, 6 lanes incl. an actions lane for the tool loop, QLoRA (r32/α64), then merged to bf16.

License

Apache-2.0, inherited from the Qwen3-4B base. The merged weights are redistributable.

Downloads last month
-
Safetensors
Model size
6B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for netis-ai/smlr-logs-4b

Finetuned
Qwen/Qwen3-4B
Finetuned
(1030)
this model