Skill Tracer
Skills › Scientific Agent Skills › transformers

transformers

skill · 214 lines · Apache-2.0 license · skills/transformers/SKILL.md

The facts

Its description

Hugging Face Transformers for loading Hub models, running pipeline inference, text generation, and Trainer fine-tuning on NLP, vision, audio, and multimodal tasks. Applies when working with AutoModel, pipelines, tokenizers, generation configs, or TrainingArguments within Transformers.

The description the agent reads to decide when to use it.

From its settingsline 3

Tools it may use, or may not

allowed-tools: Read Write Edit Bash

Tools it may use while it runs without asking you first.

From its settingsline 4

Runs scripts

bin/python

Scripts the text names. Found by matching words, so treat them as pointers.

Found by matching wordsline 25

Files it mentions

references/models.md, references/review.md, references/pipelines.md, references/generation.md (first 5 of 12 lines)

Files the text names, such as ones to read or write. Found by matching words, so treat them as pointers.

Found by matching wordsline 30 line 32 line 106 line 114 line 124

Licence

Apache-2.0 license, from the skill file

The terms its author shares it under, which let it be shown here.

From its settingsline 5 licence text

Other settings

compatibility: Requires Python 3.10+, PyTorch 2.5+, and transformers 5.18.0; optional librosa 1.0 requires Python 3.12+. Network access for Hub downloads. Gated or private Hub models need an HF token (`hf auth login` or `HF_TOKEN`). metadata: version: "1.5" last-reviewed: "2026-10-01" skill-author: "K-Dense Inc."

More settings at the top of the file, shown as written.

From its settingsline 6 line 7
Other files in this skill (6) Close

The text

Open on GitHub

Most marks come from matching words in the file, so treat them as pointers.

1---
2name: transformers
3description: Hugging Face Transformers for loading Hub models, running pipeline inference, text generation, and Trainer fine-tuning on NLP, vision, audio, and multimodal tasks. Applies when working with AutoModel, pipelines, tokenizers, generation configs, or TrainingArguments within Transformers.
4allowed-tools: Read Write Edit Bash
5license: Apache-2.0 license
6compatibility: Requires Python 3.10+, PyTorch 2.5+, and transformers 5.18.0; optional librosa 1.0 requires Python 3.12+. Network access for Hub downloads. Gated or private Hub models need an HF token (`hf auth login` or `HF_TOKEN`).
7metadata:
8 version: "1.5"
9 last-reviewed: "2026-10-01"
10 skill-author: "K-Dense Inc."
11---
13# Transformers

Transformers

Raw lines 1 to 14
15## Overview
17The Hugging Face Transformers library provides access to thousands of pre-trained models for tasks across NLP, computer vision, audio, and multimodal domains. Use this skill to load models, perform inference, and fine-tune on custom data.

Overview

The Hugging Face Transformers library provides access to thousands of pre-trained models for tasks across NLP, computer vision, audio, and multimodal domains. Use this skill to load models, perform inference, and fine-tune on custom data.

Raw lines 15 to 18
19## Installation
21Targets **Transformers 5.18.0**, verified against its released source on 2026-10-01. Native CPU checks use Python 3.11, Torch 2.14.1, Datasets 5.0.1, Accelerate 1.15.0, PEFT 0.21.2, and Hub 1.33.0. The Torch extra requires Torch >=2.5. Install in a dedicated environment:
23```bash
24uv venv --python 3.11 .venv-transformers
25uv pip install --python .venv-transformers/bin/python "transformers[torch]==5.18.0" "torch==2.14.1" "huggingface-hub==1.33.0" "datasets==5.0.1" "accelerate==1.15.0" "peft==0.21.2"
26```
28Use `.venv-transformers/Scripts/python.exe` on Windows. Select an appropriate Torch build for the target hardware before installation. Hub 2.1.1 is newer, but Datasets 5.0.1 requires Hub <2; upgrading every package independently makes this training stack unsatisfiable. The separate `esm` SDK currently requires Transformers <5 and belongs in another environment.
30Optional dependencies (install only for the selected workflow): Pillow 12.3.0 for images; torchvision matched to Torch and timm 1.0.30 for models that require them; librosa 1.0.0 and soundfile 0.14.0 for audio preprocessing (librosa requires Python >=3.12); FFmpeg for encoded audio file inputs; pytesseract plus Tesseract for OCR document pipelines; bitsandbytes 0.50.2 for supported quantization backends. See [model loading](references/models.md) before choosing precision or quantization.
32Verification used tiny random models, synthetic input, and local save/reload only. Hub pretrained examples throughout this skill are **illustrative**: public checkpoint metadata and configurations were reviewed, but no weights or datasets were downloaded and no hosted inference or uploads were run. Optional export/distributed/hardware paths are source-checked, not end-to-end tested. See [review evidence](references/review.md).
34Check your version:
36```python
37import transformers
38print(transformers.__version__)
39```

Installation

Targets Transformers 5.18.0, verified against its released source on 2026-10-01. Native CPU checks use Python 3.11, Torch 2.14.1, Datasets 5.0.1, Accelerate 1.15.0, PEFT 0.21.2, and Hub 1.33.0. The Torch extra requires Torch >=2.5. Install in a dedicated environment:

uv venv --python 3.11 .venv-transformers
uv pip install --python .venv-transformers/bin/python "transformers[torch]==5.18.0" "torch==2.14.1" "huggingface-hub==1.33.0" "datasets==5.0.1" "accelerate==1.15.0" "peft==0.21.2"

Use .venv-transformers/Scripts/python.exe on Windows. Select an appropriate Torch build for the target hardware before installation. Hub 2.1.1 is newer, but Datasets 5.0.1 requires Hub <2; upgrading every package independently makes this training stack unsatisfiable. The separate esm SDK currently requires Transformers <5 and belongs in another environment.

Optional dependencies (install only for the selected workflow): Pillow 12.3.0 for images; torchvision matched to Torch and timm 1.0.30 for models that require them; librosa 1.0.0 and soundfile 0.14.0 for audio preprocessing (librosa requires Python >=3.12); FFmpeg for encoded audio file inputs; pytesseract plus Tesseract for OCR document pipelines; bitsandbytes 0.50.2 for supported quantization backends. See model loading before choosing precision or quantization.

Verification used tiny random models, synthetic input, and local save/reload only. Hub pretrained examples throughout this skill are illustrative: public checkpoint metadata and configurations were reviewed, but no weights or datasets were downloaded and no hosted inference or uploads were run. Optional export/distributed/hardware paths are source-checked, not end-to-end tested. See review evidence.

Check your version:

import transformers
print(transformers.__version__)
Raw lines 19 to 40
Runs code bin/python :25
Names a skill esm :28
Reads a file references/models.md :30
Reads a file references/review.md :32
41## Authentication
43Many models on the Hugging Face Hub are gated or private. Authenticate before loading them.
45**Recommended:** CLI login (uses `$HF_TOKEN_PATH`, defaulting to `$HF_HOME/token`, normally `~/.cache/huggingface/token`):
47```bash
48hf auth login
49```
51**Python:**
53```python
54from huggingface_hub import login
55login() # Interactive prompt; do not hardcode tokens in scripts
56```
58**Servers / CI:** set `HF_TOKEN` in the environment (never commit tokens to git or shell profiles):
60```bash
61export HF_TOKEN="..." # Read token from a secret manager, not source code
62```
64Get tokens at: https://huggingface.co/settings/tokens
66**Security:** Never paste tokens into notebooks, repos, or shared configs. Prefer `hf auth login` over exporting tokens in `.bashrc` or `.zshrc`.
68Use the narrowest token scope that works: `read` for private or gated model downloads, `write` only for uploads. If a long-running environment should not send the stored token on every Hub request, set `HF_HUB_DISABLE_IMPLICIT_TOKEN=1` and pass a token only where authentication is required.

Authentication

Many models on the Hugging Face Hub are gated or private. Authenticate before loading them.

Recommended: CLI login (uses $HF_TOKEN_PATH, defaulting to $HF_HOME/token, normally ~/.cache/huggingface/token):

hf auth login

Python:

from huggingface_hub import login
login()  # Interactive prompt; do not hardcode tokens in scripts

Servers / CI: set HF_TOKEN in the environment (never commit tokens to git or shell profiles):

export HF_TOKEN="..."  # Read token from a secret manager, not source code

Get tokens at: https://huggingface.co/settings/tokens

Security: Never paste tokens into notebooks, repos, or shared configs. Prefer hf auth login over exporting tokens in .bashrc or .zshrc.

Use the narrowest token scope that works: read for private or gated model downloads, write only for uploads. If a long-running environment should not send the stored token on every Hub request, set HF_HUB_DISABLE_IMPLICIT_TOKEN=1 and pass a token only where authentication is required.

Raw lines 41 to 69
70## Transformers v5
72Transformers v5 is **PyTorch-only** (TensorFlow and JAX backends were removed). For upgrades from v4, see the [v5 migration guide](https://github.com/huggingface/transformers/blob/v5.18.0/MIGRATION_GUIDE_V5.md). Transformers 5.18.0 accepts Hub >=1.31,<3; preserve the tighter constraint of Datasets when training.
74**Gated or custom architectures:** accept the model license on the Hub, then load with `trust_remote_code=True` only when required custom code has been reviewed; pin its full immutable commit with `revision` (and `code_revision` for a separate code repository). Gating and custom code are independent: a gated built-in architecture does not require remote code.
76**Cache location:** set `HF_HOME` for all Hugging Face caches, or `HF_HUB_CACHE` just for Hub files. Use `HF_HUB_OFFLINE=1` only after required model snapshots are already cached.

Transformers v5

Transformers v5 is PyTorch-only (TensorFlow and JAX backends were removed). For upgrades from v4, see the v5 migration guide. Transformers 5.18.0 accepts Hub >=1.31,<3; preserve the tighter constraint of Datasets when training.

Gated or custom architectures: accept the model license on the Hub, then load with trust_remote_code=True only when required custom code has been reviewed; pin its full immutable commit with revision (and code_revision for a separate code repository). Gating and custom code are independent: a gated built-in architecture does not require remote code.

Cache location: set HF_HOME for all Hugging Face caches, or HF_HUB_CACHE just for Hub files. Use HF_HUB_OFFLINE=1 only after required model snapshots are already cached.

Raw lines 70 to 77
78## Quick Start
80Use the Pipeline API for fast inference without manual configuration:
82```python
83from transformers import pipeline
85# Text generation (prefer max_new_tokens for causal LMs)
86generator = pipeline("text-generation", model="Qwen/Qwen2.5-1.5B")
87result = generator("The future of AI is", max_new_tokens=50)
89# Text classification
90classifier = pipeline("text-classification", model="distilbert/distilbert-base-uncased-finetuned-sst-2-english")
91result = classifier("This movie was excellent!")
93# Generative question answering: verify responses against the supplied context.
94qa = pipeline("text-generation", model="Qwen/Qwen2.5-0.5B-Instruct")
95result = qa([{ "role": "user", "content": "Context: AI means artificial intelligence. What does AI mean?" }], max_new_tokens=32, do_sample=False)
96```

Quick Start

Use the Pipeline API for fast inference without manual configuration:

from transformers import pipeline

# Text generation (prefer max_new_tokens for causal LMs)
generator = pipeline("text-generation", model="Qwen/Qwen2.5-1.5B")
result = generator("The future of AI is", max_new_tokens=50)

# Text classification
classifier = pipeline("text-classification", model="distilbert/distilbert-base-uncased-finetuned-sst-2-english")
result = classifier("This movie was excellent!")

# Generative question answering: verify responses against the supplied context.
qa = pipeline("text-generation", model="Qwen/Qwen2.5-0.5B-Instruct")
result = qa([{ "role": "user", "content": "Context: AI means artificial intelligence. What does AI mean?" }], max_new_tokens=32, do_sample=False)
Raw lines 78 to 97
98## Core Capabilities

Core Capabilities

Raw lines 98 to 99
100### 1. Pipelines for Quick Inference
102Use for simple, optimized inference across many tasks. Supports text generation, classification, NER, image classification, object detection, audio classification, and more. In v5, `question-answering`, `summarization`, `translation*`, `text2text-generation`, `image-to-text`, and `visual-question-answering` pipelines are removed. Use direct task models when exact extractive/seq2seq semantics are needed; generative text/VLM pipelines are different tasks, not equivalent replacements.
104**When to use**: Quick prototyping, simple inference tasks, no custom preprocessing needed.
106See `references/pipelines.md` for comprehensive task coverage and optimization.

1. Pipelines for Quick Inference

Use for simple, optimized inference across many tasks. Supports text generation, classification, NER, image classification, object detection, audio classification, and more. In v5, question-answering, summarization, translation*, text2text-generation, image-to-text, and visual-question-answering pipelines are removed. Use direct task models when exact extractive/seq2seq semantics are needed; generative text/VLM pipelines are different tasks, not equivalent replacements.

When to use: Quick prototyping, simple inference tasks, no custom preprocessing needed.

See references/pipelines.md for comprehensive task coverage and optimization.

Raw lines 100 to 107
Reads a file references/pipelines.md :106
108### 2. Model Loading and Management
110Load pre-trained models with fine-grained control over configuration, device placement, and precision.
112**When to use**: Custom model initialization, advanced device management, model inspection.
114See `references/models.md` for loading patterns and best practices.

2. Model Loading and Management

Load pre-trained models with fine-grained control over configuration, device placement, and precision.

When to use: Custom model initialization, advanced device management, model inspection.

See references/models.md for loading patterns and best practices.

Raw lines 108 to 115
Reads a file references/models.md :114
116### 3. Text Generation
118Generate text with LLMs using various decoding strategies (greedy, beam search, sampling) and control parameters (temperature, top-k, top-p).
120**When to use**: Creative text generation, code generation, conversational AI, text completion.
122For chat or instruction-tuned checkpoints, format messages with that checkpoint's `tokenizer.apply_chat_template` rather than hand-written role delimiters. Prefer `tokenize=True`; if formatting with `tokenize=False` and tokenizing afterward, set `add_special_tokens=False` to avoid duplicated BOS/EOS tokens. Use `add_generation_prompt=True` to start a new assistant reply, and preserve the same template when preparing fine-tuning data.
124See `references/generation.md` for generation strategies and parameters.

3. Text Generation

Generate text with LLMs using various decoding strategies (greedy, beam search, sampling) and control parameters (temperature, top-k, top-p).

When to use: Creative text generation, code generation, conversational AI, text completion.

For chat or instruction-tuned checkpoints, format messages with that checkpoint's tokenizer.apply_chat_template rather than hand-written role delimiters. Prefer tokenize=True; if formatting with tokenize=False and tokenizing afterward, set add_special_tokens=False to avoid duplicated BOS/EOS tokens. Use add_generation_prompt=True to start a new assistant reply, and preserve the same template when preparing fine-tuning data.

See references/generation.md for generation strategies and parameters.

Raw lines 116 to 125
Reads a file references/generation.md :124
126### 4. Training and Fine-Tuning
128Fine-tune pre-trained models on custom datasets using the Trainer API with automatic mixed precision, distributed training, and logging.
130**When to use**: Task-specific model adaptation, domain adaptation, improving model performance.
132See `references/training.md` for training workflows and best practices.

4. Training and Fine-Tuning

Fine-tune pre-trained models on custom datasets using the Trainer API with automatic mixed precision, distributed training, and logging.

When to use: Task-specific model adaptation, domain adaptation, improving model performance.

See references/training.md for training workflows and best practices.

Raw lines 126 to 133
Reads a file references/training.md :132
134### 5. Tokenization
136Convert text to tokens and token IDs for model input, with padding, truncation, and special token handling.
138**When to use**: Custom preprocessing pipelines, understanding model inputs, batch processing.
140See `references/tokenizers.md` for tokenization details.

5. Tokenization

Convert text to tokens and token IDs for model input, with padding, truncation, and special token handling.

When to use: Custom preprocessing pipelines, understanding model inputs, batch processing.

See references/tokenizers.md for tokenization details.

Raw lines 134 to 141
Reads a file references/tokenizers.md :140
142## Common Patterns

Common Patterns

Raw lines 142 to 143
144### Pattern 1: Simple Inference
145For straightforward tasks, use pipelines:
146```python
147pipe = pipeline("task-name", model="model-id")
148output = pipe(input_data)
149```

Pattern 1: Simple Inference

For straightforward tasks, use pipelines:

pipe = pipeline("task-name", model="model-id")
output = pipe(input_data)
Raw lines 144 to 150
151### Pattern 2: Custom Model Usage
152For advanced control, load model and tokenizer separately:
153```python
154from transformers import AutoModelForCausalLM, AutoTokenizer
156tokenizer = AutoTokenizer.from_pretrained("model-id")
157model = AutoModelForCausalLM.from_pretrained("model-id", device_map="auto")
159inputs = tokenizer("text", return_tensors="pt").to(model.device)
160outputs = model.generate(**inputs, max_new_tokens=100)
161result = tokenizer.decode(outputs[0])
162```

Pattern 2: Custom Model Usage

For advanced control, load model and tokenizer separately:

from transformers import AutoModelForCausalLM, AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained("model-id")
model = AutoModelForCausalLM.from_pretrained("model-id", device_map="auto")

inputs = tokenizer("text", return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=100)
result = tokenizer.decode(outputs[0])
Raw lines 151 to 163
164### Pattern 3: Fine-Tuning
165For task adaptation, use Trainer:
166```python
167from transformers import Trainer, TrainingArguments
169training_args = TrainingArguments(
170 output_dir="./results",
171 num_train_epochs=3,
172 per_device_train_batch_size=8,
173 report_to="none",
176trainer = Trainer(
177 model=model,
178 args=training_args,
179 train_dataset=train_dataset,
180 processing_class=tokenizer,
183trainer.train()
184```

Pattern 3: Fine-Tuning

For task adaptation, use Trainer:

from transformers import Trainer, TrainingArguments

training_args = TrainingArguments(
    output_dir="./results",
    num_train_epochs=3,
    per_device_train_batch_size=8,
    report_to="none",
)

trainer = Trainer(
    model=model,
    args=training_args,
    train_dataset=train_dataset,
    processing_class=tokenizer,
)

trainer.train()
Raw lines 164 to 185
186## Research validation
188Record package versions, checkpoint and dataset revisions, label order, preprocessing, split units, seeds, and generation settings. Split by patient, subject, document family, or time when observations are dependent; fit preprocessing and tune hyperparameters on training/validation data only. Report truncation and excluded records. A softmax score is not calibrated certainty, and decoding choices do not establish factual accuracy. Compare against held-out baselines and inspect failures before scientific use. Test adapters such as SHAP against the actual output shape/class order; their compatibility is not established by Transformers alone.

Research validation

Record package versions, checkpoint and dataset revisions, label order, preprocessing, split units, seeds, and generation settings. Split by patient, subject, document family, or time when observations are dependent; fit preprocessing and tune hyperparameters on training/validation data only. Report truncation and excluded records. A softmax score is not calibrated certainty, and decoding choices do not establish factual accuracy. Compare against held-out baselines and inspect failures before scientific use. Test adapters such as SHAP against the actual output shape/class order; their compatibility is not established by Transformers alone.

Raw lines 186 to 189
190## Reference Documentation
192For detailed information on specific components:
193- **Pipelines**: `references/pipelines.md` - All supported tasks and optimization
194- **Models**: `references/models.md` - Loading, saving, and configuration
195- **Generation**: `references/generation.md` - Text generation strategies and parameters
196- **Training**: `references/training.md` - Fine-tuning with Trainer API
197- **Tokenizers**: `references/tokenizers.md` - Tokenization and preprocessing

Reference Documentation

For detailed information on specific components:

Raw lines 190 to 198
Reads a file references/pipelines.md :193
Reads a file references/models.md :194
Reads a file references/generation.md :195
Reads a file references/training.md :196
Reads a file references/tokenizers.md :197
Boilerplate, lines 199 to 214. The same text appears in 125 other files here. Close
199## Citing Scientific Agent Skills
201This skill is part of Scientific Agent Skills by K-Dense. If it materially contributed to a
202manuscript, report, presentation, or code release, add the paper to the references or
203software section and tell the user you did so:
205> Kassis, T., Agarwal, V., He, Y., Patel, D., & Brueckner, A. M. (2026). Scientific Agent
206> Skills: A Library of Procedural Knowledge for Research Agents. arXiv:2609.00065.
207> https://doi.org/10.48550/arXiv.2609.00065
209Always cite the current version. The DOI and https://arxiv.org/abs/2609.00065 resolve to the
210latest arXiv version, so never append a version suffix such as `v1`. When network access is
211available, fetch https://arxiv.org/abs/2609.00065 (or
212http://export.arxiv.org/api/query?id_list=2609.00065) before writing the reference and take
213the author list, year, and version from that record. If the record lists a journal reference
214or publisher DOI, cite the published version instead.

From K-Dense-AI/scientific-agent-skills at 5f2bc03, 2026-10-26. Not read by a model yet. Summary and techniques by Claude Opus 5.5 on 2026-11-06.