misc 0 0 0

RomanKudriavskii/jeff-guard-multilang-dataset

published by @RomanKudriavskii

Alignment dataset tracked in the /datasets sub-catalog.

Lifetime downloads
172
Last 30 days
172
Likes
-
Size
58.8 MB
Created on HF
2026-10-02
Age
19 days ago

Description

jeff-guard-multilang dataset

103K-row prompt-injection detection corpus in 12 languages, built to

train and evaluate guard models that screen texts AI agents are about to

read - user tasks, tool results, emails, documents. Used to train

RomanKudriavskii/jeff-guard-multilang

(test acc 0.99, agentic-indirect recall 1.00).

Project repository with full documentation:

github.com/devpilgrin/jeff-guard-multilang

What makes it different

Agentic / indirect injection slice… See the full description on the dataset page: https://huggingface.co/datasets/RomanKudriavskii/jeff-guard-multilang-dataset.

Tags

task_categories:text-classificationlanguage:enlanguage:rulanguage:zhlanguage:delanguage:frlanguage:eslanguage:jalanguage:kolanguage:ptlanguage:itlanguage:arlanguage:hilanguage:trlicense:othersize_categories:100K<n<1Mformat:jsonmodality:tabularmodality:textlibrary:datasetslibrary:dasklibrary:polarslibrary:mlcroissantregion:usprompt-injectionprompt-injection-detectionguardrailsllm-securityjailbreakai-agentsmultilingualtext-classification

README current version from Hugging Face


license: other
language:

  • en
  • ru
  • zh
  • de
  • fr
  • es
  • ja
  • ko
  • pt
  • it
  • ar
  • hi
  • tr
    tags:
  • prompt-injection
  • prompt-injection-detection
  • guardrails
  • llm-security
  • jailbreak
  • ai-agents
  • multilingual
  • text-classification
    pretty_name: jeff-guard-multilang dataset
    size_categories:
  • 100K<n<1M
    task_categories:
  • text-classification

jeff-guard-multilang dataset

103K-row prompt-injection detection corpus in 12 languages, built to
train and evaluate guard models that screen texts AI agents are about to
read - user tasks, tool results, emails, documents. Used to train
RomanKudriavskii/jeff-guard-multilang
(test acc 0.99, agentic-indirect recall 1.00).

Project repository with full documentation:
github.com/devpilgrin/jeff-guard-multilang

What makes it different

  • Agentic / indirect injection slice (InjecAgent enhanced with paired
    clean versions, BIPIA per-paper methodology, LLMail-Inject) - attacks
    hidden in tool outputs and documents, underrepresented in public corpora.
  • 12 languages: English core + 20.4K machine-translated rows
    (ru 12 040; zh, fr, es, ja, de, ko, pt, ar, hi, tr, it), stratified with
    34% benign to prevent the spurious "non-English = attack" rule.
  • Hard-negative and obfuscation coverage: NotInject-style evals,
    sentinel Unicode evasions, neuralchemy's 29 attack categories
    (encoding, token smuggling, rag_poisoning, agent_manipulation).
  • Eval hygiene: exact global dedup, frozen val/test since v1,
    source-level provenance on every row (source field enables
    leave-one-source-out validation).

Files

File Rows Purpose
train_v2.jsonl 82 791 English training core (ShieldLM + 8 extensions)
train_ru.jsonl 12 040 Russian translations (stratified)
train_multi.jsonl 8 315 zh/fr/es/ja/de/ko/pt/ar/hi/tr/it translations
val.jsonl 8 122 validation (frozen)
test.jsonl 8 121 final EN test (frozen)
eval_ru/zh/de/fr/es/ja.jsonl 87-269 each per-language eval slices
eval_agentic_indirect.jsonl 158 agentic indirect (InjecAgent base)
eval_overtrigger_notinject.jsonl 339 hard negatives - FPR measurement
eval_neuralchemy.jsonl 942 29 attack categories
eval_sentinel.jsonl 5 161 Unicode/obfuscated threats
eval_hometurf_gandalf.jsonl 888 Lakera Gandalf attacks
eval_hometurf_mosscap.jsonl 1 000 Lakera Mosscap attacks (sample)

Schema (JSONL)

{"text": "...", "label": 1, "category": "direct_injection",
 "intent": null, "source": "spml/chatbot-prompt-injection", "language": "en"}
  • label: 0 = benign, 1 = attack
  • category: benign | direct_injection | indirect_injection | jailbreak
  • source: originating dataset (translation suffixes /ru, /zh...)
  • language: en/ru/zh/de/fr/es/ja/ko/pt/it/ar/hi/tr
  • intent: attack intent where annotated by sources (mostly null)

Loading

from datasets import load_dataset

train = load_dataset("json", data_files={
    "train": ["hf://datasets/RomanKudriavskii/jeff-guard-multilang-dataset/train_v2.jsonl",
              "hf://datasets/RomanKudriavskii/jeff-guard-multilang-dataset/train_ru.jsonl",
              "hf://datasets/RomanKudriavskii/jeff-guard-multilang-dataset/train_multi.jsonl"],
})["train"]

Sources and licenses (IMPORTANT)

This is a compilation; each source retains its own license:

Component License
ShieldLM (SPML, xTRam1, deepset, yanismiraoui, Harelix, jackhhao, JBB, chatbot-instruction-prompts) Apache-2.0 / MIT / CC-BY-4.0
TrustAIRLab in-the-wild jailbreaks CC-BY-NC-SA-4.0 (non-commercial, share-alike)
InjecAgent (UIUC), BIPIA (Microsoft), LLMail-Inject (Microsoft) MIT
neuralchemy Apache-2.0
S-Labs, NotInject, Gandalf MIT
databricks-dolly-15k CC-BY-SA-3.0 (share-alike)
jayavibhav unspecified

The translated part (train_ru, train_multi, eval_* language slices) is a
machine translation of the same rows (local ornith-1.5-35b model) and
inherits the original licenses. Commercial users must review the
CC-BY-NC-SA and CC-BY-SA components and the unspecified jayavibhav portion.

Hygiene notes and caveats

  • Exact-text dedup across all splits and eval sets; 187 potential leaks cut
    during assembly; 5 train<->test leaks found in the upstream ShieldLM were
    removed.
  • Residual risk: near-duplicates (85% 5-gram) between training rows and
    internal kit partitions (~0.4-2.4%) documented in the project repo
    (docs/02-training.md, docs/03-results.md) - test metrics of models
    trained on this corpus may be upper-bound estimates.
  • ~11.5% of selected rows were lost to translator refusals (recorded
    project-side); translation quality verified by script-ratio checks and
    spot review, not full human annotation.
  • Rejected sources with rationale: DAXAAI v8 (noisy labels), gated sets
    (XSTest, qualifire, prompt-sentinel), hackaprompt (competition format),
    LLMail levels (no per-email labels).

Citation

@misc{jeff-guard-multilang-dataset,
  author = {Kudriavsky, Roman},
  title = {jeff-guard-multilang dataset: a 103K-row multilingual prompt-injection corpus with an agentic-injection slice},
  year = {2026},
  publisher = {Hugging Face},
  howpublished = {\url{https://huggingface.co/datasets/RomanKudriavskii/jeff-guard-multilang-dataset}}
}

README history 3 revisions

Every night we snapshot the README of every dataset in the catalog. When the SHA changes we archive the new version and diff it against the last. This is the evolving thought record of the alignment-data field: what the author decided to say about the corpus, and how that framing shifted over time.

  1. 2026-10-02jeff-guard-multilang dataset v3: 103K rows, 12 languages, agentic slice, 14 e...72a1ade5.4 KB
    Loading...
  2. 2026-10-02Upload README.md with huggingface_hub17990775.4 KB
    Loading...
  3. 2026-10-02initial commita7715650 B
    Loading...

Used by abliterated models none yet

No abliterated models in our catalog have declared this dataset in their YAML metadata yet. This can mean the dataset is used but not declared, is used outside abliteration workflows, or is new. The link will populate automatically as models are indexed.

Community discussions 1 thread · 1 open · 1 comments

Threads posted by the community on Hugging Face: bug reports, questions about usage, pull requests on the README, license clarifications. Click any thread to expand and read the full conversation inline. Newest first.

  1. 2026-10-03[bot] Conversion to Parquetopen1 💬#1
    Loading...

Related datasets same stage · misc

Read further

Metadata

License
other

Download the dataset

0

Copy any of these snippets into your notebook or terminal. All three fetch directly from Hugging Face using your own credentials.

Recommended: datasets library (Python)
from datasets import load_dataset
ds = load_dataset("RomanKudriavskii/jeff-guard-multilang-dataset")
Raw snapshot (Python)
from huggingface_hub import snapshot_download
snapshot_download(repo_id="RomanKudriavskii/jeff-guard-multilang-dataset", repo_type="dataset")
git clone (requires git-lfs)
git clone https://huggingface.co/datasets/RomanKudriavskii/jeff-guard-multilang-dataset
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