thalovant/thalovant-m2v-intents

A static-embedding intent classifier for the Thalovant hub. It maps an utterance to one of 134 labels of the form <skill_id>:<intent>, exactly as ovos-m2v-pipeline registers them, and it knows only the Thalovant skills: every label comes from the fleet corpus and nothing else.

Base: Jarbas/m2v-256-distiluse-base-multilingual-cased-v2, fine-tuned with model2vec's classifier trainer. Held-out accuracy 0.8959 over 14571 rows across 65 languages.

Use

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.

Held-out accuracy per language

Language Rows Accuracy
an-ES 201 0.9701
ar-SA 190 0.7474
ast-ES 213 0.9061
az-AZ 217 0.7834
bg-BG 187 0.8824
ca-ES 220 0.9364
cs-CZ 243 0.8230
da-DK 228 0.8596
de-AT 243 0.9877
de-CH 229 0.9913
de-DE 227 0.9956
el-GR 174 0.7701
en-AU 264 1.0000
en-CA 296 1.0000
en-GB 303 1.0000
en-NZ 303 0.9967
en-US 301 0.9967
es-AR 246 0.9959
es-CO 224 1.0000
es-ES 227 1.0000
es-MX 226 0.9867
es-US 229 0.9956
et-EE 193 0.7202
eu-ES 232 0.7457
fa-IR 220 0.7318
fi-FI 208 0.6731
fr-BE 249 1.0000
fr-CA 272 0.9926
fr-CH 257 0.9961
fr-FR 247 0.9919
gl-ES 219 0.9589
he-IL 217 0.7788
hi-IN 195 0.8051
hr-HR 194 0.8402
hu-HU 217 0.7465
id-ID 176 0.9489
it-IT 234 0.8632
ja-JP 195 0.7590
ko-KR 219 0.7580
lt-LT 195 0.7231
lv-LV 213 0.6995
ms-MY 210 0.9095
nb-NO 196 0.9082
nl-BE 227 0.9736
nl-NL 224 0.9732
oc-FR 196 0.8673
pl-PL 232 0.8319
pt-AO 227 0.9868
pt-BR 236 0.9915
pt-MZ 234 0.9915
pt-PT 216 0.9954
ro-RO 210 0.8048
ru-RU 225 0.8400
sk-SK 197 0.8071
sl-SI 208 0.8269
sv-FI 212 0.9764
sv-SE 189 0.9577
sw-KE 204 0.8088
th-TH 196 0.5612
tr-TR 214 0.7804
uk-UA 200 0.8450
vi-VN 184 0.8207
zh-CN 208 0.9712
zh-SG 198 0.9848
zh-TW 385 0.9584

What the classifier confuses

Each line is a sentence whose true intent the classifier read as another intent. Two skills on one line is a collision the fleet should resolve.

  • thalovant-skill-date-time.thalovant:days.until read as thalovant-skill-date-time.thalovant:holiday.when (18): "วันกองทัพแคนาดาเมื่อไหร่" (th-TH)
  • thalovant-skill-joke-garden.thalovant:party.host read as thalovant-skill-rewrite-forge.thalovant:rewrite.forge (16): "raste bursdag personen men hold det hyggelig" (nb-NO)
  • thalovant-skill-news.thalovant:global.news read as thalovant-skill-news.thalovant:news (16): "เล่นข่าวโลกล่าสุด" (th-TH)
  • thalovant-skill-news.thalovant:news read as thalovant-skill-news.thalovant:global.news (13): "prikaži najnovije svjetske vijesti" (hr-HR)
  • thalovant-skill-interaction-modes.thalovant:party.mode.disable read as thalovant-skill-interaction-modes.thalovant:party.mode.enable (12): "esti tipu de fiesta" (ast-ES)
  • thalovant-skill-joke-garden.thalovant:joke.garden read as thalovant-skill-joke-garden.thalovant:party.host (12): "วิ่งเรื่องเล็กๆ" (th-TH)
  • thalovant-skill-safety-guide.thalovant:safety.guide read as thalovant-skill-guide.thalovant:TroubleshootThalovant (10): "kako zaustaviti rez od krvarenja" (hr-HR)
  • thalovant-skill-source-scout.thalovant:source.scout read as thalovant-skill-rewrite-forge.thalovant:rewrite.forge (10): "יחידות הפוך" (he-IL)
  • thalovant-skill-weather.thalovant:snow.weather read as thalovant-skill-weather.thalovant:condition.weather (10): "風會發生嗎?" (zh-TW)
  • thalovant-skill-interaction-modes.thalovant:party.mode.enable read as thalovant-skill-interaction-modes.thalovant:party.mode.disable (9): "chuyển sang chế độ bữa tiệc" (vi-VN)
  • thalovant-skill-safety-guide.thalovant:safety.guide read as thalovant-skill-source-scout.thalovant:source.scout (9): "jaké zdroje mám zkontrolovat?" (cs-CZ)
  • thalovant-skill-weather.thalovant:condition.weather read as thalovant-skill-weather.thalovant:current.weather (9): "hva er forholdene utenfor" (nb-NO)
  • thalovant-skill-guide.thalovant:TroubleshootThalovant read as thalovant-skill-guide.thalovant:FirstSetup (8): "cum să rezolv thalovant" (ro-RO)
  • thalovant-skill-language-buddy.thalovant:language.buddy read as thalovant-skill-rewrite-forge.thalovant:rewrite.forge (8): "このホテルメッセージをスペイン語に翻訳してください" (ja-JP)
  • thalovant-skill-timer.thalovant:timer.pause read as thalovant-skill-timer.thalovant:timer.cancel (8): "dừng bộ đếm thời gian" (vi-VN)

Trained from the corpus built 2026-09-24T03:38:31Z covering 21 skills.

Downloads last month
1,197
Safetensors
Model size
30.6M params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for thalovant/thalovant-m2v-intents