SNIPS控制台由于Sonos的收购而不再可用。有关更多详细信息,请阅读在狙击论坛上公告

剪切语音平台允许用户在不妥协隐私的情况下向其Raspberry Pi设备添加强大的语音助手。它运行100%的设备,不需要互联网连接。它具有热词检测,自动语音识别(ASR),自然语言理解(NLU)和对话管理。

最新文档可以在这里找到:SNIPS平台文档

剪切模块“></p>
       <p>折磨将语音或文字作为输入,并产生<em>意图</em>作为输出,是话语背后的意图的明确表示,随后可以由家庭助手使用来执行适当的动作。必威是什么</p>
       <p><img src=剪裁语音平台

安装

可以通过SNIPS APT/DEBIAN存储库安装SNIPS平台。

Sudoapt-get更新Sudoapt-get安装-ydirmngrSudobash-C'echo“ echo” deb https://raspbian.snips.ai/$(lsb_release -cs)稳定的main”> /etc/apt/sources.list.d/snips.list.list'SudoAPT-KEY ADV-Fetch-Keyshttps://raspbian.snips.ai/531dd1a7b702b14d.pubSudoapt-get更新Sudoapt-get安装-ysnips-platform-voice

请注意,如果Keyserver PGP.MIT.EDU下降,请尝试在第四行中使用另一个,例如PGP.Surfnet.nl:

SudoAPT-KEY ADV-  Keyserverpgp.surfnet.nl-  recv-keysD4F50CDCA10A2849

创建助手

前往折磨控制台创建您的助手。通过单击“下载助手”按钮启动培训并下载。

下一步是让助手在您的设备上工作。解压缩并复制助手您从Web控制台下载到路径的文件夹。假设您下载了助手文件夹在您的桌面上,只需运行:

SCP-r〜/桌面/助手[电子邮件保护]:/home/pi/。

现在SSH进入您的Raspberry Pi:

默认情况下,此命令是SSH[电子邮件保护],如果您使用默认的Raspberry Pi主机名。

然后,将助手移至正确的文件夹:

((pi$Sudo MV/home/pi/pi/assips/usr/share/snips/助理

请注意,如果您已经安装了助手并希望替换它,请首先删除上一个,然后将新的移动移动到位置:

((pi$sudo rm-r/usr/share/snips/助理((pi$Sudo MV/home/pi/pi/assips/usr/share/snips/助理

跑步

确保将麦克风插入Raspberry Pi。如果您难以设置音频,我们已经写了一份指南覆盆子Pi麦克风

通过启动剪辑语音平台狙击 - *服务:

SudoSystemCTL启动“狙击 - *”

现在,Snips准备从麦克风中获取语音命令。为了触发聆听,只需说

嘿,剪

然后是命令,例如

将灯光放在客厅的绿色

随着STHIPS平台将此查询解析为意图,它将在MQTT上发布,爱马仕/intent/话题。STHIPS Hom必威是什么e Assistant集成订阅了此主题,并根据定义的规则处理意图configuration.yaml文件,如下所述。

可选:指定外部MQTT经纪人

默认情况下,Snips运行自己的MQTT经纪人。但是,我们还可以告诉Ships在启动狙击时指定此功能来使用外部经纪人。在这种情况下,我们需要在/etc/snips.toml配置文件。有关配置此信息的更多信息,请参阅SNIPS平台配置文章。

必威是什么家庭助理配置

配置变量

反馈_sounds 细绳 ((选修的,默认:false

打开折磨的反馈声音。

site_ids 细绳 ((选修的

如果使用多个狙击实例,则列表。用于确保所有站点打开或关闭反馈。

概率_threshold 漂浮

意图概率的阈值。范围从0.00到1.00,1个最高匹配。此级别下的意图被丢弃。

指定MQTT经纪人

狙击和家庭助理之间的消息通过MQTT传递。必威是什么如上所述,我们可以指向家庭助理使用的MQTT经纪人,或告诉家庭助理哪个必威是什么MQTT经纪人通过将以下条目添加到configuration.yaml文件:

mqtt经纪人mqtt_broker_ip港口mqtt_broker_port

默认情况下,SNIPS在端口9898上运行MQTT代理。因此,如果我们想使用此经纪人,并且如果Snips和Home Assistant在同一设备上运行,则该条目将如下:必威是什么

mqtt经纪人127.0.0.1港口9898

另外,如果使用自定义MQTT代理,例如蚊子

触发动作

在家庭必威是什么助理中,我们触发了基于Snips产生的意图的操作intent_script零件。例如,以下块处理AActivatelightColor意图改变浅色:

注意:如果您的狙击操作带有用户名(例如,约翰:游戏机或者John__playmusic),在家庭助理中进行的狙击集成将尝试剥离用户名。必威是什么如果有错误,请记住这一点收到未知的意图即使您在MQTT总线上看到的东西看起来正确。在内部,狙击集成正试图匹配意图的非描述版本(即播放音乐)。

intent_scriptActivatelightColor行动-服务light.turn_on目标ENTITY_ID'光。{{对象集|代替(”“,” _”)}}'数据color_name{{{objectColor}}””

在里面数据块,我们可以访问与意图的插槽名称相对应的特殊变量。在本案中,ActivatelightColor有两个插槽,对象集objectColor

特殊插槽

插槽的几个特殊值siteID意图起源于意图的概率值,SessionID通过对话经理生成,slote_nameRAW将包含插槽值的原始,未解释的文本。

在上面的示例中,插槽是普通字符串。但是,SNIPS具有用于设置计时器的持续时间内置值,这将被解析为秒值。

在此示例中,如果我们的意图触发了“设置计时器五分钟”,期间:将等于300和lisation_raw:将设置为“五分钟”。该持续时间可以轻松用于触发家庭助理事件和必威是什么lisation_raw:可以用来发送人类可读的响应或警报。

Settimer演讲类型清楚的文本一种计时器”行动服务script.set_timer数据姓名{{{timer_name}}””期间{{{timer_duration}}””siteID{{{site_id}}””SessionID{{{session_id}}””lisation_raw{{{RAW_VALUE}}””可能性{{{可能性}}””

发送TTS通知

您可以使用TTS通知发送TTS通知snips.saysnips.say_action服务。say_action开始一个会话,然后等待用户响应:“您要我关闭车库门吗?”,“是的,关闭车库门”。

服务片段

服务数据属性 选修的 描述
文本 要说的文字。
site_id 是的 用于开始会话的网站。
custom_data 是的 本节中所有消息都包含的自定义数据。

服务示例

服务数据属性 选修的 描述
文本 要说的文字。
site_id 是的 用于开始会话的网站。
custom_data 是的 本节中所有消息都包含的自定义数据。
can_be_enqueed 是的 如果为true,则会等待开放会话结束,如果一个人正在运行,则删除了错误的会话。
intent_filter 是的 字符串数组 - 将NLU分辨率限制为第一个查询的意图名称列表。

配置示例

打开灯

intent_script打开灯演讲类型清楚的文本好的,光”行动服务light.turn_on
打开车库门
intent_scriptOpengaragedoor演讲类型清楚的文本好的,开场车库门”行动-服务cover.open_cover目标ENTITY_IDGarage_door
直接查询

这是一个更复杂的示例。如果车库门打开超过10分钟,则会触发自动化。然后,Snips会问您是否要关闭它,如果您用“关闭车库门”之类的响应,它将这样做。不幸的是,没有内置的支持是,没有回应。

自动化Garage_door_has_been_open扳机-平台状态ENTITY_IDbinary_sensor.my_garage_door_sensor离开”在”为了分钟10顺序服务snips.say_action数据文本车库拥有到过打开10分钟,关闭它?”intent_filter-Closegaragedoor#如果用户在上述通知之后以适当的意图做出响应,则会发出此意图intent_scriptClosegaragedoor演讲类型清楚的文本好的,关闭车库门”行动-服务script.garage_door_close
天气

因此,现在您可以打开并关闭车库门,让我们检查天气。通过SNIPS技能将天气添加到您的助手。在此示例中创建天气传感器黑暗SKapi_key在里面Secrets.yaml文件。

-平台阴暗的天空姓名黑暗的天空天气”api_key!秘密dark_sky_keyscan_interval分钟10监视_conditions-概括-hourly_summary-温度-温度_max-温度_min

然后将其添加到您的配置文件中。

intent_scriptSearchWeatherForecast演讲类型清楚的文本>天气目前是{{states('sensor.dark_sky_weather_temperature')|(0)}}}外部度和{{states('sensor.dark_sky_weather_summary')}}}。今天的高点将是{{states('sensor.dark_sky_weather_daily_high_high_temperature')|(0)}}}和{{states('sensor.dark_sky_weather_hourly_summary')}}}