J'avais l'habitude de créer une fonction de réponse automatique à l'aide de l'API Talk de Recruit lorsque je créais mon propre slackbot. Et si vous utilisez OpenJTalk, dont vous avez récemment créé un environnement, vous pouvez réellement parler! J'ai pensé et essayé. Je ne suis pas sans amis
Windows 10 Python 3.7 OpenJTalk pya3rt (pour utiliser l'api talk)
OpenJTalk C'est un logiciel de synthèse vocale qui peut également être utilisé depuis Python. L'article ici résume tout, de la construction de l'environnement au parler en Python.
Talk API C'est une API qui renvoie une réponse lorsque vous envoyez une chaîne de caractères. J'ai fait référence à Résumé des API de conversation, des bibliothèques et des services qui peuvent être utilisés avec BOT.
Talk API
Recruit Technology est l'une des technologies ouvertes au public en tant qu'API, la technologie d'apprentissage automatique / d'apprentissage en profondeur utilisée en interne dans le cadre de l'innovation ouverte. D'autres choses intéressantes telles que l'API Image Environment qui peut créer un modèle pour juger de la préférence des images pour le test A / B et l'API de suggestion de texte qui génère automatiquement des phrases et assiste l'entrée sont publiées.
Vous pouvez enregistrer votre e-mail à partir d'ici et émettre une API. Talk API
pya3rt Une bibliothèque appelée pya3rt est fournie et est facile à utiliser à partir de Python. Veuillez installer avec la commande suivante.
pip install pya3rt
J'ai fait de la fonction de conversation une fonction. message est une chaîne envoyée à l'API et la valeur de retour est la réponse de la conversation.
import pya3rt
def send_message(message):
apikey = "api key"
client = pya3rt.TalkClient(apikey)
reply_message = client.talk(message)
return reply_message['results'][0]['reply']
Le contenu de reply_message est comme ça.
{'status': 0, 'message': 'ok', 'results': [{'perplexity': 0.06766985185966182, 'reply': 'Bonjour'}]}
Je voulais retirer uniquement la partie réponse
reply_message['results'][0]['reply']
C'était fabriqué.
Vient ensuite la partie sortie audio, mais appelez jtalk.py
créé dans cet article.
import jtalk
jtalk.jtalk('Personnages dont vous voulez parler')
Le total de ces derniers est le suivant. Le déroulement consiste à recevoir une chaîne de caractères de la console ⇒ la jeter à l'API ⇒ la voix de sortie.
import pya3rt
import jtalk
def send_message(message):
apikey = "api key"
client = pya3rt.TalkClient(apikey)
reply_message = client.talk(message)
return reply_message['results'][0]['reply']
if __name__ == "__main__":
while True:
message = input("message : ")
reply = send_message(message)
print(reply)
jtalk.jtalk(result)
Résultat de sortie. Si OpenJTalk est utilisé, la réponse (celle sans message :) sera émise par la voix.
message :Bonjour
Bonjour
message :Il a neigé
As-tu un rhume?
message :il fait froid
Je le pense aussi
message :n'est-ce pas
C'est vrai
message :Qui êtes vous?
Je n'ai pas encore de nom
C'était très facile à mettre en œuvre. Python et API sont incroyables. Après cela, si vous pouvez reconnaître la voix, vous pouvez parler avec des personnes et des ordinateurs.
Résumé des API, bibliothèques et services de conversation pouvant être utilisés avec BOT Ajouter une fonction de conversation au robot slack (créé par python) à l'aide de l'API Talk de Recruit
Recommended Posts