Modification of the STT structure timeout

This commit is contained in:
2026-09-22 11:37:59 +03:30
parent d53136d91c
commit 42db5919e1
6 changed files with 115 additions and 140 deletions
+18 -32
View File
@@ -1,22 +1,21 @@
# Montact STT (Pipecat — Whisper محلی)
# Montact STT — Whisper محلی (بدون GapGPT)
تبدیل صوت به متن — فقط STT. بدون TTS، بدون مکالمهٔ صوتی، **بدون GapGPT**.
تبدیل صوت به متن روی همین سرور با **Faster-Whisper** (همان موتوری که [Pipecat](https://www.pipecat.ai/) برای STT محلی استفاده می‌کند).
کلید ابری لازم نیست.
از [Pipecat](https://www.pipecat.ai/) سرویس `WhisperSTTService` استفاده می‌شود؛ مدل Faster-Whisper روی **همین سرور** اجرا می‌شود و کلید ابری لازم نیست.
## نصب
## لوکال (ویندوز)
Python 3.11+ و ترجیحاً `ffmpeg`.
Python 3.11+ و ترجیحاً `ffmpeg` در PATH.
```powershell
```bash
cd apps/stt
py -3.11 -m venv .venv
.\.venv\Scripts\Activate.ps1
python3.11 -m venv .venv
source .venv/bin/activate # ویندوز: .\.venv\Scripts\Activate.ps1
pip install -r requirements.txt
copy .env.example .env
cp .env.example .env
```
```powershell
```bash
uvicorn main:app --host 127.0.0.1 --port 3040
```
@@ -25,31 +24,18 @@ uvicorn main:app --host 127.0.0.1 --port 3040
```
STT_ENABLED=true
STT_URL=http://127.0.0.1:3040
STT_TIMEOUT_MS=180000
STT_INTERNAL_TOKEN=
```
## تنظیمات `apps/stt/.env`
## تنظیمات
| کلید | پیش‌فرض | توضیح |
| کلید | پیشنهاد | توضیح |
|------|---------|--------|
| `STT_MODEL` | `small` | `tiny` / `base` / `small` / `medium` (فارسی: حداقل `small`) |
| `STT_DEVICE` | `cpu` | یا `cuda` اگر GPU دارید |
| `STT_COMPUTE_TYPE` | `int8` | برای CPU؛ روی GPU معمولاً `float16` |
| `STT_PROMPT` | متن فارسی فروش | راهنمای املا/اصطلاحات |
| `STT_INTERNAL_TOKEN` | خالی | اگر پر شود باید با API یکی باشد |
| `STT_MODEL` | `base` | `tiny` سبک‌تر، `small` دقیق‌تر برای فارسی |
| `STT_DEVICE` | `cpu` | یا `cuda` |
| `STT_COMPUTE_TYPE` | `int8` | روی GPU معمولاً `float16` |
**دیگر به `OPENAI_API_KEY` / GapGPT برای دیکته نیاز نیست.**
نام‌های ابری مثل `whisper-1` را نگذارید (اگر بماند خودکار به `base` نگاشت می‌شود).
اولین اجرا مدل را از Hugging Face دانلود می‌کند (چند صد مگابایت تا چند گیگ و بسته به مدل).
## سرور
```bash
cd /var/www/crm/apps/stt
source .venv/bin/activate # یا مسیر venv فعلی
pip install -r requirements.txt
# OPENAI_* را از .env بردارید یا نادیده بگیرید
pm2 restart mento-stt
```
اگر RAM کم است، `STT_MODEL=base` یا `tiny` بگذارید.
اولین اجرا مدل را دانلود می‌کند. وضعیت: `curl -s http://127.0.0.1:3040/health` — وقتی `"ready": true` شد آماده است.