Mycroft 核心不再维护,可能无法再在您的计算机上运行。 Open Voice OS 和 Neon-core 都是 Mycroft 的精神继承者。 (一些旧代码可能还存在。)
Mycroft 是一个可破解的开源语音助手。
首先,获取您系统上的代码!最简单的方法是通过 git (git 安装说明):
cd ~/
git clone https://github.com/MycroftAI/mycroft-core.git
cd mycroft-core
bash dev_setup.sh
该脚本设置依赖项和 virtualenv。如果在 Ubuntu/Debian、Arch 或 Fedora 之外的环境中运行,您可能需要按照 dev_setup.sh 的指示手动安装软件包。
注意:此存储库的默认分支是“dev”,应将其视为正在进行的工作。如果您想克隆更稳定的版本,请切换到“master”分支。
Mycroft 提供start-mycroft.sh
来执行常见任务。该脚本使用dev_setup.sh
创建的 virtualenv 。假设您在主目录中安装了 mycroft-core ,运行:
cd ~/mycroft-core
./start-mycroft.sh debug
“debug”命令将启动后台服务(麦克风侦听器、技能、消息总线和音频子系统),并启动基于文本的命令行界面 (CLI),您可以使用它与 Mycroft 交互并查看文件的内容各种日志。或者,您可以运行./start-mycroft.sh all
来启动服务,而无需使用命令行界面。稍后您可以使用./start-mycroft.sh cli
启动 CLI。
可以通过以下方式将后台服务作为一个组停止:
./stop-mycroft.sh
Mycroft AI, Inc. 维护着一个名为 Mycroft Home 的设备和帐户管理系统。开发者可以在以下网址注册:https://home.mycroft.ai
默认情况下,mycroft-core 配置为使用 Home。通过说“嘿 Mycroft,配对我的设备”(或任何其他请求口头请求),您将被告知您的设备需要配对。 Mycroft 将说出一个 6 位代码,您可以将其输入 Mycroft Home 站点内的配对页面。
配对后,您的设备将使用 Mycroft API 密钥来提供语音转文本 (STT)、天气和各种其他技能等服务。
没有技能,麦克罗夫特就什么都不是。有一些默认技能会自动下载到/opt/mycroft/skills
目录,但大多数需要明确安装。请参阅技能存储库以发现其他人创造的技能。请分享您自己有趣的作品!
通过注册 Home 生成的配对信息存储在: ~/.config/mycroft/identity/identity2.json
<-- 请勿与其他人共享!
Mycroft 的配置由 4 个可能的位置组成:
mycroft-core/mycroft/configuration/mycroft.conf
(默认)/etc/mycroft/mycroft.conf
(机器)$XDG_CONFIG_DIR/mycroft/mycroft.conf
(默认为$HOME/.config/mycroft/mycroft.conf
)(用户)当配置加载器启动时,它会按顺序查找这些位置,并加载所有配置。存在于多个配置文件中的键将被最后一个包含该值的文件覆盖。此过程会导致为特定设备和用户写入最少量的内容,而无需修改默认分发文件。
如果您不想使用 Mycroft Home 服务,请在首次启动 Mycroft 之前,使用以下内容创建$HOME/.config/mycroft/mycroft.conf
:
{
"skills": {
"blacklisted_skills": [
"mycroft-configuration.mycroftai",
"mycroft-pairing.mycroftai"
]
}
}
Mycroft 后端提供对特定服务的一系列 API 密钥的访问。如果不与 Mycroft 后端配对,您将需要添加自己的 API 密钥、安装不同的技能或插件来执行该功能,或者无法访问该功能。
这些是当前通过 Mycroft 后端在 Mycroft Core 中使用的密钥:
许多学校、大学和工作场所在其网络上运行proxy
。如果您需要输入用户名和密码才能访问外部互联网,那么您很可能使用了proxy
。
如果您计划在代理后面使用 Mycroft,那么您将需要执行额外的配置步骤。
注意:为了完成此步骤,您需要知道代理服务器的hostname
和port
。您的网络管理员将能够提供这些详细信息。您的网络管理员可能需要有关 Mycroft 将使用的流量类型的信息。我们在端口443
上使用https
流量,主要用于访问基于 ReST 的 API。
如果您在没有身份验证的情况下在代理后面使用 Mycroft,请添加以下环境变量,更改proxy_hostname.com
和proxy_port
作为您的网络的值。这些命令是从 Linux 命令行界面 (CLI) 执行的。
$ export http_proxy=http://proxy_hostname.com:proxy_port
$ export https_port=http://proxy_hostname.com:proxy_port
$ export no_proxy= " localhost,127.0.0.1,localaddress,.localdomain.com,0.0.0.0,::1 "
如果您位于需要身份验证的代理后面,请添加以下环境变量,更改proxy_hostname.com
和proxy_port
作为您的网络的值。这些命令是从 Linux 命令行界面 (CLI) 执行的。
$ export http_proxy=http://user:password@proxy_hostname.com:proxy_port
$ export https_port=http://user:password@proxy_hostname.com:proxy_port
$ export no_proxy= " localhost,127.0.0.1,localaddress,.localdomain.com,0.0.0.0,::1 "
这是一个开源项目。我们希望得到您的帮助。我们准备了一份贡献指南来帮助您入门。
如果这是您的第一个 PR,或者您不确定从哪里开始,请在 Mycroft Chat 中打个招呼,团队成员将很乐意为您提供指导。加入 Mycroft 论坛获取问题和解答。