Downloads · 30 days
1.6K
34% of all-time downloads
thalovant/thalovant-m2v-intents
thalovant-m2v-intents is a text classification model from thalovant. Use it when you need a label for a piece of text. It is set up for model2vec. The card lists the license as apache-2.0.
A static-embedding intent classifier for the Thalovant hub. It maps an utterance to one of 364 labels of the form <skillid:<intent, exactly as ovos-m2v-pipeline registers them. The labels are the fleet's skills and th…
Downloads · 30 days
1.6K
34% of all-time downloads
All-time downloads
4.7K
Public
Parameters
30.6M
14.2 GB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors246 MB · 77%
From the Hugging Face model README
A static-embedding intent classifier for the Thalovant hub. It maps an
utterance to one of 364 labels of the form <skill_id>:<intent>,
exactly as ovos-m2v-pipeline registers them. The labels are the fleet's
skills and the other intents the hubs register (the persona and reading
pipelines, wikihow), from the fleet corpus and nothing else. There is no
"none of these" label: a sentence about something no skill does still gets
the nearest skill's label, often with high confidence.
Base: Jarbas/m2v-256-distiluse-base-multilingual-cased-v2, fine-tuned with model2vec's classifier trainer.
Measured on sentences the classifier never saw: 100118 held-out rows whose text, in any language, and whose intent line are both absent from the 412898 rows an evaluation model was trained on. A split per row would score the en-GB twin of an en-US training sentence as new.
thalovant-skillkit check
would report about a sentence that is in fact new and the skill's own.az-AZ 0.92, cs-CZ 0.92, el-GR 0.92, et-EE 0.99, eu-ES 0.94, fi-FI 0.95, he-IL 0.92, hi-IN 0.98, hu-HU 0.98, id-ID 0.98, ja-JP 0.92, ko-KR 0.94, lv-LV 0.98, nb-NO 0.94, pl-PL 0.995, pt-AO 0.96, pt-BR 0.96, pt-MZ 0.96, pt-PT 0.96, sk-SK 0.92, sl-SI 0.92, sv-FI 0.92, sv-SE 0.92, sw-KE 0.98, th-TH 0.92, tr-TR 0.95, uk-UA 0.99, vi-VN 0.95 (thresholds in
training.json).The published weights are then trained with the same recipe on all
513016 rows, so a skill's existing sentences are the
classifier's training data. At most 512 sentences per label and language
are trained on (the reading pipeline's English intents alone expand to
thousands); index.json keeps all 557929.
from model2vec.inference import StaticModelPipeline
model = StaticModelPipeline.from_pretrained("thalovant/thalovant-m2v-intents")
model.predict(["will it rain tomorrow"])
Configure the pipeline with "mode": "classifier" and this model's path;
labels.json beside the weights lists the labels the hub may route to.
index.json names every sentence in the training corpus by a digest of its
language and text, with the labels that publish it. thalovant-skillkit check
uses it to fail a skill that publishes a sentence another skill already owns,
and asks this classifier what it makes of the rest -- without the fleet's
sentences leaving their private repositories.
False warnings: held-out sentences given to another skill at 0.9 or more. Threshold: the lowest that keeps them under 1.0 %.
| Language | Rows | Intent | Skill | False warnings | Threshold |
|---|---|---|---|---|---|
an-ES | 928 | 91.9 % | 97.0 % | 0.4 % | 0.9 |
ar-SA | 728 | 82.7 % | 92.7 % | 1.0 % | 0.9 |
ast-ES | 688 | 95.6 % | 97.4 % | 0.3 % | 0.9 |
az-AZ | 500 | 80.4 % | 89.8 % | 1.6 % | 0.92 |
bg-BG | 587 | 90.1 % | 95.6 % | 0.7 % | 0.9 |
ca-ES | 3510 | 93.6 % | 97.0 % | 0.7 % | 0.9 |
cs-CZ | 974 | 83.8 % | 92.7 % | 1.0 % | 0.92 |
da-DK | 1244 | 89.8 % | 94.4 % | 0.9 % | 0.9 |
de-AT | 2529 | 93.7 % | 96.7 % | 0.7 % | 0.9 |
de-CH | 2471 | 93.7 % | 96.7 % | 0.7 % | 0.9 |
de-DE | 3132 | 91.9 % | 96.4 % | 0.6 % | 0.9 |
el-GR | 1087 | 85.8 % | 91.1 % | 1.3 % | 0.92 |
en-AU | 2877 | 94.4 % | 98.1 % | 0.2 % | 0.9 |
en-CA | 2818 | 94.3 % | 98.1 % | 0.2 % | 0.9 |
en-GB | 2877 | 94.4 % | 98.1 % | 0.2 % | 0.9 |
en-IE | 45 | 93.3 % | 93.3 % | 2.2 % | 0.9 |
en-NZ | 2877 | 94.4 % | 98.1 % | 0.2 % | 0.9 |
en-US | 3800 | 94.6 % | 98.3 % | 0.2 % | 0.9 |
es-AR | 1925 | 95.8 % | 98.1 % | 0.3 % | 0.9 |
es-CO | 2000 | 95.8 % | 98.0 % | 0.4 % | 0.9 |
es-ES | 2696 | 95.9 % | 97.7 % | 0.6 % | 0.9 |
es-MX | 1983 | 95.8 % | 98.0 % | 0.4 % | 0.9 |
es-US | 1983 | 95.8 % | 98.0 % | 0.4 % | 0.9 |
et-EE | 548 | 80.1 % | 88.7 % | 3.5 % | 0.99 |
eu-ES | 1233 | 83.5 % | 91.2 % | 1.5 % | 0.94 |
fa-IR | 943 | 81.7 % | 92.6 % | 0.6 % | 0.9 |
fi-FI | 668 | 83.7 % | 90.7 % | 1.5 % | 0.95 |
fr-BE | 2710 | 95.5 % | 97.5 % | 0.7 % | 0.9 |
fr-CA | 2735 | 95.6 % | 97.4 % | 0.7 % | 0.9 |
fr-CH | 2710 | 95.5 % | 97.5 % | 0.7 % | 0.9 |
fr-FR | 3257 | 95.3 % | 97.7 % | 0.5 % | 0.9 |
gl-ES | 2542 | 96.7 % | 98.3 % | 0.2 % | 0.9 |
he-IL | 521 | 85.2 % | 91.5 % | 1.1 % | 0.92 |
hi-IN | 2170 | 78.6 % | 87.8 % | 2.1 % | 0.98 |
hr-HR | 558 | 88.0 % | 94.1 % | 0.5 % | 0.9 |
hu-HU | 896 | 80.8 % | 90.2 % | 1.9 % | 0.98 |
id-ID | 665 | 87.1 % | 95.5 % | 1.4 % | 0.98 |
it-CH | 61 | 88.5 % | 90.2 % | 4.9 % | 0.9 |
it-IT | 2603 | 93.2 % | 97.2 % | 0.7 % | 0.9 |
ja-JP | 679 | 69.7 % | 92.9 % | 1.2 % | 0.92 |
kab | 72 | 90.3 % | 97.2 % | 2.8 % | 0.9 |
ko-KR | 863 | 59.6 % | 88.6 % | 1.5 % | 0.94 |
lt-LT | 547 | 77.0 % | 88.8 % | 0.9 % | 0.9 |
lv-LV | 536 | 80.4 % | 86.4 % | 2.1 % | 0.98 |
ms-MY | 577 | 90.3 % | 94.6 % | 0.5 % | 0.9 |
nb-NO | 701 | 90.9 % | 96.3 % | 1.3 % | 0.94 |
nl-BE | 1496 | 92.2 % | 95.7 % | 0.7 % | 0.9 |
nl-NL | 2262 | 93.6 % | 96.4 % | 0.7 % | 0.9 |
oc-FR | 726 | 86.8 % | 95.9 % | 0.8 % | 0.9 |
pl-PL | 1135 | 73.2 % | 78.8 % | 6.6 % | 0.995 |
pt-AO | 2645 | 95.1 % | 96.7 % | 1.5 % | 0.96 |
pt-BR | 1474 | 92.2 % | 95.0 % | 1.7 % | 0.96 |
pt-MZ | 2645 | 95.1 % | 96.7 % | 1.5 % | 0.96 |
pt-PT | 3139 | 95.0 % | 96.9 % | 1.3 % | 0.96 |
ro-RO | 678 | 87.6 % | 93.4 % | 0.6 % | 0.9 |
ru-RU | 1024 | 89.8 % | 95.9 % | 0.9 % | 0.9 |
sk-SK | 878 | 83.8 % | 94.7 % | 1.1 % | 0.92 |
sl-SI | 661 | 90.2 % | 94.4 % | 1.1 % | 0.92 |
sv-FI | 728 | 90.4 % | 94.6 % | 1.0 % | 0.92 |
sv-SE | 853 | 88.6 % | 94.0 % | 1.2 % | 0.92 |
sw-KE | 515 | 78.5 % | 88.7 % | 2.1 % | 0.98 |
th-TH | 936 | 81.2 % | 88.3 % | 1.3 % | 0.92 |
tr-TR | 628 | 81.0 % | 90.5 % | 1.8 % | 0.95 |
uk-UA | 1086 | 77.5 % | 92.4 % | 2.5 % | 0.99 |
vi-VN | 654 | 86.1 % | 91.4 % | 2.0 % | 0.95 |
zh-CN | 776 | 97.2 % | 99.1 % | 0.0 % | 0.9 |
zh-SG | 776 | 97.2 % | 99.1 % | 0.0 % | 0.9 |
zh-TW | 1349 | 96.4 % | 98.4 % | 0.1 % | 0.9 |
| Skill | Rows | Intent | Skill | False warnings |
|---|---|---|---|---|
ovos-common-reading-pipeline-plugin | 695 | 95.8 % | 99.0 % | 0.0 % |
ovos-persona-pipeline-plugin | 1576 | 94.0 % | 94.5 % | 0.8 % |
ovos-skill-wikihow.openvoiceos | 387 | 95.3 % | 95.6 % | 1.3 % |
thalovant-skill-alarm.thalovant | 1975 | 94.4 % | 97.6 % | 0.7 % |
thalovant-skill-camera.thalovant | 693 | 76.0 % | 83.7 % | 2.7 % |
thalovant-skill-christmas-companion.thalovant | 457 | 79.9 % | 89.1 % | 1.3 % |
thalovant-skill-christmas-games.thalovant | 455 | 98.9 % | 99.6 % | 0.0 % |
thalovant-skill-christmas-protocol.thalovant | 169 | 79.9 % | 97.6 % | 0.0 % |
thalovant-skill-coming-soon.thalovant | 2975 | 97.7 % | 97.8 % | 0.2 % |
thalovant-skill-custos-query.thalovant | 340 | 84.4 % | 89.1 % | 2.4 % |
thalovant-skill-custos-shadow.thalovant | 291 | 95.2 % | 95.9 % | 1.4 % |
thalovant-skill-date-time.thalovant | 14071 | 96.2 % | 98.9 % | 0.1 % |
thalovant-skill-easter-eggs.thalovant | 1542 | 85.8 % | 89.0 % | 1.9 % |
thalovant-skill-fart.thalovant | 2130 | 85.2 % | 93.9 % | 1.5 % |
thalovant-skill-guide.thalovant | 2944 | 85.6 % | 92.7 % | 0.9 % |
thalovant-skill-home.thalovant | 18230 | 87.0 % | 94.5 % | 1.7 % |
thalovant-skill-interaction-modes.thalovant | 468 | 82.3 % | 92.3 % | 1.3 % |
thalovant-skill-joke-garden.thalovant | 2683 | 91.3 % | 93.7 % | 0.9 % |
thalovant-skill-language-buddy.thalovant | 421 | 81.2 % | 81.2 % | 1.9 % |
thalovant-skill-learning-lounge.thalovant | 452 | 83.2 % | 83.2 % | 4.9 % |
thalovant-skill-lists.thalovant | 85 | 68.2 % | 95.3 % | 0.0 % |
thalovant-skill-local-pulse.thalovant | 1783 | 94.2 % | 94.2 % | 1.1 % |
thalovant-skill-media.thalovant | 7981 | 96.5 % | 98.9 % | 0.1 % |
thalovant-skill-music-assistant.thalovant | 2726 | 83.8 % | 96.2 % | 0.3 % |
thalovant-skill-news.thalovant | 1811 | 96.6 % | 97.7 % | 0.3 % |
thalovant-skill-on-this-day.thalovant | 1277 | 97.1 % | 97.2 % | 0.2 % |
thalovant-skill-ops-copilot.thalovant | 693 | 87.0 % | 87.0 % | 1.9 % |
thalovant-skill-pop-facts.thalovant | 3253 | 91.7 % | 95.9 % | 1.3 % |
thalovant-skill-pop-quiz.thalovant | 3227 | 99.0 % | 99.0 % | 0.2 % |
thalovant-skill-recall.thalovant | 1430 | 87.5 % | 92.7 % | 0.8 % |
thalovant-skill-reminder.thalovant | 1615 | 89.2 % | 94.2 % | 1.5 % |
thalovant-skill-rewrite-forge.thalovant | 1632 | 93.0 % | 93.0 % | 2.5 % |
thalovant-skill-routines.thalovant | 1097 | 87.5 % | 99.5 % | 0.0 % |
thalovant-skill-safety-guide.thalovant | 494 | 87.5 % | 87.5 % | 2.4 % |
thalovant-skill-source-scout.thalovant | 690 | 83.5 % | 83.5 % | 2.9 % |
thalovant-skill-stopwatch.thalovant | 1012 | 85.6 % | 94.5 % | 0.3 % |
thalovant-skill-timer.thalovant | 1643 | 94.2 % | 97.3 % | 0.6 % |
thalovant-skill-twenty-questions.thalovant | 263 | 90.9 % | 90.9 % | 0.4 % |
thalovant-skill-volume.thalovant | 1275 | 81.1 % | 94.9 % | 0.7 % |
thalovant-skill-weather.thalovant | 10192 | 90.9 % | 96.7 % | 0.8 % |
thalovant-skill-what-next.thalovant | 2985 | 97.0 % | 97.0 % | 0.6 % |
Each line is a held-out sentence whose true intent the classifier read as another intent. Two skills on one line is a collision the fleet should resolve.
thalovant-skill-home.thalovant:home.turn.on read as thalovant-skill-home.thalovant:home.turn.off (347): "ممكن تشغل الضوء في something" (ar-SA)thalovant-skill-home.thalovant:home.turn.on read as thalovant-skill-media.thalovant:media.play.title (248): "enzende a televisión de something" (an-ES)thalovant-skill-home.thalovant:home.state read as thalovant-skill-home.thalovant:home.turn.off (195): "son as luzes de something amortadas" (an-ES)thalovant-skill-home.thalovant:home.state read as thalovant-skill-home.thalovant:home.turn.on (161): "ventilyator işləyir mi" (az-AZ)thalovant-skill-home.thalovant:home.state read as thalovant-skill-weather.thalovant:air_quality.weather (136): "공기청정기 꺼져 있나요" (ko-KR)thalovant-skill-date-time.thalovant:weekday.for.date read as thalovant-skill-date-time.thalovant:holiday.when (101): "an welchem tag ist weihnachten dieses jahr" (de-AT)thalovant-skill-home.thalovant:home.turn.on read as thalovant-skill-home.thalovant:home.brightness (90): "enzende a luz de something" (an-ES)thalovant-skill-weather.thalovant:condition.weather read as thalovant-skill-weather.thalovant:snow.weather (89): "budou bouře?" (cs-CZ)thalovant-skill-weather.thalovant:alerts.weather read as thalovant-skill-weather.thalovant:condition.weather (77): "are there any storm advisories today" (en-AU)thalovant-skill-home.thalovant:home.state read as thalovant-skill-weather.thalovant:wind.weather (55): "cik silts ir šeit" (lv-LV)thalovant-skill-weather.thalovant:condition.weather read as thalovant-skill-weather.thalovant:sunrise.weather (53): "habrá tormenta esta noche" (es-AR)thalovant-skill-home.thalovant:home.state read as thalovant-skill-home.thalovant:home.cover.open (51): "are the blinds open" (en-AU)thalovant-skill-home.thalovant:home.turn.off read as thalovant-skill-home.thalovant:home.state (51): "kondisioneri qapat" (az-AZ)thalovant-skill-home.thalovant:home.state read as thalovant-skill-home.thalovant:home.thermostat (49): "o aire acondicionado de something está acendido" (gl-ES)thalovant-skill-joke-garden.thalovant:party.host read as thalovant-skill-joke-garden.thalovant:joke.garden (47): "udělej nám skupinovou výzvu." (cs-CZ)Trained from the corpus built 2026-11-15T16:02:14Z covering 41 skills and sources, expanded by thalovant-skillkit 0.38.0.