mlabonne Claude Opus 4.8 (1M context) commited on
Commit
ba714f6
·
1 Parent(s): 2066cb6

Trim README to YAML front-matter; note CPU in short_description

Browse files

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

Files changed (1) hide show
  1. README.md +1 -13
README.md CHANGED
@@ -7,17 +7,5 @@ sdk: docker
7
  app_port: 7860
8
  header: mini
9
  pinned: false
10
- short_description: Policy linting with LFM2.5 Encoder, server-side CPU
11
  ---
12
-
13
- # Policy Linting
14
-
15
- GLiNER-style company-policy linter powered by [`LiquidAI/LFM2.5-Encoder-350M-bizlint-v03`](https://huggingface.co/LiquidAI/LFM2.5-Encoder-350M-bizlint-v03).
16
-
17
- Write customizable policy rules and lint a draft. The bidirectional encoder scores every token against every rule in one pass and highlights likely policy issues. It runs on the Space's CPU; the browser only sends `{text, rules}` to `/api/lint` and highlights the result, so nothing is downloaded to the visitor and no WebGPU is required.
18
-
19
- ## How it works
20
-
21
- - `bizlint.py` — one bidirectional LFM2 encoder forward over a `Policy: … Text: …` prompt, then a two-tower projection head (`rulehead.chunk`): mean-pool each rule's tokens to a 256-d vector, project every draft token to 256-d, and score each (token, rule) pair by a scaled dot product + bias through a sigmoid. The encoder runs in **f32** (linting is one forward, and int8 noise drops borderline spans). Weights load from `bizlint.gguf` (Q4_0).
22
- - `app.py` — Flask server: loads the model once, serves the page, answers `POST /api/lint` with per-token, per-rule probabilities.
23
- - `index.html` / `style.css` — the UI (with the model status row + loading bar). Word grouping, the sensitivity threshold, and highlighting run in the browser, so moving the threshold is instant and never re-runs the model.
 
7
  app_port: 7860
8
  header: mini
9
  pinned: false
10
+ short_description: Policy linting with LFM2.5 Encoder on CPU
11
  ---