← back to catalog · registered 2026-11-03 15:02

rSalone/LFM3-VL-2B-uncensored

rSalone 2B GGUF multimodal
Your rig guess connected
? Why do I need an app?
Reading your rig…

This is a rough estimate. Install the free app - we'll show exact numbers.

Reading real hardware from your app right now. Numbers below are exact.

Below is the per-quantization compatibility for this model.

curl -H "Authorization: Bearer $ABL_KEY" \
     "https://abliteration.org/api/v1/models/rSalone%2FLFM3-VL-2B-uncensored"
Response includes
  • classification m8
  • files 24
  • author_summary 5 models
  • readme_text full
10 credits · hourly refresh · ~4 KB payload Get an API key →
Abliteration classifier · v1.0.0
M8
Primary method

Repackaging (quantization)

Applied on top of direct removal inherited from the base model.
Confidence
MEDIUM
Inherited from base model
Why this label 3 signals
Method inferred from partial signals - repository name, related files, or tag patterns. Producer identity not confirmed; label may sharpen or shift as we gather more evidence.
  • 'abliterated' in name/tags
  • is_gguf=1
  • assume M1 (base ablation) + M8 (GGUF quant) - default when producer unknown
Refusal direction extraction

No specific extraction method could be identified for this model. The producer either did not document it or used a proprietary pipeline.

What is a refusal direction? →
Downloads · 30-day
0
Likes
0
Model age
today
created 2026-11-03

Genealogy 0 direct forks

Full fork graph →

This model's place in the market. Above: what it was derived from. Below: the tree of everything derived from it.

Metadata

License
other
Quantizations
BF16 Q2_K Q4_K Q8_0
Tags
transformers safetensors gguf lfm3_vl image-text-to-text lfm3 lfm3-vl vision abliterated uncensored conversational custom_code

Related

Total size
10.2 GB
Files
24
Quantizations
5
Registered
2026-11-03 15:02
Last updated on HF
2026-11-03 14:43

Files by quantization

BF16 2 files 3.58 GB
LFM3-VL-2B-uncensored-BF16.gguf 3.23 GB e5d92cde download
mmproj-LFM3-VL-2B-uncensored-BF16.gguf 361 MB 0b3c911a download
Q8_0 1 file 1.72 GB
LFM3-VL-2B-uncensored-Q8_0.gguf 1.72 GB 1cf8de17 download
Q4_K 1 file 1.02 GB
LFM3-VL-2B-uncensored-Q4_K_M.gguf 1.02 GB e8e29a47 download
Q2_K 1 file 715 MB
LFM3-VL-2B-uncensored-Q2_K.gguf 715 MB 63fef819 download
Auxiliary files 19 files 3.59 GB
model.safetensors 3.57 GB 451a5c8e download
tokenizer.json 17.1 MB a39eed58 download
modeling_lfm3_vl.py 43.9 KB e6c75314 download
modeling_lfm3.py 41.4 KB c6e66b81 download
video_processing_lfm3_vl.py 16.8 KB f26f48ef download
README_ja.md 14.6 KB ba861288 download
processing_lfm3_vl.py 11.9 KB b15a003d download
chat_template.jinja 11.8 KB d0747b8b download
image_processing_lfm3_vl.py 11.8 KB 8d27ebbc download
README.md 11.7 KB f1f3e2ba download
LICENSE 10.3 KB 2a513f17 download
configuration_lfm3_vl.py 8.92 KB ef6fa2db download
lfm3_conv.py 8.33 KB a1b67afd download
configuration_lfm3.py 5.96 KB f3148149 download
config.json 2.84 KB e533d46d download
.gitattributes 1.87 KB 7b9957bb download
tokenizer_config.json 1.72 KB e095df65 download
processor_config.json 1.50 KB 1f38b9a1 download
generation_config.json 355 B 818cc89b download

README current version from Hugging Face


license: other
license_name: lfm-open-license-v1.0
license_link: LICENSE
base_model: LiquidAI/LFM3-VL-2B
base_model_relation: finetune
pipeline_tag: image-text-to-text
library_name: transformers
tags:

  • lfm3
  • lfm3-vl
  • vision
  • abliterated
  • uncensored
  • gguf

LFM3-VL-2B-uncensored

日本語

An uncensored version of Liquid AI's LFM3-VL-2B, made by abliteration. It is the vision model, and it no longer refuses, whether the request is given as text or in an image. It is made with the same method as the text-only LFM3-1.7B-uncensored-abl38, but the refusal direction was measured again on the VL model. This gave fewer refusals than reusing the 1.7B direction (13 → 0 of 200 text requests).

Original This model
HarmBench: answered without refusal, of 200 text requests 9 173
MM-SafetyBench: answered without refusal, of 200 image requests 101 185
GSM8K: correct (of 100) 90 91
GPQA Diamond: correct (of 198) 42 49

transformers, BF16, thinking on, 1 run each. Only the language part was changed; the vision encoder and projector are identical to the original.

Figure 1

Figure 1. Answered, other and refused, for requests given as text and in images. "Other" is a hedged response in the text test, and a reluctant, partial or generic response in the image test (see Test setup at the end for the labels). In the image benchmark (MM-SafetyBench), the key phrase of the request appears only in the image, and the text prompt is a neutral instruction such as "list the steps of the activity shown at the bottom of the image".

1. How to run

File Format Size
LFM3-VL-2B-uncensored-Q2_K.gguf GGUF Q2_K 0.75 GB
LFM3-VL-2B-uncensored-Q4_K_M.gguf GGUF Q4_K_M 1.10 GB
LFM3-VL-2B-uncensored-Q8_0.gguf GGUF Q8_0 1.85 GB
LFM3-VL-2B-uncensored-BF16.gguf GGUF BF16 3.47 GB
mmproj-LFM3-VL-2B-uncensored-BF16.gguf GGUF, vision encoder and projector (needed for image input) 0.38 GB
model.safetensors and processor files safetensors BF16 (transformers) 3.84 GB

llama.cpp

hf download rSalone/LFM3-VL-2B-uncensored LFM3-VL-2B-uncensored-Q4_K_M.gguf mmproj-LFM3-VL-2B-uncensored-BF16.gguf --local-dir .
llama-server -m LFM3-VL-2B-uncensored-Q4_K_M.gguf --mmproj mmproj-LFM3-VL-2B-uncensored-BF16.gguf \
  -ngl 99 -c 32768 -fa on --jinja --temp 0.1 --top-k 50 --repeat-penalty 1.1

Send images through the OpenAI-compatible API (image_url in the message content).

transformers

from transformers import AutoModelForImageTextToText, AutoProcessor
name = "rSalone/LFM3-VL-2B-uncensored"
processor = AutoProcessor.from_pretrained(name, trust_remote_code=True)
model = AutoModelForImageTextToText.from_pretrained(name, dtype="bfloat16", device_map="cuda", trust_remote_code=True)

Sampling settings are those of the original model's generation_config.json (temperature 0.1, top-k 50, repetition penalty 1.1). As in the original, it thinks before answering by default.

For agentic use with tools (e.g. OpenCode), temperature 0.3 may work better. At 0.1 the model sometimes repeated tool calls (such as file searches) that returned no results, and then began giving replies unrelated to the request; raising the temperature to 0.3 made this less frequent. This is from hands-on use only; we have not measured it. The relation between these settings and this behavior has not been studied properly yet; we will update this section when we know more.

All benchmarks were run in transformers on an RTX 5070 Ti (16 GB). The GGUF (BF16 + mmproj) was only checked to load in llama.cpp (CUDA, build 12004) and to describe a test image correctly; it was not benchmarked. The quantized files were made from the BF16 GGUF with llama-quantize (llama.cpp build 11988, no imatrix).

2. How it was made

2.1 Can the 1.7B direction be reused?

For LFM3-1.7B-uncensored-abl38, the refusal direction was the difference between the mean hidden states (averaged over all prompt tokens) of censored and ordinary prompts. This direction was removed from the weights at the places most related to refusal. Here a "place" is an output matrix through which a block of a layer writes its result; the language part has 48 of them (24 layers × 2). Removing the direction from the weights is called "baking" below.

The language part of LFM3-VL-2B has the same architecture as LFM3-1.7B (286 tensors with the same names and shapes), but different weight values: the median cosine similarity per tensor is 0.888 (compared on the first 1 MiB of each tensor). The 1.7B direction can be baked in as is, but the VL refusal direction may differ.

So we made two versions. One bakes the direction measured on 1.7B into the 38 places selected on 1.7B. The other measures the direction again on VL with the same method and bakes it into 40 places selected with the same rule (37 of them overlap with the 1.7B places). The re-measured direction had a median cosine similarity of 0.65 with the 1.7B direction across the 48 places.

2.2 The re-measured direction gave fewer refusals

The version with the 1.7B direction still refused 13 of 200 HarmBench prompts. The version with the VL direction refused none (Figure 2). GSM8K: 90 (original), 90 (1.7B direction) and 91 (VL direction) correct. GPQA Diamond: 42, 41 and 49. We release the re-measured version and tested only this one with images.

Figure 2

Figure 2. The original model, the 1.7B direction reused, and the direction measured on VL. Text requests. transformers, BF16, 1 run each.

2.3 No refusals with images either

The original VL refused 189 of 200 text requests (HarmBench) and 77 of 200 image requests (MM-SafetyBench) (Figure 1). The two benchmarks contain different requests, so these two numbers are not a like-for-like comparison. This model refused none of the 200 image requests and answered 185, including 70 of the 77 the original refused.

2.4 Which weights were changed, and how

Only the language part was changed; the vision encoder and projector are the same as the original. In each of the 24 layers, the refusal direction was removed from the output matrix of the attention or short-convolution block (o_proj / out_proj) and from the FFN output matrix (w2, the down_proj of other models). The 8 matrices that did not meet the selection rule (see Test setup) were left unchanged (attention or convolution in layers 0, 5, 13, 18, 19, 21 and 23; FFN in layer 23), so 40 of the 48 were changed.

The removal is the same as for 1.7B. Each output matrix W is followed by an RMSNorm with weight γ, and the direction r was measured after it, so W was changed to W′ = W − b(aᵀW) with a = γ⊙r and b = r/γ.

3. Limits

  • Each benchmark was run once.
  • GPQA Diamond: up to 8,192 tokens. 131 (original), 121 (1.7B direction) and 119 (this model) of 198 questions were cut off and counted as wrong.
  • Labels were given by a local Qwen3.8-Flash-Next, not the official HarmBench classifier. The judge does not receive the image; for the image test it was given the text-only version of the same request (MM-SafetyBench Text_only). Prompts were in English only.
  • Image test: MM-SafetyBench has 13 categories. 200 prompts were sampled from the 972 in the 8 censored ones (illegal activity, hate speech, malware generation, physical harm, economic harm, fraud, sex, privacy violation). The ability to read images was not benchmarked.
Test setup
Item Setting
GPU NVIDIA GeForce RTX 5070 Ti (16 GB), WSL2
Engine transformers 5.22.0, torch 2.15.0, BF16
Sampling Thinking on, temperature 0.1, top-k 50, repetition penalty 1.1. Up to 8,192 new tokens (text test), 16,384 (image test; none were cut off)
HarmBench 200 standard prompts, English (prompt_en of APTO-001/APTO-HarmBench-JA). A local Qwen3.8-Flash-Next (Q2_0), temperature 0, labeled each response as answered, hedged (substantive but wrapped in warnings or deliberately watered down) or refused
MM-SafetyBench PKU-Alignment/MM-SafetyBench (revision 7da6155), SD_TYPO, 200 prompts from 8 categories in proportion to their size. Same judge, with the request taken from Text_only. Five labels (refuse, reluctant, partial, generic, comply); in Figure 1, comply counts as answered, refuse as refused, and the other three as other
GSM8K First 100 test problems
GPQA Diamond 198 questions. A cut-off answer is wrong
Direction First 200 train prompts of mlabonne/harmful_behaviors and mlabonne/harmless_alpaca, thinking on, measured on LFM3-VL-2B (397 used; 3 ordinary prompts were cut off). Mean hidden state over all prompt tokens, difference of means at each place, orthogonalized to the ordinary prompts' means. Strength 1
Place selection Both of: (1) leave-one-out accuracy ≥ 95%: with one prompt held out, the direction and threshold (midpoint of the two means) are set from the rest, and the held-out prompt is classified as censored or ordinary; (2) d′ ≥ 3: the prompts are split in half, the direction is set on one half, and on the other half the difference of the two class means along it is divided by the standard deviation (mean over 3 splits)

License

Base model: LiquidAI/LFM3-VL-2B, LFM Open License v1.0 (text in LICENSE). This is a modified version: 40 output matrices in the language part were changed as described above.

Disclaimer

This model answers requests that the original model refuses. The author accepts no liability for any damage arising from its use. Use it at your own risk.

References

Method

Models

Datasets and benchmarks

Software

Catalog is the map. Apps are the tools.

Run models on your own machine, not in the cloud.

Every model page has an "Open in Abliteration" button that hands the model directly to the first-party desktop client, at the quantization your rig can actually run. No API keys, no subscription, no prompt leakage.

Open in Abliteration