Zero-Shot Classification
Transformers
Safetensors
English
ultrabert
feature-extraction
decision-model
system-one
semantic-router
vela
encoder
token-classification
named-entity-recognition
relation-extraction
pii-detection
hallucination-detection
content-safety
custom_code
Instructions to use vllm-sr/vela3-fast with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use vllm-sr/vela3-fast with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("zero-shot-classification", model="vllm-sr/vela3-fast", trust_remote_code=True)# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModel tokenizer = AutoTokenizer.from_pretrained("vllm-sr/vela3-fast", trust_remote_code=True) model = AutoModel.from_pretrained("vllm-sr/vela3-fast", trust_remote_code=True, device_map="auto") - Notebooks
- Google Colab
- Kaggle
Card: package size, decisions-only use, one pass per question
Browse files
README.md
CHANGED
|
@@ -36,11 +36,11 @@ tags:
|
|
| 36 |
|
| 37 |
---
|
| 38 |
|
| 39 |
-
**vela3-fast** is the 380M encoder of the Vela 3.0 family.
|
| 40 |
|
| 41 |
| | |
|
| 42 |
| --- | --- |
|
| 43 |
-
| **Parameters** | 0.38B
|
| 44 |
| **Base** | [dmis-lab/UltraBERT-380M](https://huggingface.co/dmis-lab/UltraBERT-380M), fine-tuned; its decisions come from its own distilled decision backbone, not from d3 |
|
| 45 |
| **Inputs** | Text or JSON, English, up to 32K tokens |
|
| 46 |
| **Answers** | Choice · Yes / No · Span |
|
|
@@ -66,7 +66,7 @@ vela3-fast is the default router of the Vela 3.0 family: a 380M UltraBERT encode
|
|
| 66 |
|
| 67 |
| | |
|
| 68 |
| --- | --- |
|
| 69 |
-
| **What it is** | A 0.4B encoder-only member of the family: decisions, router signals and the exact spans you name
|
| 70 |
| **How it was trained** | [dmis-lab/UltraBERT-380M](https://huggingface.co/dmis-lab/UltraBERT-380M) was first taught to decide. It was distilled on the d3 decision models' answer distributions (soft labels from the d3 teacher models), on public datasets' train splits written as decisions (for example ANLI and RAGTruth), and on synthetic decision tasks in the styles the Decision Index covers (for example home-appliance control, chord progressions and causal questions), labelled by d3 or by program and checked against every Decision Index item; four distilled checkpoints were averaged. That decision backbone is frozen, and Vela adds small gated LoRA adapters on top, one per job: spans (unsupported claims, personal data), evidence, entities, relations and router signals, with dedicated adapters for the domain, fact-check and feedback signals. Each adapter switches on only for its own questions. Router signals are trained supervised, as in Vela 2.0, on the public router datasets Vela 2.0 used (for example AEGIS 2.0, PolyGuardMix and Nemotron-Safety-Guard v3 for safety, Global-MMLU for domain, WildFeedback for feedback, DiffusionDB for modality, MASSIVE for intents); feedback also on the public router signal suite's train split. Other training data: public NER, relation, hallucination, evidence and PII datasets, plus web and document text labelled by a large teacher model. No test split and no Decision Index item is trained on; some router-signal-suite test rows also occur in public training sources, so the router table also reports the rows without that overlap. |
|
| 71 |
| **What it is good at** | Decisions; zero-shot NER; zero-shot classification; router signals above Vela 2.0 0.3B on 4 of 8 signals of the public router signal suite. Pick it as the default router. |
|
| 72 |
| **How we measure it** | Public test sets only, run through this package one request at a time with the shipped thresholds: OOD-7 (CrossNER + MIT), 26 NER sets, CoNLL04, CoNLL04 · DocRED · FewRel · CrossRE, QASPER, ACL-Verbatim, the LettuceDetect v2 test set, RAGTruth, MASSIVE (three unseen scenarios), the 13-set GLiFormer classification suite, the Decision Index 0.3 (public part, our run), the public router signal suite. Other models' numbers are as their authors report them on the same test set and metric, or scored by us on the same rows where a table says so. |
|
|
@@ -120,6 +120,29 @@ pip install -r model/requirements.txt "decision-index @ git+https://github.com/a
|
|
| 120 |
PYTHONPATH=model python -m decision_index run --engine decision_index_engine:VelaEncoderEngine --option run=model --edition 0.3 --out runs/vela3-fast --compact
|
| 121 |
```
|
| 122 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 123 |
## Evaluation
|
| 124 |
|
| 125 |
All numbers on public test sets, measured through this package with `system_one`, one request at a time and the shipped thresholds. Other models' numbers are as reported by their authors (or scored in the same harness where marked). Bold: above every comparator in the row. ✦: the best reported number at ≤500M. Full tables: [EVALUATION.md](EVALUATION.md).
|
|
@@ -250,7 +273,7 @@ Decisions run under bf16 autocast; adapter passes run in fp32, as evaluated.
|
|
| 250 |
|
| 251 |
| Model | Size | Base | Best for |
|
| 252 |
|---|---|---|---|
|
| 253 |
-
| **vela3-fast** (this model) | 0.4B | UltraBERT-380M encoder | the default router; fastest: decisions and spans
|
| 254 |
| [vela3-fast-vision](https://huggingface.co/vllm-sr/vela3-fast-vision) | 0.3B | UltraVBERT encoder | image decisions, image-grounded hallucination spans, region pointing (preview) |
|
| 255 |
| [vela3-lite](https://huggingface.co/vllm-sr/vela3-lite) | 0.8B | d3-lite | small GPUs, low latency |
|
| 256 |
| [vela3-mini](https://huggingface.co/vllm-sr/vela3-mini) | 4B | d3-mini | balanced accuracy and speed |
|
|
|
|
| 36 |
|
| 37 |
---
|
| 38 |
|
| 39 |
+
**vela3-fast** is the 380M encoder of the Vela 3.0 family. Each question is one encoder pass, and it gives decisions, router signals and the exact spans you name (entities, relations, personal data, unsupported claims, evidence), with probabilities and character offsets and no generated text.
|
| 40 |
|
| 41 |
| | |
|
| 42 |
| --- | --- |
|
| 43 |
+
| **Parameters** | 0.38B decision backbone (UltraBERT-380M, fine-tuned); 1.65B and 6.6 GB for the whole package with its gated adapters |
|
| 44 |
| **Base** | [dmis-lab/UltraBERT-380M](https://huggingface.co/dmis-lab/UltraBERT-380M), fine-tuned; its decisions come from its own distilled decision backbone, not from d3 |
|
| 45 |
| **Inputs** | Text or JSON, English, up to 32K tokens |
|
| 46 |
| **Answers** | Choice · Yes / No · Span |
|
|
|
|
| 66 |
|
| 67 |
| | |
|
| 68 |
| --- | --- |
|
| 69 |
+
| **What it is** | A 0.4B encoder-only member of the family: decisions, router signals and the exact spans you name, one encoder pass per question, at 14-28 ms a question on one GPU. English only, up to 32K tokens, text only. |
|
| 70 |
| **How it was trained** | [dmis-lab/UltraBERT-380M](https://huggingface.co/dmis-lab/UltraBERT-380M) was first taught to decide. It was distilled on the d3 decision models' answer distributions (soft labels from the d3 teacher models), on public datasets' train splits written as decisions (for example ANLI and RAGTruth), and on synthetic decision tasks in the styles the Decision Index covers (for example home-appliance control, chord progressions and causal questions), labelled by d3 or by program and checked against every Decision Index item; four distilled checkpoints were averaged. That decision backbone is frozen, and Vela adds small gated LoRA adapters on top, one per job: spans (unsupported claims, personal data), evidence, entities, relations and router signals, with dedicated adapters for the domain, fact-check and feedback signals. Each adapter switches on only for its own questions. Router signals are trained supervised, as in Vela 2.0, on the public router datasets Vela 2.0 used (for example AEGIS 2.0, PolyGuardMix and Nemotron-Safety-Guard v3 for safety, Global-MMLU for domain, WildFeedback for feedback, DiffusionDB for modality, MASSIVE for intents); feedback also on the public router signal suite's train split. Other training data: public NER, relation, hallucination, evidence and PII datasets, plus web and document text labelled by a large teacher model. No test split and no Decision Index item is trained on; some router-signal-suite test rows also occur in public training sources, so the router table also reports the rows without that overlap. |
|
| 71 |
| **What it is good at** | Decisions; zero-shot NER; zero-shot classification; router signals above Vela 2.0 0.3B on 4 of 8 signals of the public router signal suite. Pick it as the default router. |
|
| 72 |
| **How we measure it** | Public test sets only, run through this package one request at a time with the shipped thresholds: OOD-7 (CrossNER + MIT), 26 NER sets, CoNLL04, CoNLL04 · DocRED · FewRel · CrossRE, QASPER, ACL-Verbatim, the LettuceDetect v2 test set, RAGTruth, MASSIVE (three unseen scenarios), the 13-set GLiFormer classification suite, the Decision Index 0.3 (public part, our run), the public router signal suite. Other models' numbers are as their authors report them on the same test set and metric, or scored by us on the same rows where a table says so. |
|
|
|
|
| 120 |
PYTHONPATH=model python -m decision_index run --engine decision_index_engine:VelaEncoderEngine --option run=model --edition 0.3 --out runs/vela3-fast --compact
|
| 121 |
```
|
| 122 |
|
| 123 |
+
## Package size and decisions-only use
|
| 124 |
+
|
| 125 |
+
| Part | Files | Parameters | Size |
|
| 126 |
+
| --- | --- | --- | --- |
|
| 127 |
+
| Decision backbone | `model.safetensors` | 0.38B | 1.5 GB |
|
| 128 |
+
| Router and task adapters | router, domain, factcheck, feedback, feedback_df | 0.77B | 3.1 GB |
|
| 129 |
+
| Span, NER, relation and evidence adapters | span, span_sets, evidence, ner, relation | 0.50B | 2.0 GB |
|
| 130 |
+
|
| 131 |
+
The whole package is 1.65B parameters and 6.6 GB. Each question type is its own pass, and an adapter switches on only for its own question, so a full router call is 6-7 passes. For decisions only, skip the adapters; the output is identical to the full `Vela3Encoder`:
|
| 132 |
+
|
| 133 |
+
```python
|
| 134 |
+
import sys
|
| 135 |
+
from huggingface_hub import snapshot_download
|
| 136 |
+
|
| 137 |
+
path = snapshot_download("vllm-sr/vela3-fast", ignore_patterns=["*_adapter.safetensors"])
|
| 138 |
+
sys.path.insert(0, path)
|
| 139 |
+
from vela3_encoder import DecisionEncoder
|
| 140 |
+
|
| 141 |
+
m = DecisionEncoder.load(path) # decisions only: 0.38B, 1.5 GB
|
| 142 |
+
```
|
| 143 |
+
|
| 144 |
+
The `vllm_srun` runtime currently loads the whole package.
|
| 145 |
+
|
| 146 |
## Evaluation
|
| 147 |
|
| 148 |
All numbers on public test sets, measured through this package with `system_one`, one request at a time and the shipped thresholds. Other models' numbers are as reported by their authors (or scored in the same harness where marked). Bold: above every comparator in the row. ✦: the best reported number at ≤500M. Full tables: [EVALUATION.md](EVALUATION.md).
|
|
|
|
| 273 |
|
| 274 |
| Model | Size | Base | Best for |
|
| 275 |
|---|---|---|---|
|
| 276 |
+
| **vela3-fast** (this model) | 0.4B | UltraBERT-380M encoder | the default router; fastest: decisions and spans, one encoder pass per question, English, 32K |
|
| 277 |
| [vela3-fast-vision](https://huggingface.co/vllm-sr/vela3-fast-vision) | 0.3B | UltraVBERT encoder | image decisions, image-grounded hallucination spans, region pointing (preview) |
|
| 278 |
| [vela3-lite](https://huggingface.co/vllm-sr/vela3-lite) | 0.8B | d3-lite | small GPUs, low latency |
|
| 279 |
| [vela3-mini](https://huggingface.co/vllm-sr/vela3-mini) | 4B | d3-mini | balanced accuracy and speed |
|