Downloads · 30 days
32
37% of all-time downloads
patronus-studio/husky-sight-tool-type-classifier
husky-sight-tool-type-classifier is a text classification model from patronus-studio. Use it when you need a label for a piece of text. The card lists the license as apache-2.0.
Multilingual Tool-Type Classifier for Real-World AI Agent Security
Downloads · 30 days
32
37% of all-time downloads
All-time downloads
87
Public
Parameters
141M
1.5 GB on disk
Likes
1
Public
Click a slice to open those files.
.safetensors563 MB · 46%
From the Hugging Face model README
Multilingual Tool-Type Classifier for Real-World AI Agent Security
Read more
Husky Sight is a multilingual ModernBERT-based (mmBERT) classifier that identifies which kind of tool a request, tool call, or agent step involves. It is part of the Patronus Protect security stack and is a member of the Husky tool-analysis family, alongside Husky Paw (operation) and Husky Nose (security properties).
The model maps an input text to exactly one class:
| id | label | description |
|---|---|---|
| 0 | file | Tool operating on the local file system. |
| 1 | database | Tool operating on a database. |
| 2 | vcs | Tool operating on version control. |
| 3 | api | Tool operating on an API. |
| 4 | memory | Tool operating on persistent memory. |
| 5 | messaging | Tool operating on a messaging service. |
| 6 | web | Tool operating on the web. |
| 7 | browser | Tool operating on a browser. |
| 8 | shell | Tool operating on a shell / OS command. |
| 9 | code | Tool operating on code execution. |
| 10 | system | Tool operating on the operating system. |
| 11 | secrets | Tool operating on secrets / credentials. |
| 12 | infra | Tool operating on infrastructure (k8s, cloud). |
| 13 | unknown | Tool operating on an unidentified tool. |
Examples:
| Input | Expected class |
|---|---|
| Read the config file at /etc/app.conf | file |
| SELECT email FROM users WHERE id = 1 | database |
| Create a branch and open a pull request | vcs |
| Send a POST request to the payments API | api |
Run kubectl scale deployment web --replicas=3 | infra |
| How are you today? | unknown |
Typical downstream uses:
model.safetensors).onnx/onnx_fp16/model_fp16.onnx in this repository.int8, int8_int4_embeddings, fp16) in a separate edge repository.l2/ for efficient local runtime classification.Trained on Patronus' in-house multilingual dataset for this task, built from cleaned real-world sources plus internally generated examples. Real-world sources were judge-cleaned by content (no keyword heuristics) and contaminated rows removed.
To improve robustness the dataset includes modern obfuscation techniques:
All augmentations and regularizers are applied to positive and negative examples alike so the model keys on content rather than surface form.
Held-out test set (n = 2,914), single-label:
| Metric | Score |
|---|---|
| Accuracy | 0.957 |
| F1 (macro) | 0.957 |
| Precision (macro) | 0.957 |
| Recall (macro) | 0.957 |
Per-class F1:
| Class | F1 |
|---|---|
| database | 0.992 |
| secrets | 0.990 |
| messaging | 0.984 |
| infra | 0.981 |
| code | 0.981 |
| memory | 0.980 |
| browser | 0.977 |
| file | 0.975 |
| vcs | 0.974 |
| unknown | 0.938 |
| web | 0.936 |
| system | 0.904 |
| shell | 0.891 |
| api | 0.890 |
from transformers import pipeline
clf = pipeline("text-classification", model="patronus-studio/husky-sight-tool-type-classifier")
clf("Run kubectl scale deployment web --replicas=3")
# -> [{"label": "infra", "score": 0.98}]
The FP16 ONNX export lives under onnx/onnx_fp16; the quantized builds (int8, int8_int4_embeddings) live in the separate Husky Sight Tool Type Classifier Edge repository. Apply a
softmax over the logits and take the argmax:
from optimum.onnxruntime import ORTModelForSequenceClassification
from transformers import AutoTokenizer
model_id = "patronus-studio/husky-sight-tool-type-classifier"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = ORTModelForSequenceClassification.from_pretrained(model_id, subfolder="onnx/onnx_fp16", file_name="model_fp16.onnx")
inputs = tokenizer("Run kubectl scale deployment web --replicas=3", return_tensors="pt")
logits = model(**inputs).logits.detach().cpu().numpy()[0]
print(model.config.id2label[int(logits.argmax())])
@misc{huskysight2026,
title={Husky Sight Tool Type Classifier: Multilingual Classification for Real-World AI Agent Security},
author={Patronus Protect},
year={2026},
howpublished={\url{https://huggingface.co/patronus-studio/husky-sight-tool-type-classifier}}
}
This model is released under the Apache License 2.0.
A copy of the license is included as LICENSE in this repository.
The model is derived from jhu-clsp/mmBERT-small, which is distributed under the MIT License. The upstream copyright and permission notice are retained; the MIT terms continue to apply to the portions originating from that work.
This model is built to run inside Patronus Ark, Patronus' open-source on-device AI-security scanning library (L1 native rules → L2 NTDB cascade → L3 transformer). Ark is open source: GitHub repository · product page.
Brought to you by Patronus Protect, a local AI firewall that secures every AI interaction, including prompts, tools and documents, before it reaches your models.
Try it for free at patronus.studio.