/ Модель

Характеристики

Контекст
512 токенов
Параметры
137 млн
Лицензия
MIT
Архитектура
bert · dense
Базовая модель
gte-base
Библиотека
sentence-transformers
Опубликована
20 авг 2026

cmdcaliper

ЭмбеддингиТекст → embedding7 профессий

Модель создаёт эмбеддинги Linux-команд и Bash для семантического поиска, сравнения и группировки по назначению.

203скачиваний за 30 дней0лайковвеса обновлены17 сен 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Эмбеддинги» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Ameya-Kawade/cmdcaliper — дообученная модель Sentence Transformers на базе thenlper/gte-base, созданная для анализа Linux-команд и фрагментов Bash. Архитектура BERT использует mean pooling и L2-нормализацию, формируя плотные эмбеддинги размерностью 768; в метаданных указаны 136,7 млн параметров и контекст до 512 токенов. Модель предназначена для поиска семантически близких команд, группировки по намерению, выявления функциональных дубликатов и поиска сходства с известными вредоносными или безопасными командами.

Обучение проводилось с Multiple Negatives Ranking Loss на размеченных парах Linux-команд из разных категорий, включая файловые операции, процессы, сеть, управление пакетами, мониторинг и команды, связанные с безопасностью. В README приведены результаты retrieval-оценки на 500 отложенных парах: MRR@10 около 0,8847, Top@10 около 0,9526 и точность 3-NN 88,41%. Модель оптимизирована для команд shell и Bash, а не для обычных предложений или других языков программирования. Указанная лицензия — MIT.

Сценарии применения

  • поиск команд, семантически похожих на заданную Linux-команду
  • группировка команд Bash по намерению
  • поиск функционально эквивалентных команд с разным синтаксисом
  • сопоставление команды с известными вредоносными или безопасными примерами
  • выявление необычных команд по эмбеддингам

Ограничения

Модель слабо различает команды класса DoS; в README также отмечены недостаточное внутриклассовое сходство и прохождение лишь 10 из 15 проверок на сложных отрицательных примерах. Она оптимизирована для shell-команд и Bash, поэтому не предназначена для обычных предложений или кода на других языках.

Для каких профессий подходит7

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Также подходит для

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

cmdcaliper — Linux Command Intent & Semantic Similarity Engine

This model is a fine-tuned version of thenlper/gte-base, a 110M parameter BERT-based encoder, specifically optimised for Linux command intent detection and semantic similarity.

It follows the methodology of the CmdCaliper research paper (Empirical Software Engineering & Cybersecurity). The model maps Linux shell commands and Bash snippets to a 768-dimensional dense vector space where semantically equivalent commands are clustered together, while syntactically similar but semantically distinct commands (e.g. cat /etc/passwd vs cat /etc/shadow) are pushed apart.


Model Details

Model Description

PropertyValue
Model TypeSentence Transformer (BERT-base)
Base Modelthenlper/gte-base
ArchitectureBertModel → Mean Pooling → L2 Normalise
Max Sequence Length128 tokens
Output Dimensionality768 dimensions
Similarity FunctionCosine Similarity
Training ObjectiveInfoNCE / Multiple Negatives Ranking Loss (MNRL)
InfoNCE Temperature (τ)0.05
LanguageEnglish (Linux / Bash commands)
LicenseMIT

Full Model Architecture

SentenceTransformer(
  (0): Transformer({'max_seq_length': 128, 'architecture': 'BertModel'})
  (1): Pooling({'embedding_dimension': 768, 'pooling_mode': 'mean'})
  (2): Normalize({})
)

Training Details

Training Objective

The model was trained using InfoNCE (Multiple Negatives Ranking Loss) with a collision-free batch sampler that enforces:

  • No anchor duplicates in a batch.
  • No positive duplicates in a batch.
  • No cross-collision between positives and anchors of other pairs.
  • Bidirectional partner protection: (a, p) and (p, a) never co-appear in the same batch.
  • Balanced positive indices across batches.
  • Soft category balancing via square-root inverse weighting.

Training Data

Fine-tuned on a curated dataset of Linux command positive pairs (merged_positive_pairs_clean.json) covering diverse categories including:

  • File system operations
  • Process management
  • Network operations
  • Security-sensitive commands (privilege escalation, reverse shells, anti-forensics)
  • Package management
  • System monitoring

Train / Eval split: 95% / 5%

Hyperparameters

ParameterValue
Epochs3
Batch size (per device)64
Learning rate2e-5
Weight decay0.01
Warmup ratio0.05
Max gradient norm1.0
PrecisionFP32 (strict)

Framework Versions

FrameworkVersion
Python3.12
Sentence Transformers5.4.1
Transformers5.0.0
PyTorch2.10.0+cu128
Tokenizers0.22.2

Performance

Evaluated on a retrieval task over 500 held-out command pairs:

MetricScore
MRR@10≈ 0.8847 (CmdCaliper-base target)
Top@10≈ 0.9526 (CmdCaliper-base target)
3-NN Accuracy88.41%
3-NN Precision (Malicious)87.83%
3-NN F1 Score85.23%

Usage

Direct Usage (Sentence Transformers)

pip install -U sentence-transformers
from sentence_transformers import SentenceTransformer, util

# Load model directly from Hugging Face Hub
model = SentenceTransformer("Ameya-Kawade/cmdcaliper")

# Commands to compare
commands = [
    "ls -la /home",
    "ls --all -l /home",         # semantically identical
    "docker ps -a",
    "docker container ls --all", # semantically identical
    "chmod 755 script.sh",
    "chmod u+s /bin/bash",       # semantically DIFFERENT (privilege escalation)
]

embeddings = model.encode(commands)
print("Embedding shape:", embeddings.shape)
# (6, 768)

# Pairwise similarity
similarities = model.similarity(embeddings, embeddings)
print(similarities)

Security Intent Detection Example

from sentence_transformers import SentenceTransformer, util

model = SentenceTransformer("Ameya-Kawade/cmdcaliper")

pairs = [
    ("find /var/log -type f -name '*.log'", "ls -lh /var/log/syslog"),           # HIGH similarity
    ("apt-get install nginx",               "apt-get remove nginx"),              # MED similarity
    ("cat /etc/passwd",                     "cat /etc/shadow"),                   # LOW (Hard-Neg)
    ("kill -9 18452",                       "kill -9 1"),                         # LOW (Hard-Neg)
]

for cmd1, cmd2 in pairs:
    e1 = model.encode(cmd1)
    e2 = model.encode(cmd2)
    sim = util.cos_sim(e1, e2).item()
    print(f"{sim:.4f}  {cmd1[:40]:40s} <->  {cmd2[:40]}")

Intended Uses & Limitations

Intended Uses

  • Command intent classification: cluster commands by semantic intent (file ops, network, privilege escalation, etc.).
  • Semantic deduplication: identify functionally equivalent commands written in different syntax.
  • Security-aware retrieval: retrieve the most similar known-malicious or known-benign commands for a given query command.
  • Anomaly detection: embed command sequences and flag outliers.

Out-of-Scope Uses

  • Natural language sentences (the model is optimised for shell commands and Bash syntax).
  • Code in languages other than Bash/shell.

Known Limitations

  • Weak on Denial-of-Service (DoS) class discrimination (known gap).
  • Intra-class cosine similarity (mu_intra ~ 0.038) is lower than target (>= 0.300); a follow-up training run with a hardened triplet loss and higher temperature (tau = 0.08) is planned.
  • Hard-negative traps passed: 10/15 (66.7%); target is >= 14/15.

Citation

If you use this model, please cite the original CmdCaliper paper:

@misc{cmdcaliper2024,
  title   = {CmdCaliper: A Semantic-Aware Command-Line Embedding Model and Dataset for Security Research},
  year    = {2024},
  url     = {https://arxiv.org/abs/2411.01176}
}

Model Card Authors

Ameya Kawade — Hugging Face

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · sentence-transformers

Можно запустить

Подбираем GPU…

Класс архитектуры
BertModel
Ревизия весов
b1a2ac9

0 моделей