Mycroft skills not working in other language


#1

Hi!

I managed tu run mycroft with a german deepspeech instance and german espeak. Unfortunately, our conversations are very one-sided, because mycroft cannot execute any skill, but instead tells me that he did not understand me.

Example Conversation:

suche nikon
> Ich bin nicht sicher, ob ich dich verstanden habe.

skills.log:

16:20:29.905 - mycroft.skills.core:load_skill:117 - INFO - ATTEMPTING TO LOAD SKILL: mycroft-wiki.mycroftai with ID mycroft-wiki.mycroftai
LISTENING FOR mycroft-wiki.mycroftai.set
[…]
16:20:29.982 - SKILLS - DEBUG - {“type”: “register_vocab”, “data”: {“start”: “suche”, “end”: “mycroft_wiki_mycroftaiWikipedia”}, “context”: null}
[…]
16:26:57.936 - SKILLS - DEBUG - {“type”: “recognizer_loop:utterance”, “data”: {“utterances”: [“suche nikon”], “lang”: “de-de”}, “context”: null}
16:26:57.941 - SKILLS - DEBUG - {“type”: “intent_failure”, “data”: {“utterance”: “suche nikon”, “lang”: “de-de”}, “context”: {}}
16:26:57.943 - mycroft.skills.padatious_service:handle_fallback:133 - DEBUG - Padatious fallback attempt: suche nikon
16:26:57.945 - SKILLS - DEBUG - {“type”: “mycroft.skill.handler.start”, “data”: {“handler”: “fallback”}, “context”: {}}
16:26:57.945 - SKILLS - DEBUG - {“type”: “enclosure.mouth.think”, “data”: {}, “context”: null}
16:26:57.946 - QuestionsAnswersSkill - INFO - Searching for suche nikon
16:26:57.948 - SKILLS - DEBUG - {“type”: “question:query”, “data”: {“phrase”: “suche nikon”}, “context”: null}
16:26:57.949 - SKILLS - DEBUG - {“type”: “mycroft.scheduler.schedule_event”, “data”: {“time”: 1549294018.0, “event”: “fallback-query.mycroftai:QuestionQueryTimeout”, “repeat”: null, “data”: {“phrase”: “suche nikon”}}, “context”: null}
16:26:58.160 - SKILLS - DEBUG - {“type”: “fallback-query.mycroftai:QuestionQueryTimeout”, “data”: {“phrase”: “suche nikon”}, “context”: null}
16:26:58.160 - QuestionsAnswersSkill - INFO - Timeout occured check responses
16:26:58.162 - SKILLS - DEBUG - {“type”: “enclosure.mouth.reset”, “data”: {}, “context”: null}
16:26:58.950 - WolframAlphaSkill - DEBUG - WolframAlpha fallback attempt: suche nikon
16:26:58.950 - WolframAlphaSkill - DEBUG - Non-question, ignoring: suche nikon
16:26:58.953 - SKILLS - DEBUG - {“type”: “speak”, “data”: {“utterance”: “Ich bin nicht sicher, ob ich dich verstanden habe.”, “expect_response”: false}, “context”: {}}

from my understanding “suche nikon” should be handled by the wikipedia skill. But i can not get any skill to work.

Any advice on this?

Thanks,
Marc


#2

Try “wikipedia nikon” instead - works for me with lang=“de”


#3

that does work for the wikipedia skill but other commands don’t work either:

Homeassistant skill (some parts are working):

schalte licht ein
>> Bitte formuliere deinen Befehl um.
knippse licht an
>> Es tut mir leid, ich verstehe nicht.
knippse an licht
>> Ich weiß nicht, was das bedeutet.
was ist der Wert vom Thermostat Wohnzimmer
>> Temperatur_wohnzimmer ist 21,76 °C.

What are you:

was bist du
>> Es tut mir leid, ich verstehe nicht.

my language setting is “de-de”, because I get a lot of missing intent files with “de”


#4

I stand corrected - my configuration for lang is “de-de” as well.

Looking at the vocab folder of the homeassistant skill I see two subfolders “de” and “de-de” which is already confusing. But looking into the .voc files for “de-de” confuses me even more - some vocab-files were updated some days ago and the translations are not good in my opinion.

If I understand the switch intent and vocab/regex files correctly following should turn on a light:
“drehe licht an” or “drehe an” - which isn’t common german (maybe my grandparents would have said that as at that time the light switches were actionally knobs that had to be turned…)

@MSN: feel free to join channel language-de on Mycroft Chat to have a discussion in German…

@gez-mycroft - this is an example where translations without deeper understanding of the intent and context can go wrong.


#5

Yeah, it is a big limitation of the current translation platform, and I know it’s hard for people translating to visit each skill and try to understand how the vocab is being used.

Unfortunately it’s a significant piece of work for us to build in that contextual ability. It’s definitely on our radar but we have some other projects that need to be prioritised at the moment.

If you do have an alternative translation that you think would work better in this context it would be great to add it into the translate platform. If we can keep making these small iterative improvements, then all the languages will slowly get better over time, particularly as more users are actually using the skill and run into small issues like this.


#6

yeah I saw the “drehe an” thing as well but even that is not working, which is very confusing. I tried creating an automation in homeassistant which can succesfully run with the phrase in regex/de-de/automation.rx so the Homeassistant problem seems to be something else.

turning the lights on worked while mycroft was set to english btw

I am typing the commands to eleminate STT errors.

Can you recommend other skills, that work in german @Dominik? Currently the only things I can do are: Read sensor values from homeassistant, run automations in homeassistant and query wikipedia…


#7

Weather skill works for me (actually one of my most frequent used skills): “Wie ist das Wetter?”