麦克风安全上下文改由部署方案解决:本机用 localhost, 对外部署挂 HTTPS 反向代理。删除 certs/、gen-cert.sh、 /cert 路由与 HTTPS server 分支,文档同步更新。 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
47 lines
1.4 KiB
Bash
Executable File
47 lines
1.4 KiB
Bash
Executable File
#!/bin/bash
|
||
# ============================================================
|
||
# 乘法口诀 —— 新电脑一键部署脚本(macOS)
|
||
# 作用:检查/安装依赖(ffmpeg + whisper-cpp) → 补齐模型 → 启动服务
|
||
# 幂等:已装的会跳过,可反复运行
|
||
# ============================================================
|
||
set -e
|
||
cd "$(dirname "$0")"
|
||
echo "==== 乘法口诀 部署脚本 ===="
|
||
|
||
# 1) Node
|
||
if ! command -v node >/dev/null 2>&1; then
|
||
echo "❌ 未检测到 Node.js,请先安装:https://nodejs.org 或 brew install node"
|
||
exit 1
|
||
fi
|
||
echo "✅ Node $(node -v)"
|
||
|
||
# 2) Homebrew
|
||
if ! command -v brew >/dev/null 2>&1; then
|
||
echo "❌ 未检测到 Homebrew,请先安装:https://brew.sh"
|
||
exit 1
|
||
fi
|
||
|
||
# 3) ffmpeg + whisper-cli
|
||
NEED=""
|
||
command -v ffmpeg >/dev/null 2>&1 || NEED="$NEED ffmpeg"
|
||
command -v whisper-cli >/dev/null 2>&1 || NEED="$NEED whisper-cpp"
|
||
if [ -n "$NEED" ]; then
|
||
echo "📦 安装依赖:$NEED"
|
||
brew install $NEED
|
||
else
|
||
echo "✅ ffmpeg / whisper-cli 已就绪"
|
||
fi
|
||
|
||
# 4) 模型(缺则下载 small;base 可选)
|
||
mkdir -p models
|
||
if [ ! -f models/ggml-small.bin ]; then
|
||
echo "⬇️ 下载 small 模型 (465MB)…"
|
||
curl -L -o models/ggml-small.bin https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-small.bin
|
||
else
|
||
echo "✅ 模型 ggml-small.bin 已存在"
|
||
fi
|
||
|
||
echo ""
|
||
echo "==== 部署完成,启动服务 ===="
|
||
exec node server.js
|