← Plugin catalog
Developer Tools

Adaptive Classifier

adaptive-classifier (codelion) v0.1.0

Classifiers that keep learning

Create a free account to save this plugin.

From the developer

Not specified in the available declarations: capabilities, limitations, pricing & account requirements.

Onboarding example

Is adaptive-classifier right for my task?
Sources & dates

Developer declarations; not independently tested. Listing last checked Nov 6, 2026. Package observed Nov 6, 2026.

View package source →

Description

From the marketplace listing

Guides you through adaptive-classifier, an open-source Python library for text classifiers built on pretrained language models that learn new examples and new classes without retraining from scratch. The workflow helps you decide whether the library fits your problem (small labeled sets, label sets that change, routing, intent and moderation use cases) or whether standard fine-tuning is the better choice for a large static dataset. It checks whether the library is installed and points you to the README install steps without running them, asks before anything downloads model weights or datasets, and walks through a quickstart, adding examples and new classes later, multi-label use, strategic (anti-gaming) prediction modes, and the standard versus ONNX inference paths. It explains how to evaluate honestly: a held-out split, per-class results, calibration checks, and a comparison against a trivial baseline. It covers saving and loading and states the limits plainly, including order dependence in online learning and the cost of wrong pooling or blend settings. This plugin contains instructions only; everything runs on your own machine.

Language: English · Automatically detected from descriptions.

Matches for “paris”

Exact text from the indicated source. A mention alone does not establish support for your task.

Publisher full description

Guides you through adaptive-classifier, an open-source Python library for text classifiers built on pretrained language models that learn new examples and new classes without retraining from scratch. The workflow helps you decide whether the library fits your problem (small labeled sets, label sets that change, routing, intent and moderation use cases) or whether standard fine-tuning is the better choice for a large static dataset. It checks whether the library is installed and points you to the README install steps without running them, asks before anything downloads model weights or datasets, and walks through a quickstart, adding examples and new classes later, multi-label use, strategic (anti-gaming) prediction modes, and the standard versus ONNX inference paths. It explains how to evaluate honestly: a held-out split, per-class results, calibration checks, and a comparison against a trivial baseline. It covers saving and loading and states the limits plainly, including order dependence in online learning and the cost of wrong pooling or blend settings. This plugin contains instructions only; everything runs on your own machine.

What changed

Keywords

Files & skills

File archives

Plugin package6 files · 9.94 KBBrowse files →
Skill instructions
adaptive-classifier9.38 KB

View saved version →

---
name: adaptive-classifier
description: Build, update and honestly evaluate text classifiers with the open-source adaptive-classifier library, which learns new examples and new classes without retraining from scratch. Use for small labeled sets, label sets that change over time, and routing, intent or moderation tasks; not for large static datasets where standard fine-tuning is better.
---

Use this skill when the user wants a text classifier (https://github.com/codelion/adaptive-classifier) that starts from a few labeled examples and keeps learning. Everything runs locally. Do not call `push_to_hub` or any publish step unless the user explicitly asks.

Ask before anything downloads model weights or datasets. Creating `AdaptiveClassifier(...)` with a model name, `from_pretrained(...)` and ONNX export all fetch or write model files. Say which model and roughly why, and wait for a yes.

## 1. Is it a fit?

Good fit:
- Small labeled sets (tens to a few hundred examples per class).
- Labels that appear or change over time: new intents, new routing tiers, new policy categories.
- Routing, intent detection, moderation triage, ticket tagging, where you want to add examples without a retraining job.

Poor fit:
- A large, static, well-labeled dataset. Standard fine-tuning of an encoder will usually do better and is simpler to reason about.
- Tasks that need long-document understanding, generation, or labels that depend on subtle reasoning rather than text similarity.

Mechanism (from the source): texts are embedded by a pretrained encoder, per-class prototypes are kept in memory, and a small trainable head is blended with prototype similarity. Adding examples retrains the head briefly (10 epochs by default) with EWC protection for old classes.

## 2. Check the install

```bash
python -c "import adaptive_classifier; print(adaptive_classifier.__version__)"
```

If this fails, tell the user the library is missing and point them to the Installation section of the README. Do not run install commands or fetch code for them. The checks below were made against version 0.2.0; if the printed version differs, inspect signatures before relying on this skill:

```bash
python -c "import inspect, adaptive_classifier as a; print(inspect.signature(a.AdaptiveClassifier.__init__))"
```

## 3. Quickstart

```python
from adaptive_classifier import AdaptiveClassifier

clf = AdaptiveClassifier("sentence-transformers/all-MiniLM-L6-v2")  # downloads weights: ask first
clf.add_examples(texts, labels)          # parallel lists of str; labels are str
print(clf.predict("some text", k=3))     # [(label, score), ...] sorted, top k (default 5)
batch = clf.predict_batch(list_of_texts, k=3, batch_size=32)
```

Notes verified in the source:
- `add_examples` raises `ValueError` on empty lists or mismatched lengths. `predict` raises on empty text.
- Encoder choice matters. The README says some models give poor embeddings for short inputs and suggests `bert-base-uncased` or `sentence-transformers/all-MiniLM-L6-v2`. Prefer an encoder trained for sentence similarity.
- Pooling: since 0.2.0 the default `pooling` is `auto` (the model's own sentence-transformers pooling if published, else mean). Options: `"auto"`, `"mean"`, `"cls"`. Classifiers saved before 0.2.0 keep CLS pooling when reloaded.
- Config is a plain dict: `AdaptiveClassifier(name, config={...})`. Defaults checked: `prototype_weight` 0.7, `neural_weight` 0.3, `new_class_example_threshold` 10, `new_class_prototype_weight` 0.3, `new_class_neural_weight` 0.7, `max_examples_per_class` 1000, `epochs` 10. Other constructor args: `device`, `seed=42`, `use_onnx="auto"`, `trust_remote_code=False` (leave it False).

## 4. Add examples and new classes later

```python
clf.add_examples(["Error 404 on login"], ["technical"])   # unseen label = new class
clf.add_examples(more_texts, more_labels)                 # more data for existing classes
print(clf.get_example_statistics()["examples_per_class"])
```

A label that has no

Preview of the first 4,000 characters. Read full instructions →

Referenced files: 1 — file references are metadata, not package contents.

Package details

Publisher declarations from the archived package. These are separate from our research and the live service's terms.

Package author
Okyasoft Pte Ltd
Keywords
See keywords

Package observed Nov 6, 2026.

Technical details
First seen
Oct 24, 2026 · 12:40 UTC
Last seen
Nov 6, 2026 · 06:00 UTC
Collection status
Collected

plugins_6abdf41ec09c8191bdbe240fc02f0246

Download plugin data (JSON)

Plugin details: served from cache. Prepared . Refreshed when plugin data changes or after 6 hours. Your account and Follow status are live.