Mycroft-core: Utiliser mycroft sans domicile

Créé le 4 mai 2018  ·  17Commentaires  ·  Source: MycroftAI/mycroft-core

Je souhaite utiliser mycroft sans Home (compte mycroft) en configurant ma propre clé api Google STT. Je ne peux pas trouver la description exacte de cela. Je ne suis pas en mesure de le faire selon la courte description hele: https://github.com/MycroftAI/mycroft-core#using-mycroft-without-home .

S'il vous plaît, où puis-je trouver un guide pour cela?

Merci.

Commentaire le plus utile

D'accord, merci pour la réponse.

En voyant un code, j'ai trouvé le moyen de configurer des choses utiles. Je les colle ici pour les autres. Je recommanderais de les inclure dans la documentation.

Quelques modifications de la configuration locale /home/mycroft/.mycroft/mycroft.conf

  • pour utiliser la clé API Google cloud Speech personnalisée (remplissez vos propres informations d'identification json) :

~json..."stt": {"module": "google_cloud","google_cloud": {"identifiant": {"json": {}}}},...~

  • pour utiliser google tts au lieu du package mycroft mimic :
    ~json..."tts": {"module": "google","Google": {"lang": "fr-fr","lent": faux}},...~

  • pour utiliser espeak tts au lieu du package mycroft mimic :

    • (n'oubliez pas d'installer d'abord le package espeak)
      ~json..."tts": {"module": "parler","parler": {"lang": "fr"}},...~

Tous les 17 commentaires

Je ne sais pas comment désactiver la dépendance sur api.mycroft.ai.

1) J'ai défini une clé API google_cloud stt personnalisée.

2) J'ai mis "server.update": false dans /home/mycroft/.mycroft/mycroft.conf

Mais j'ai toujours ces lignes dans le journal :

~14:48:28.473 - request.packages.urllib3.connectionpool - DEBUG - Réinitialisation de la connexion interrompue : api.mycroft.ai14:48:29.084 - request.packages.urllib3.connectionpool - DEBUG - https://api.mycroft.ai :443 "GET /v1/device HTTP/1.1" 401 3814:48:29.104 - request.packages.urllib3.connectionpool - DEBUG - Démarrage d'une nouvelle connexion HTTPS (1) : api.mycroft.ai14:48:29.645 - request.packages.urllib3.connectionpool - DEBUG - https://api.mycroft.ai :443 "GET /v1/auth/token HTTP/1.1" 401 38~

Pourquoi?

Malheureusement, j'ai trouvé la documentation mycroft très incomplète pour un jeu avancé. Il est nécessaire d'inspecter le code source pour une configuration spécifique.

  • Il est dit : "Vous pouvez utiliser mycroft sans domicile.", mais aucun exemple de configuration n'est fourni.
  • C'est sadi : "Vous pouvez utiliser votre propre clé API Google." mais aucun exemple de config n'est fourni pour cela.

C'est un projet très intéressant et je l'aime bien mais AMÉLIORER LA DOCUMENTATION , s'il vous plaît.

Salut @Josca, nous travaillons continuellement sur la documentation, mais comme vous le voyez, il y a des lacunes.

Si le google_cloud stt est correctement configuré, vous devriez pouvoir parler à mycroft et demander des choses comme l'heure.

Vous devez mettre sur liste noire la compétence d'appariement et la compétence de configuration dans la configuration en ajoutant une entrée :

"skills" {
   "blacklisted_skills": ["skill-media", "send_sms", "skill-wolfram-alpha", "skill-pairing", "skill-configuration"]
}

Vous pouvez toujours voir des échecs de connexion aux serveurs mycroft à partir d'éléments tels que les paramètres de compétences. Ceux-ci, je pense, ne respectent pas encore la valeur de mise à jour.

D'accord, merci pour la réponse.

En voyant un code, j'ai trouvé le moyen de configurer des choses utiles. Je les colle ici pour les autres. Je recommanderais de les inclure dans la documentation.

Quelques modifications de la configuration locale /home/mycroft/.mycroft/mycroft.conf

  • pour utiliser la clé API Google cloud Speech personnalisée (remplissez vos propres informations d'identification json) :

~json..."stt": {"module": "google_cloud","google_cloud": {"identifiant": {"json": {}}}},...~

  • pour utiliser google tts au lieu du package mycroft mimic :
    ~json..."tts": {"module": "google","Google": {"lang": "fr-fr","lent": faux}},...~

  • pour utiliser espeak tts au lieu du package mycroft mimic :

    • (n'oubliez pas d'installer d'abord le package espeak)
      ~json..."tts": {"module": "parler","parler": {"lang": "fr"}},...~

ping @KathyReid

Google TTS fonctionnera-t-il localement ? Doit-on installer un package pour cela ?

Google TTS ne fonctionne pas localement, c'est un service distant. (Mais vous n'avez pas besoin des serveurs mycroft pour cela)

@YogeshSingla , Google TTS est un service distant mais gratuit. Vous n'avez pas besoin d'inscription non plus. Mais je pense que le fonctionnement de ce service n'est pas garanti. Il est implémenté à l'aide du package Python gTTS . Il ne semble pas être pris en charge par Google lui-même.

Je recommande espeak comme une solution simple et locale. Sa qualité n'est pas grande mais c'est fiable.

Vous devez d'abord installer le package espeak pour l'utiliser :
~sudo apt-get install espeak~

Juste curieux, pourquoi utiliseriez-vous espeak pour les tts locaux au lieu de Mimic, qui fonctionne également localement ? Je peux penser à des raisons gratuites, honnêtement, je me demande juste la vôtre.

Je m'intéresse également de la même manière aux raisons d'éviter Home. Encore une fois, je peux penser à certains, mais j'aimerais connaître vos pensées si vous seriez prêt à partager.

@penrods

Je sais qu'Espeak a une qualité assez faible par rapport à Mimic, Google TTS et autres, mais il
présente de nombreux avantages :

  1. Mimic nécessite une longue construction. Je n'ai trouvé aucun guide simple pour installer Mimic en tant que package précompilé. Lorsque j'ai configuré mycroft-core , j'ai plutôt défini l'option skip mimic ( bash dev_setup.sh -sm ).
    Espeak est un paquet Debian standard, il est donc très facile à installer et à utiliser.

  2. Espeak prend en charge de nombreuses langues, y compris ma langue maternelle tchèque. Je n'ai vu aucune liste de langues prises en charge dans la documentation de Mimic . Je suppose que c'est fortement axé sur l'anglais (pour des raisons compréhensibles).

  3. Espeak a une réponse très rapide, ce qui est très utile, en particulier pendant la phase de développement. Mimics l'a peut-être, mais ne l'a pas testé.

  4. Pour ces raisons, je l'ai trouvé comme la meilleure solution à des fins de développement.

piccotts est tout aussi rapide, mais a une meilleure qualité de sortie, pour autant que je sache (je ne sais pas pour le tchèque) - je ne sais pas s'il est actuellement possible de l'utiliser avec Mycroft prêt à l'emploi.

Je suis également intéressé à avoir un Mycroft indépendant qui ne dépend pas d'une connexion Internet pour fonctionner.

L'un de nos objectifs ici est de déplacer autant de choses "localement" que possible, mais dans l'ensemble, nous voulons prendre en charge toutes les langues. En attendant, nous visons également à avoir un assistant viable, pas seulement un jouet. Donc, pour le moment, nous avons choisi d'utiliser certains services cloud pendant que nous travaillions indépendamment et avec des partenaires pour développer la technologie nécessaire pour réaliser un fonctionnement hors ligne complet.

Donc, dans l'intervalle, nous n'allons pas concentrer les ressources de développement pour prendre en charge des expériences utilisateur incontestablement inférieures avec les moteurs TTS d'ancienne génération. Vous êtes _absolument_ le bienvenu pour soumettre des PR si vous souhaitez voir cela, mais l'équipe de base se concentre sur la création de technologies ouvertes comme DeepSpeech et Mimic/Mimic2 plutôt que de reculer dans les performances et également de descendre des allées technologiques qui n'ont pas de bon itinéraire pour prendre en charge d'autres langues.

Si vous souhaitez soumettre des modifications aux scripts ou à la documentation dev_setup.sh pour prendre en charge les moteurs TTS alternatifs, je suis heureux de les apporter. Mais je ne vois vraiment pas cela comme un pas en avant en général.

J'espère que cela ne semble pas dédaigneux, nous sommes juste limités dans notre temps et devons choisir ce que nous abordons.

@penrods Ce n'était pas une demande de fonctionnalité pour l'ajout de picots, juste un conseil pour l'utilisateur ci-dessus et d'autres qui voudront peut-être savoir. La demande de fonctionnalité ici vise à rendre possible une utilisation hors ligne (ce que je comprendrais si ce n'était pas dans l'intérêt d'une entreprise qui a besoin de gagner sa vie d'une manière ou d'une autre).

Comprenez tout à fait, expliquant simplement pourquoi nous ne sautons pas sur l'ajout de la prise en charge des picots et autres ! Je pense que mimic est parfaitement viable en tant que moteur TTS hors ligne aujourd'hui (oui, cela prend du temps à construire, c'est ponctuel). Nous travaillons sur plusieurs autres choses pour le STT « hors ligne » – une approche vraiment plus « nuage personnel » à court terme.

Je suis triste de l'entendre. Je travaille actuellement sur une solution de maison intelligente sans nuage. Par défaut, il ne se connecte en aucun cas au cloud.

J'explore si MyCroft pourrait être une bonne solution pour le contrôle vocal. Mais si une installation doit avoir une connexion cloud, je ne peux pas l'utiliser.

Pour mon public cible, la limitation de ne parler qu'en anglais est un compromis acceptable, du moins jusqu'à ce que le matériel d'apprentissage automatique de pointe devienne monnaie courante.

J'ai également remarqué que MyCroft a en fait construit une version du moteur Tacotron TTS ? N'a-t-il pas offert des résultats acceptables?
https://github.com/MycroftAI/mimic2

Il y a eu des progrès, il y a le projet de backend personnel . Cependant, ce projet est toujours en grande partie WIP et comme indiqué ci-dessus pour STT, vous devrez utiliser quelque chose comme le backend deepspeech_server avec une instance locale de deepspeech s'exécutant sur une machine puissante sur le réseau local.

Pendant ce temps, le Selene-Backend (la pile logicielle derrière home.mycroft.ai) a été mis à la disposition du public.

Comme je pense que la plupart des configurations, sinon toutes, sont maintenant couvertes par la documentation et que Selene a été publiée, je ferme ce problème.

Cette page vous a été utile?
0 / 5 - 0 notes