forked from HaujetZhao/CapsWriter-Offline
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.example.yml
More file actions
91 lines (84 loc) · 4.8 KB
/
Copy pathdocker-compose.example.yml
File metadata and controls
91 lines (84 loc) · 4.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
services:
capswriter-server:
image: ${CAPSWRITER_SERVER_IMAGE:-ghcr.io/df-wu/capswriter-offline-server:latest}
restart: unless-stopped
security_opt:
- no-new-privileges:true
cap_drop:
- ALL
# The base file is portable on CPU-only Docker hosts. Add the explicit
# docker-compose.gpu.yml (NVIDIA) or docker-compose.igpu.yml (Intel/AMD)
# override only when that class of device should be exposed.
environment:
CAPSWRITER_MODEL_TYPE: ${CAPSWRITER_MODEL_TYPE:-qwen_asr}
CAPSWRITER_QWEN_PRESET: ${CAPSWRITER_QWEN_PRESET:-default}
CAPSWRITER_INFERENCE_HARDWARE: ${CAPSWRITER_INFERENCE_HARDWARE:-auto}
CAPSWRITER_REMOVE_MODEL_ARCHIVES: ${CAPSWRITER_REMOVE_MODEL_ARCHIVES:-false}
CAPSWRITER_SERVER_ADDR: 0.0.0.0
CAPSWRITER_SERVER_PORT: ${CAPSWRITER_SERVER_PORT:-6016}
CAPSWRITER_SERVER_MAX_WEBSOCKET_CONNECTIONS: ${CAPSWRITER_SERVER_MAX_WEBSOCKET_CONNECTIONS:-8}
CAPSWRITER_SERVER_MAX_WEBSOCKET_TASK_SECONDS: ${CAPSWRITER_SERVER_MAX_WEBSOCKET_TASK_SECONDS:-3600}
# Optional browser/API clients. Set CAPSWRITER_HTTP_API_ENABLE=true
# and publish CAPSWRITER_HTTP_API_PORT when you want host access.
CAPSWRITER_HTTP_API_ENABLE: ${CAPSWRITER_HTTP_API_ENABLE:-false}
CAPSWRITER_HTTP_API_BIND: ${CAPSWRITER_HTTP_API_BIND:-0.0.0.0}
CAPSWRITER_HTTP_API_PORT: ${CAPSWRITER_HTTP_API_PORT:-6017}
CAPSWRITER_HTTP_API_KEY: ${CAPSWRITER_HTTP_API_KEY:-}
CAPSWRITER_HTTP_API_KEY_FILE: ${CAPSWRITER_HTTP_API_KEY_FILE:-}
CAPSWRITER_HTTP_API_ALLOW_INSECURE_BIND: ${CAPSWRITER_HTTP_API_ALLOW_INSECURE_BIND:-false}
CAPSWRITER_HTTP_API_MAX_UPLOAD_MB: ${CAPSWRITER_HTTP_API_MAX_UPLOAD_MB:-100}
CAPSWRITER_HTTP_API_MAX_AUDIO_SECONDS: ${CAPSWRITER_HTTP_API_MAX_AUDIO_SECONDS:-3600}
CAPSWRITER_HTTP_API_TASK_TIMEOUT: ${CAPSWRITER_HTTP_API_TASK_TIMEOUT:-600}
CAPSWRITER_HTTP_API_MAX_CONCURRENT_REQUESTS: ${CAPSWRITER_HTTP_API_MAX_CONCURRENT_REQUESTS:-2}
CAPSWRITER_HTTP_API_MAX_PENDING_REQUESTS: ${CAPSWRITER_HTTP_API_MAX_PENDING_REQUESTS:-4}
CAPSWRITER_HTTP_API_CORS_ORIGINS: ${CAPSWRITER_HTTP_API_CORS_ORIGINS:-}
CAPSWRITER_HTTP_API_LOG_TRANSCRIPTS: ${CAPSWRITER_HTTP_API_LOG_TRANSCRIPTS:-false}
CAPSWRITER_ENABLE_TRAY: "false"
CAPSWRITER_LOG_LEVEL: ${CAPSWRITER_LOG_LEVEL:-INFO}
CAPSWRITER_LOG_DIR: /app/logs
CAPSWRITER_NUM_THREADS: ${CAPSWRITER_NUM_THREADS:-4}
CAPSWRITER_MODEL_DOWNLOAD_TIMEOUT: ${CAPSWRITER_MODEL_DOWNLOAD_TIMEOUT:-60}
CAPSWRITER_MODEL_BOOTSTRAP_LOCK_TIMEOUT: ${CAPSWRITER_MODEL_BOOTSTRAP_LOCK_TIMEOUT:-1800}
CAPSWRITER_BACKEND_PROBE_TIMEOUT: ${CAPSWRITER_BACKEND_PROBE_TIMEOUT:-300}
CAPSWRITER_ENGINE_FFMPEG_TIMEOUT: ${CAPSWRITER_ENGINE_FFMPEG_TIMEOUT:-120}
CAPSWRITER_GPU_BOOST_TIMEOUT: ${CAPSWRITER_GPU_BOOST_TIMEOUT:-5}
CAPSWRITER_SERVER_MODEL_LOAD_TIMEOUT: ${CAPSWRITER_SERVER_MODEL_LOAD_TIMEOUT:-600}
CAPSWRITER_SERVER_WORKER_STOP_TIMEOUT: ${CAPSWRITER_SERVER_WORKER_STOP_TIMEOUT:-2}
CAPSWRITER_SERVER_WORKER_STALL_TIMEOUT: ${CAPSWRITER_SERVER_WORKER_STALL_TIMEOUT:-900}
CAPSWRITER_QWEN_CHUNK_SIZE: ${CAPSWRITER_QWEN_CHUNK_SIZE:-}
CAPSWRITER_QWEN_N_CTX: ${CAPSWRITER_QWEN_N_CTX:-}
CAPSWRITER_QWEN_MEMORY_NUM: ${CAPSWRITER_QWEN_MEMORY_NUM:-}
CAPSWRITER_QWEN_PAD_TO: ${CAPSWRITER_QWEN_PAD_TO:-}
CAPSWRITER_FUNASR_ENABLE_CTC: ${CAPSWRITER_FUNASR_ENABLE_CTC:-}
CAPSWRITER_FUNASR_N_PREDICT: ${CAPSWRITER_FUNASR_N_PREDICT:-}
CAPSWRITER_FUNASR_PAD_TO: ${CAPSWRITER_FUNASR_PAD_TO:-}
CAPSWRITER_FUNASR_MAX_HOTWORDS: ${CAPSWRITER_FUNASR_MAX_HOTWORDS:-}
CAPSWRITER_FUNASR_SIMILAR_THRESHOLD: ${CAPSWRITER_FUNASR_SIMILAR_THRESHOLD:-}
CAPSWRITER_QWEN_LLAMA_N_BATCH: ${CAPSWRITER_QWEN_LLAMA_N_BATCH:-}
CAPSWRITER_QWEN_LLAMA_N_UBATCH: ${CAPSWRITER_QWEN_LLAMA_N_UBATCH:-}
CAPSWRITER_QWEN_LLAMA_FLASH_ATTN: ${CAPSWRITER_QWEN_LLAMA_FLASH_ATTN:-}
CAPSWRITER_QWEN_LLAMA_OFFLOAD_KQV: ${CAPSWRITER_QWEN_LLAMA_OFFLOAD_KQV:-}
CAPSWRITER_INTERACTIVE_ERRORS: "false"
NVIDIA_DRIVER_CAPABILITIES: compute,utility,graphics
ports:
- "${CAPSWRITER_SERVER_PUBLISH_HOST:-127.0.0.1}:${CAPSWRITER_SERVER_PORT:-6016}:${CAPSWRITER_SERVER_PORT:-6016}"
# Optional HTTP API host access:
# - "${CAPSWRITER_HTTP_API_PUBLISH_HOST:-127.0.0.1}:${CAPSWRITER_HTTP_API_PORT:-6017}:${CAPSWRITER_HTTP_API_PORT:-6017}"
volumes:
- capswriter-server-models:/app/models
- type: bind
source: ./hot-server.txt
target: /app/hot-server.txt
read_only: true
bind:
create_host_path: false
- capswriter-server-logs:/app/logs
healthcheck:
test: ["CMD", "python", "docker/server/healthcheck.py"]
interval: 30s
timeout: 5s
start_period: 20m
retries: 5
volumes:
capswriter-server-models:
capswriter-server-logs: