Mélange d’Annyang avec Wolfram Alpha, C’est, donner des renseignements à Antonia
Puits, De quoi s’agit-il ?? Vous savez peut-être que je ne suis pas un ami des appareils Google Home ou Alexa, pour le simple fait que vous ne pouvez pas changer leur nom (Pour l’instant), donc dans mon cas, j’utilise Annyang pour l’appeler Antonia et personnaliser les commandes. Mais pourquoi y mettre Wolfram Alpha?
Pas mal, Wolfram Alpha comme beaucoup d'entre vous le savent, c'est comme un outil avec une grande base de données d'informations, au moyen de un site web on peut lui poser n'importe quelle question dont elle saura presque sûrement la réponse. Des sujets historiques, aux résultats sportifs, et bien sûr des calculs mathématiques complexes. Comme je vous le disais, l'utilisation habituelle est de lui poser des questions via le web et en anglais; il est possible de l'utiliser via une API mais c'est payant si nous faisons plus de 2000 Consultations mensuelles (ou si nous l'utilisons à des fins commerciales).
Ainsi, l'idée est de poser des questions à notre Antonia, repasser ce vieux post si vous n'avez pas votre propre assistant virtuel en marche. En résumé, à Antonia nous dirons quelque chose comme: “Antonia, demande, Qui est Julio Iglesias?”, et via un petit script, Allons-y À (Je) récupérer tout ce qui vient après le mot 'demande', (Ii) vamos a traducirlo al inglés, (Iii) vamos a consultarlo a Wolfram Apha, (Iv) vamos a recoger la respuesta que nos da, (v) vamos a traducirla del inglés al español y (vi) lo dirá por los altavoces (en mi caso lo mandará a Home Assistant, y este lo reproducirá en los altavoces de casa gracias a Diffusion instantanée). Y todo esto con una respuesta rapidísima, que funciona genial!
Pas mal, en la máquina donde corra nuestro Apache con Annyang crearemos el script que será llamado para hacer la consulta. En mi caso se llama antonia_pregunta.sh
#!/bin/sh echo "$1" | cut -d " " -f2- > /home/hector/wolfram-antonia/1peticion_sin_pregunta.txt Peticion_Sin_Pregunta=`cat /home/hector/wolfram-antonia/1peticion_sin_pregunta.txt` /home/hector/wolfram-antonia/trans :en -brief "$Peticion_Sin_Pregunta" > /home/hector/wolfram-antonia/1peticion_en.txt TraducePeticion=`cat /home/hector/wolfram-antonia/1peticion_en.txt` curl -s "https://api.wolframalpha.com/v1/result?appid=XXXXXX-XXXXXXXXXX&units=metric&" --data-urlencode "i=$TraducePeticion" > /home/hector/wolfram-antonia/2respuesta.txt TraduceRespuesta=`cat /home/hector/wolfram-antonia/2respuesta.txt` /home/hector/wolfram-antonia/trans :es -brief "$TraduceRespuesta" > /home/hector/wolfram-antonia/2respuesta_es.txt RespuestaES=`cat /home/hector/wolfram-antonia/2respuesta_es.txt` curl -X POST -H "Autorisation: Bearer XXXXXXXXXXXXXXXXXXXX" -H "Type de contenu: application/json" -d '{"entity_id": "media_player.volumio_mpd", "Message": "'"$RespuestaES"'"}' http://192.168.1.116:8123/api/services/tts/google_say
Este script es algo cutre, pero totalmente válido para un dinosaurio como yo. Nous aurons besoin de dar de alta nuestra app para usar las API de Wolfram Apha (e indicar su ID en el script), y en mi caso también al enviarla a los altavoces de Home Assistant, mediante curl una llamada API para que lo diga Google_Say; Mais, bon, cada uno que haga como quiera, el script funciona así de fácil: “./antonia_pregunta.sh “pregunta ¿Quien es Julio Iglesias?”. Ce que j’ai dit, le quita la primera palabra, lo traduce y nos dará la respuesta, luego ya como quieras lo mandas a tus altavoces 🙂
Pero antes de poder ejecutar el script necesitaremos cumplir un requisito más, ¡necesitamos un traductor! y qué mejor que esta maravilla, mediante este simple script podremos traducir rápidamente entre cualquier idioma (como argumento podríamos usar el idioma destino, parmi d’autres options).
wget git.io/trans chmod +x ./trans ./trans :es -brief "Hi there, how are you?"
Y queda listo, en el fichero php de Antonia no olvidaremos añadir que cuando escuche su nombre seguido de la palabra ‘pregunta’, ejecute este script, Rester:
... elseif (strpos($valeur, 'pregunta') === 0) { Exec('/home/hector/bong.sh'); Exec('/home/hector/wolfram-antonia/antonia_atenta.sh "'.$valor.'" '); } ...
Quizá es un jaleo, pero no es nada complicado montárselo de verdad, así le dotaremos de más inteligencia a nuestro asistente virtual propio, ou que, o usas uno comercial. Que seguro es menos flexible e igual de inseguro 😉
Espero os haya sido de interés, gracias por compartir en las RRSS.










































