我们如何将文本输入发送给Google助手?

时间:2017-05-01 16:14:06

标签: google-assistant-sdk

目前,谷歌助手SDK接受语音输入,这意味着我的问题相当简单:我想与谷歌助手交谈但不使用语音,只是聊天。这肯定是可能的,例如,在Google Allo中。 Google是否公开了用于文本输入的API?

2 个答案:

答案 0 :(得分:4)

现在,Google智能助理SDK服务的v1alpha2版本支持此功能

答案 1 :(得分:2)

所以它看起来不像sdk接受文本但它接受音频文件输入。它甚至作为音频文件输出。

python -m pushtotalk -i somefile.wav -o outputfile.wav

这让我思考,我写了一个剧本:

echo $1 >> query.txt
espeak -f query.txt -w audio_query.wav
python -m pushtotalk -i audio_query.wav -o audio_response.wav &> pushtotalk.log
pocketsphinx_continuous -infile audio_response.wav 2> pocketsphinx.log > response.txt
cat response.txt

rm response.txt query.txt audio_query.wav audio_response.wav pocketsphinx.log pushtotalk.log

这只是一个shell脚本,但这也可能会转换为python。要使用它,请将脚本另存为pushtotalk_script.sh并运行./pushtotalk_script.sh "how tall is mount kilamanjaro?。我使用espeak将文本转换为wav文件。然后使用助手sdk获得响应。你可以在这里停下来播放回复。 Pocketsphinx是由CMU创建的音频转录引擎。您可以使用apt-get找到这些工具的软件包,但是如果您使用的是OSX,则pocketphinx软件包不起作用,您需要点击这些formulas。此外,这里使用espeak python module。还有一个针对pocketsphinx作为python模块的回购,但我无法链接两个以上的链接。

Google的助手似乎在理解espeak的输出时遇到了很多麻烦。然而,Pocketsphinx通常会在转录文本时遇到一些麻烦。但它适用于简单的响应。根据问题的长度和响应音频文件,整个过程大约需要5到10秒。