Downloads · 30 days
21
2% of all-time downloads
KRLabsOrg/tinylettuce-ettin-17m-en-bioasq
tinylettuce-ettin-17m-en-bioasq is a token classification model from KRLabsOrg. Use it when you need labels on individual words, such as names. It is set up for transformers. The card lists the license as mit.
<p align="center" <img src="https://github.com/KRLabsOrg/LettuceDetect/blob/dev/assets/tinytinylettuce.png?raw=true" alt="TinyLettuce" width="400"/ </p
Downloads · 30 days
21
2% of all-time downloads
All-time downloads
1.1K
Public
Parameters
16.9M
67.5 MB on disk
Likes
9
Public
Click a slice to open those files.
.safetensors67.5 MB · 95%
From the Hugging Face model README
Model Name: tinylettuce-ettin-17m-en-bioasq
Organization: KRLabsOrg
Github: https://github.com/KRLabsOrg/LettuceDetect
Ettin encoders: https://arxiv.org/pdf/2507.11412
TinyLettuce is a lightweight token‑classification model that flags unsupported spans in answers given context (span aggregation performed downstream). Built on the 17M Ettin encoder, it targets real‑time CPU inference and low‑cost domain fine‑tuning with synthetic data.
Trained on our synthetic dataset, this 17M variant achieves 90.87% F1 on the held‑out synthetic test set (beating large LLM judges, like GPT-OSS-120), proving the effectiveness of our domain‑specific hallucination data generation pipeline.
Synthetic (domain‑specific):
| Model | Parameters | Precision (%) | Recall (%) | F1 (%) | Hardware |
|---|---|---|---|---|---|
| TinyLettuce-17M | 17M | 84.56 | 98.21 | 90.87 | CPU |
| TinyLettuce-32M | 32M | 80.36 | 99.10 | 88.76 | CPU |
| TinyLettuce-68M | 68M | 89.54 | 95.96 | 92.64 | CPU |
| GPT-5-mini | ~200B | 71.95 | 100.00 | 83.69 | API/GPU |
| GPT-OSS-120B | 120B | 72.21 | 98.64 | 83.38 | GPU |
| Qwen3-235B | 235B | 66.74 | 99.32 | 79.84 | GPU |
Notes: “Synthetic” metrics reflect generated data; absolute scores depend on post‑processing thresholds and domain.
First install lettucedetect:
pip install lettucedetect
Then use it:
from lettucedetect.models.inference import HallucinationDetector
detector = HallucinationDetector(
method="transformer",
model_path="KRLabsOrg/tinylettuce-ettin-17m-en-v1",
)
spans = detector.predict(
context=[
"Ibuprofen is an NSAID that reduces inflammation and pain. The typical adult dose is 400-600mg every 6-8 hours, not exceeding 2400mg daily."
],
question="What is the maximum daily dose of ibuprofen?",
answer="The maximum daily dose of ibuprofen for adults is 3200mg.",
output_format="spans",
)
print(spans)
# Output: [{"start": 51, "end": 57, "text": "3200mg"}]
If you use the model or the tool, please cite the following paper:
@misc{Kovacs:2025,
title={LettuceDetect: A Hallucination Detection Framework for RAG Applications},
author={Ádám Kovács and Gábor Recski},
year={2025},
eprint={2502.17125},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2502.17125},
}