Views
No views yet
[!NOTE] 💻 Demos: Try this fine-tuned model running in a CPU-only Hugging Face space: Zero-shot policy linting** — check text against your company's rules, written as free text. It scores every token against every rule in one pass.
⚠️ Loads custom code viatrust_remote_code=True(the model wraps atrust_remote_codeencoder).
pip install torch transformers1import sys
2from pathlib import Path
3
4import torch
5from transformers import AutoTokenizer
6
7repo = Path(".")
8sys.path.insert(0, str(repo))
9
10from train_bizlint_v02 import Lfm2BidirForRuleMatching
11
12rules = [
13 "Flag direct mentions of competitor companies.",
14 "Flag promises about guaranteed financial returns.",
15]
16text = "Our product is better than AcmeAI and will guarantee 30% savings."
17
18prefix = "Policy:\n" + "\n".join(f"- {rule}" for rule in rules) + "\n\nText:\n"
19full_text = prefix + text
20
21tokenizer = AutoTokenizer.from_pretrained(repo, trust_remote_code=True)
22model = Lfm2BidirForRuleMatching.from_pretrained(repo, trust_remote_code=True).eval()
23
24enc = tokenizer(full_text, return_offsets_mapping=True, return_tensors="pt")
25offsets = enc.pop("offset_mapping")[0].tolist()
26
27rule_pool = torch.zeros(1, len(rules), len(offsets))
28pos = len("Policy:\n")
29
30for rule_idx, rule in enumerate(rules):
31 start = pos + 2
32 end = start + len(rule)
33 token_idxs = [
34 i for i, (a, b) in enumerate(offsets)
35 if a < end and b > start and a != b
36 ]
37 rule_pool[0, rule_idx, token_idxs] = 1 / len(token_idxs)
38 pos = end + 1
39
40with torch.no_grad():
41 probs = model(**enc, rule_pool=rule_pool)["logits"].sigmoid()[0]
42
43text_start = len(prefix)
44
45for token_idx, (a, b) in enumerate(offsets):
46 if b <= text_start or a == b:
47 continue
48
49 token_text = full_text[a:b]
50 for rule_idx, prob in enumerate(probs[token_idx]):
51 if prob.item() > 0.5:
52 print(f"{token_text!r} -> {prob.item():.3f}: {rules[rule_idx]}")1@article{liquidAI2026Encoders,
2 author = {Liquid AI},
3 title = {LFM2.5-Encoders: Fast at Long Context, Even on CPU},
4 journal = {Liquid AI Blog},
5 year = {2026},
6 note = {www.liquid.ai/blog/lfm2-5-encoders},
7}