173 lines
4.1 KiB
Markdown
173 lines
4.1 KiB
Markdown
# VOSK 模型本地服务器配置说明
|
||
|
||
## 快速开始
|
||
|
||
### 方法一:使用启动脚本(推荐)
|
||
|
||
**Windows 用户:**
|
||
1. 双击运行 `启动服务器.bat`
|
||
2. 服务器会自动启动并显示访问地址
|
||
|
||
**Linux/Mac 用户:**
|
||
1. 给脚本添加执行权限:
|
||
```bash
|
||
chmod +x 启动服务器.sh
|
||
```
|
||
2. 运行脚本:
|
||
```bash
|
||
./启动服务器.sh
|
||
```
|
||
|
||
### 方法二:手动启动
|
||
|
||
1. 打开终端/命令行
|
||
2. 进入项目目录
|
||
3. 运行命令:
|
||
```bash
|
||
python server.py
|
||
# 或
|
||
python3 server.py
|
||
```
|
||
|
||
## 服务器配置
|
||
|
||
### 端口配置
|
||
|
||
默认端口为 `8080`,如需修改:
|
||
|
||
1. 编辑 `server.py` 文件
|
||
2. 找到 `PORT = 8080` 这一行
|
||
3. 修改为你想要的端口号,例如:`PORT = 9090`
|
||
|
||
### 模型文件位置
|
||
|
||
服务器会自动从 `static` 目录读取模型文件:
|
||
- 模型文件路径:`static/vosk-model-small-cn-0.22.zip`
|
||
- 确保该文件存在
|
||
|
||
## 获取服务器地址
|
||
|
||
启动服务器后,会显示如下信息:
|
||
|
||
```
|
||
============================================================
|
||
VOSK 模型服务器已启动
|
||
============================================================
|
||
本地访问: http://localhost:8080/vosk-model-small-cn-0.22.zip
|
||
局域网访问: http://192.168.1.100:8080/vosk-model-small-cn-0.22.zip
|
||
============================================================
|
||
在 APP 中配置服务器地址为上述局域网地址
|
||
按 Ctrl+C 停止服务器
|
||
============================================================
|
||
```
|
||
|
||
### 地址说明
|
||
|
||
- **本地访问** (`localhost:8080`):仅本机可访问
|
||
- **局域网访问** (`192.168.1.100:8080`):同一局域网内的设备都可以访问
|
||
|
||
## 在 APP 中配置
|
||
|
||
### 方式一:通过界面配置(推荐)
|
||
|
||
1. 打开 APP,进入主页面
|
||
2. 找到"模型服务器配置"区域
|
||
3. 输入局域网访问地址,例如:
|
||
```
|
||
http://192.168.1.100:8080/vosk-model-small-cn-0.22.zip
|
||
```
|
||
4. 输入完成后,配置会自动保存
|
||
|
||
### 方式二:自动配置(需修改代码)
|
||
|
||
如果你想自动使用本地服务器地址,可以修改代码:
|
||
|
||
在 `pages/speech/speech.vue` 或 `pages/index/index.vue` 中,取消注释以下代码:
|
||
|
||
```javascript
|
||
// 如果需要在代码中直接配置默认服务器地址,可以取消下面的注释
|
||
if (!serverUrl.value) {
|
||
serverUrl.value = 'http://192.168.1.100:8080/vosk-model-small-cn-0.22.zip'
|
||
}
|
||
```
|
||
|
||
**注意**:将 `192.168.1.100` 替换为你的实际局域网 IP 地址
|
||
|
||
## 获取本机局域网 IP 地址
|
||
|
||
### Windows
|
||
|
||
1. 打开命令提示符(CMD)
|
||
2. 运行命令:
|
||
```cmd
|
||
ipconfig
|
||
```
|
||
3. 找到"IPv4 地址",通常是 `192.168.x.x` 格式
|
||
|
||
### Linux/Mac
|
||
|
||
1. 打开终端
|
||
2. 运行命令:
|
||
```bash
|
||
ifconfig
|
||
# 或
|
||
ip addr show
|
||
```
|
||
3. 找到局域网 IP 地址(通常在 `eth0` 或 `en0` 接口下)
|
||
|
||
## 防火墙配置
|
||
|
||
如果其他设备无法访问服务器,可能需要配置防火墙:
|
||
|
||
### Windows
|
||
|
||
1. 打开"Windows Defender 防火墙"
|
||
2. 点击"高级设置"
|
||
3. 新建入站规则
|
||
4. 选择"端口",允许 TCP 端口 `8080`
|
||
|
||
### Linux (Ubuntu/Debian)
|
||
|
||
```bash
|
||
sudo ufw allow 8080/tcp
|
||
```
|
||
|
||
### Mac
|
||
|
||
1. 系统偏好设置 → 安全性与隐私 → 防火墙
|
||
2. 点击"防火墙选项"
|
||
3. 添加 Python 应用程序的允许规则
|
||
|
||
## 常见问题
|
||
|
||
### Q: 端口被占用怎么办?
|
||
|
||
A: 修改 `server.py` 中的 `PORT` 变量,使用其他端口号(如 9090、8888 等)
|
||
|
||
### Q: 手机无法访问服务器?
|
||
|
||
A: 确保:
|
||
1. 手机和电脑在同一局域网(WiFi)下
|
||
2. 防火墙允许端口访问
|
||
3. 使用局域网 IP 地址(不是 localhost)
|
||
|
||
### Q: 如何停止服务器?
|
||
|
||
A: 在服务器运行窗口中按 `Ctrl + C`
|
||
|
||
## 服务器特性
|
||
|
||
- ✅ 支持 CORS 跨域访问
|
||
- ✅ 自动获取本机局域网 IP
|
||
- ✅ 支持大文件下载(模型文件约 40MB)
|
||
- ✅ 自动检查模型文件是否存在
|
||
- ✅ 友好的错误提示
|
||
|
||
## 注意事项
|
||
|
||
1. **确保模型文件存在**:`static/vosk-model-small-cn-0.22.zip`
|
||
2. **网络连接**:手机和电脑必须在同一局域网
|
||
3. **防火墙**:确保防火墙允许端口访问
|
||
4. **首次下载**:首次从服务器下载模型需要一些时间,请耐心等待
|
||
|