Ariadne Laya Banking
Routes banking requests across all 77 Banking77 intents. This 4.2 MB specialist interface runs on a shared frozen Laya base. Switching between compatible Ariadne specialists replaces about 1 million parameters, while the 421 million parameter base stays in memory. Each specialist uses its own small interface.
Use
Install the included Python wheel from this downloaded model folder:
pip install ./ariadne_specialists-0.2.0a1-py3-none-any.whl
import ariadne
from ariadne.specialists import Banking
model = ariadne.load_specialist(Banking, model=".")
result = model('My replacement card has not arrived.')
print(result.label, result.score)
The base downloads automatically and is cached. Choose a device with device="cpu" or device="cuda:1". A list of inputs returns a list of results. Scores have not been recalibrated for this task.
Load from Hugging Face
After installing the included wheel, you can load this repository directly:
import ariadne
from ariadne.specialists import Banking
model = ariadne.load_specialist(Banking, model="GoatHerder/Ariadne-Laya-BankingIntent")
Use the explicit model= argument with this preview wheel. The interface and pinned base are downloaded automatically and cached. Pass revision="<commit hash>" to pin a particular interface version.
Interface
The interface is a 1,024 × 1,024 linear projection plus a 1,024-element bias: 1,049,600 trainable parameters. It sits after the base's native embeddings and before encoder block 0. It starts as the identity; training updates only this projection. The shared base has 421,293,827 parameters. Compatible specialists share one resident base in the same Python process and on the same device.
Results
Local evaluation uses the same 3,076 inputs for every model. Accuracy is per decision; macro-F1 averages the task's classes (and flag namespaces for Privacy).
| Model | Accuracy | Macro-F1 |
|---|---|---|
| Base Laya | 36.05% | 36.19% |
| Ariadne Banking | 87.84% | 87.90% |
| functionX86/banking77-intent-classifier | 92.46% | 92.45% |
| TF-IDF + logistic regression | 87.03% | 87.00% |
Same source dataset; exact training row overlap with our test is unverified. This table does not establish a common unseen-test ranking. metrics.json records model revisions, comparison methods, per-class results and existing-task retention.
Training and scope
Trained on PolyAI/banking77, revision 90d4e2ee5521c04fc1488f065b8b083658768c57. Prepared train/validation/test sizes: 7,847 / 970 / 3,076. Overlength exclusions: {'train': 0, 'validation': 0, 'test': 0}.
One seed (0); epoch 4 selected by validation loss, training stopped after epoch 10. LR 1e-4, minimum 10 epochs, patience 3. Only the 1,049,600 exact-identity-initialized interface parameters were trained. The original embeddings, 28 encoder blocks and decision heads stayed frozen and in evaluation mode. Deterministic GPU settings were enabled.
- Label-independent lexical groups at cosine >=0.90; excluded 1167 training rows related to official test. Semantic independence is unverified.
English only. Unsupported or ambiguous inputs still receive a prediction. Source datasets retain their own licences. This checkpoint is one training run; it does not establish across-seed variance.
Base revision: 55cf4c4ebb4ebe31b2550e8bdf3bd21b99753851. Independent adaptation; no affiliation with the original Laya authors.
Model tree for GoatHerder/Ariadne-Laya-BankingIntent
Base model
convaiinnovations/laya