

如何在Linux上安装Speaches以配合Trilium AI使用
-
如何在Linux上安装Speaches以配合Trilium AI使用
目录Speaches是基地的Trilium AI插件的后端配套语音转录服务工具。本文将探讨如何在主机(而非通过 Docker 容器)上全新安装Speaches ,并希望能直接用官方推荐的方式(含 CLI 工具和模型管理)运行。 首先,可参考官方 Speaches 本地部署指令。
Python (requires Python 3.12+ and uv package manager) git clone https://github.com/speaches-ai/speaches.git cd speaches uv venv source .venv/bin/activate uv sync --all-extras uvicorn --factory --host 0.0.0.0 speaches.main:create_app
以下将逐行解释,并提供完整的、标准的主机本地部署流程。
一、环境前提
- Python 3.12+(务必用新版)
- uv 包管理器(不是pip,uv官方文档)
二、详细步骤
1. 安装 Python 3.12+ (按需)
Ubuntu 用户可这样安装最新版 Python(如未自带3.12):
sudo apt update sudo apt install -y software-properties-common sudo add-apt-repository ppa:deadsnakes/ppa sudo apt update sudo apt install -y python3.12 python3.12-venv python3.12-dev
2. 安装 uv 包管理器
uv 是一个高速的 Python 包管理工具,比 pip 更快更现代。
sudo apt install pip sudo pip install uv uv --version
3. 克隆 Speaches 源码
git clone https://github.com/speaches-ai/speaches.git cd speaches
4. 创建虚拟环境
官方用法:
uv venv
这会自动创建
.venv
虚拟环境目录。5. 激活虚拟环境
source .venv/bin/activate
6. 安装所有依赖(含所有扩展)
uv sync --all-extras
> 这一步会自动解析 pyproject.toml,安装所有依赖,等价于
pip install -e .[all]
。7. 启动服务
uvicorn --factory --host 0.0.0.0 speaches.main:create_app
- 这会监听所有网卡8000端口(可用
--port 8000
指定端口) - 默认可以直接访问 http://localhost:8000/docs 查看API文档
三、模型下载与管理
激活虚拟环境后,也可以用官方 CLI 下载模型:
查询可用模型
uvx speaches-cli registry ls --task automatic-speech-recognition
下载模型
uvx speaches-cli model download Systran/faster-whisper-medium
或查上一步输出的模型ID下载查看已安装模型
uvx speaches-cli model ls --task automatic-speech-recognition
四、实现开机时自动启动
大多数现代 Linux 发行版(如 Ubuntu, Debian, CentOS, Fedora)都使用
systemd
来管理系统服务。这是最稳定和推荐的方法。第 1 步:创建服务文件
首先,我们需要创建一个
systemd
服务单元文件。使用您喜欢的文本编辑器(如
nano
或vim
)创建一个新文件:sudo nano /etc/systemd/system/speaches.service
然后,将以下内容复制并粘贴到文件中。
[Unit] Description=Speaches OpenAI Compatible Server After=network.target [Service] # 运行服务的用户和用户组,建议使用您的普通用户名 User=your_username Group=your_username # 替换为您的项目实际所在的目录 WorkingDirectory=/path/to/your/project/speaches # 服务的启动命令。注意这里使用的是虚拟环境中的uvicorn ExecStart=/path/to/your/project/speaches/.venv/bin/uvicorn --factory --host 0.0.0.0 speaches.main:create_app # 确保服务在失败时会自动重启 Restart=on-failure RestartSec=5s [Install] WantedBy=multi-user.target
重要:
User
和Group
: 将your_username
替换为你登录 Linux 系统的用户名。WorkingDirectory
: 将/path/to/your/project/speaches
替换为speaches
项目的 绝对路径。ExecStart
: 同样,将/path/to/your/project/speaches
替换为项目的绝对路径。这里我们直接指定了虚拟环境.venv/bin/
中的uvicorn
可执行文件,这样可以确保使用了正确的 Python 环境和依赖。
第 2 步:重载、启用并启动服务
保存并关闭 编辑器 (在
nano
中,按Ctrl+X
,然后按Y
,再按Enter
)。重载
systemd
,使其识别到新的服务文件:sudo systemctl daemon-reload
启用服务,这样它就会在开机时自动启动:
sudo systemctl enable speaches.service
立即启动服务,无需重启电脑:
sudo systemctl start speaches.service
第 3 步:检查服务状态
你可以随时检查服务的运行状态,看看是否有错误:
sudo systemctl status speaches.service
如果看到
active (running)
,说明服务已成功运行。还可以使用journalctl -u speaches.service -f
来实时查看服务的日志输出。附录:关于硬件配置与类似工具
speaches
采用的是 Faster-Whisper 后端,其资源消耗和 Faster-Whisper 基本一致。官方文档建议:对于 production,推荐16GB内存、8核CPU、带8GB显存的NVIDIA显卡。
具体来说,可以区分如下情况
- 个人测试/轻量使用:4核CPU + 8G内存 + 50G硬盘(可无GPU,速度慢)
- 小团队/小型服务:8核CPU + 16G内存 + 100G硬盘 + 8GB显存GPU
- 中大型/多用户:16核CPU + 32G内存 + 200G硬盘 + 16GB+显存GPU
类似工具,可以重点关注:
- 需要说话人分离/逐词字幕:
WhisperX
(或 whisper-diarize) - 需要本地批量、极简命令行:
whisper-ctranslate2
、whisper-standalone-win
- 需要后期人工校对/字幕编辑:
wscribe
- 需要实时转写:
Whisper-Streaming
、WhisperLive
- 只要极简 API:
Whisper-FastAPI
歡迎留言回复交流。
Log in to reply.