-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathconfig.example.toml
More file actions
317 lines (259 loc) · 12.6 KB
/
Copy pathconfig.example.toml
File metadata and controls
317 lines (259 loc) · 12.6 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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
[app]
video_source = "pexels" # "pexels" or "pixabay"
# 是否隐藏配置面板
hide_config = false
# Azure TTS V1(edge_tts) 单次流式请求超时时间,单位秒。
# 网络异常、服务端限流或 voice 与文本语言不匹配时,edge_tts 可能长期卡住。
# 默认 30 秒可避免 WebUI 任务无反馈;慢网络或代理环境可适当调大。
# 设置为 0 表示禁用超时。
edge_tts_timeout = 30
# 是否校验外部 API 和素材下载的 TLS 证书。
# 默认必须开启,避免 Pexels/Pixabay API key 和下载素材被中间人攻击篡改。
# 只有在企业代理或自签证书环境明确需要时,才临时改为 false。
tls_verify = true
# Pexels API Key
# Register at https://www.pexels.com/api/ to get your API key.
# You can use multiple keys to avoid rate limits.
# For example: pexels_api_keys = ["123adsf4567adf89","abd1321cd13efgfdfhi"]
# 特别注意格式,Key 用英文双引号括起来,多个Key用逗号隔开
pexels_api_keys = []
# Pixabay API Key
# Register at https://pixabay.com/api/docs/ to get your API key.
# You can use multiple keys to avoid rate limits.
# For example: pixabay_api_keys = ["123adsf4567adf89","abd1321cd13efgfdfhi"]
# 特别注意格式,Key 用英文双引号括起来,多个Key用逗号隔开
pixabay_api_keys = []
# 支持的提供商 (Supported providers):
# openai
# moonshot (月之暗面)
# azure
# qwen (通义千问)
# deepseek
# gemini
# ollama
# g4f (disabled by default; set enable_g4f=true only after accepting its risks)
# oneapi
# cloudflare
# minimax
# mimo (Xiaomi MiMo)
# ernie (文心一言)
# modelscope (魔搭社区)
# litellm (100+ providers via LiteLLM gateway)
llm_provider = "openai"
########## Pollinations AI Settings
# Visit https://pollinations.ai/ to learn more
# API Key is optional - leave empty for public access
pollinations_api_key = ""
# Default base URL for Pollinations API
pollinations_base_url = "https://pollinations.ai/api/v1"
# Default model for text generation
pollinations_model_name = "openai-fast"
########## Ollama Settings
# No need to set it unless you want to use your own proxy
ollama_base_url = ""
# Check your available models at https://ollama.com/library
ollama_model_name = ""
########## OpenAI API Key
# Get your API key at https://platform.openai.com/api-keys
# 也可以填写兼容 OpenAI Chat Completions 协议的供应商密钥,
# 例如 OpenRouter 这类提供自定义 base_url 的平台。
openai_api_key = ""
# No need to set it unless you want to use your own proxy
# 如果使用兼容 OpenAI 接口的平台,请在这里填写对应的 base_url。
openai_base_url = ""
# Check your available models at https://platform.openai.com/account/limits
# 如果使用兼容供应商,请填写该平台要求的模型 ID。
openai_model_name = "gpt-4o-mini"
########## Moonshot API Key
# Visit https://platform.moonshot.cn/console/api-keys to get your API key.
moonshot_api_key = ""
moonshot_base_url = "https://api.moonshot.cn/v1"
moonshot_model_name = "moonshot-v1-8k"
########## OneAPI API Key
# Visit https://github.com/songquanpeng/one-api to get your API key
oneapi_api_key = ""
oneapi_base_url = ""
oneapi_model_name = ""
########## G4F
# g4f relies on reverse-engineered third-party endpoints and is not recommended
# for production. Prefer official APIs, OpenAI-compatible providers, LiteLLM,
# Ollama, or local inference.
# If you still need it, install the optional dependency with:
# uv sync --extra g4f
enable_g4f = false
# Visit https://github.com/xtekky/gpt4free to get more details
# Supported model list: https://github.com/xtekky/gpt4free/blob/main/g4f/models.py
g4f_model_name = "gpt-3.5-turbo"
########## Azure API Key
# Visit https://learn.microsoft.com/zh-cn/azure/ai-services/openai/ to get more details
# API documentation: https://learn.microsoft.com/zh-cn/azure/ai-services/openai/reference
azure_api_key = ""
azure_base_url = ""
azure_model_name = "gpt-35-turbo" # replace with your model deployment name
azure_api_version = "2024-02-15-preview"
########## Gemini API Key
gemini_api_key = ""
gemini_model_name = "gemini-2.5-flash"
########## Grok API Key
grok_api_key = ""
grok_model_name = "grok-4.3"
grok_base_url = "https://api.x.ai/v1"
########## Qwen API Key
# Visit https://dashscope.console.aliyun.com/apiKey to get your API key
# Visit below links to get more details
# https://tongyi.aliyun.com/qianwen/
# https://help.aliyun.com/zh/dashscope/developer-reference/model-introduction
qwen_api_key = ""
qwen_model_name = "qwen-max"
########## MiniMax API Key
# Visit https://platform.minimax.io to get your API key
# MiniMax API is OpenAI-compatible
# Available models: MiniMax-M2.7 (default), MiniMax-M2.7-highspeed
minimax_api_key = ""
minimax_base_url = "https://api.minimax.io/v1"
minimax_model_name = "MiniMax-M2.7"
########## Xiaomi MiMo API Key
# Xiaomi MiMo API is OpenAI-compatible.
# Visit https://platform.xiaomimimo.com/docs/zh-CN/quick-start/first-api-call to get more details.
mimo_api_key = ""
mimo_base_url = "https://api.xiaomimimo.com/v1"
mimo_model_name = "mimo-v2.5-pro"
# Xiaomi MiMo TTS uses the same API key and base_url as MiMo LLM.
mimo_tts_model_name = "mimo-v2.5-tts"
# Optional natural language style prompt for MiMo TTS.
mimo_tts_style_prompt = "请用自然、清晰、适合短视频旁白的语气朗读。"
########## DeepSeek API Key
# Visit https://platform.deepseek.com/api_keys to get your API key
deepseek_api_key = ""
deepseek_base_url = "https://api.deepseek.com"
deepseek_model_name = "deepseek-chat"
########## ModelScope API Key
# Visit https://modelscope.cn/docs/model-service/API-Inference/intro to get your API key
# And note that you need to bind your Alibaba Cloud account before using the API.
modelscope_api_key = ""
modelscope_base_url = "https://api-inference.modelscope.cn/v1/"
modelscope_model_name = "Qwen/Qwen3-32B"
########## LiteLLM (AI Gateway — 100+ providers)
# LiteLLM routes to any LLM provider via a unified interface.
# Use this for providers not directly supported above: Anthropic (native API),
# AWS Bedrock, Google Vertex AI, Cohere, Mistral, Together AI, etc.
# Visit https://docs.litellm.ai/docs/providers for the full list.
#
# LiteLLM reads provider API keys from environment variables automatically:
# OPENAI_API_KEY, ANTHROPIC_API_KEY, GEMINI_API_KEY, AWS_ACCESS_KEY_ID, etc.
# Set the appropriate env var for your chosen provider before running.
#
# Model name in LiteLLM format: "provider/model-name"
# Examples: "openai/gpt-4o", "anthropic/claude-sonnet-4-20250514",
# "bedrock/anthropic.claude-3-5-sonnet-20241022-v2:0",
# "gemini/gemini-2.5-flash", "ollama/llama3"
litellm_model_name = "openai/gpt-4o-mini"
# Subtitle Provider, "edge" or "whisper"
# If empty, the subtitle will not be generated
subtitle_provider = "edge"
#
# ImageMagick
#
# Once you have installed it, ImageMagick will be automatically detected, except on Windows!
# On Windows, for example "C:\Program Files (x86)\ImageMagick-7.1.1-Q16-HDRI\magick.exe"
# Download from https://imagemagick.org/archive/binaries/ImageMagick-7.1.1-29-Q16-x64-static.exe
# imagemagick_path = "C:\\Program Files (x86)\\ImageMagick-7.1.1-Q16\\magick.exe"
#
# FFMPEG
#
# 通常情况下,ffmpeg 会被自动下载,并且会被自动检测到。
# 但是如果你的环境有问题,无法自动下载,可能会遇到如下错误:
# RuntimeError: No ffmpeg exe could be found.
# Install ffmpeg on your system, or set the IMAGEIO_FFMPEG_EXE environment variable.
# 此时你可以手动下载 ffmpeg 并设置 ffmpeg_path,下载地址:https://www.gyan.dev/ffmpeg/builds/
# Under normal circumstances, ffmpeg is downloaded automatically and detected automatically.
# However, if there is an issue with your environment that prevents automatic downloading, you might encounter the following error:
# RuntimeError: No ffmpeg exe could be found.
# Install ffmpeg on your system, or set the IMAGEIO_FFMPEG_EXE environment variable.
# In such cases, you can manually download ffmpeg and set the ffmpeg_path, download link: https://www.gyan.dev/ffmpeg/builds/
# ffmpeg_path = "C:\\Users\\harry\\Downloads\\ffmpeg.exe"
#########################################################################################
# 当视频生成成功后,API服务提供的视频下载接入点,默认为当前服务的地址和监听端口
# 比如 http://127.0.0.1:8080/tasks/6357f542-a4e1-46a1-b4c9-bf3bd0df5285/final-1.mp4
# 如果你需要使用域名对外提供服务(一般会用nginx做代理),则可以设置为你的域名
# 比如 https://xxxx.com/tasks/6357f542-a4e1-46a1-b4c9-bf3bd0df5285/final-1.mp4
# endpoint="https://xxxx.com"
# When the video is successfully generated, the API service provides a download endpoint for the video, defaulting to the service's current address and listening port.
# For example, http://127.0.0.1:8080/tasks/6357f542-a4e1-46a1-b4c9-bf3bd0df5285/final-1.mp4
# If you need to provide the service externally using a domain name (usually done with nginx as a proxy), you can set it to your domain name.
# For example, https://xxxx.com/tasks/6357f542-a4e1-46a1-b4c9-bf3bd0df5285/final-1.mp4
# endpoint="https://xxxx.com"
endpoint = ""
# Video material storage location
# material_directory = "" # Indicates that video materials will be downloaded to the default folder, the default folder is ./storage/cache_videos under the current project
# material_directory = "/user/harry/videos" # Indicates that video materials will be downloaded to a specified folder
# material_directory = "task" # Indicates that video materials will be downloaded to the current task's folder, this method does not allow sharing of already downloaded video materials
# 视频素材存放位置
# material_directory = "" #表示将视频素材下载到默认的文件夹,默认文件夹为当前项目下的 ./storage/cache_videos
# material_directory = "/user/harry/videos" #表示将视频素材下载到指定的文件夹中
# material_directory = "task" #表示将视频素材下载到当前任务的文件夹中,这种方式无法共享已经下载的视频素材
material_directory = ""
# Used for state management of the task
enable_redis = false
redis_host = "localhost"
redis_port = 6379
redis_db = 0
redis_password = ""
# 文生视频时的最大并发任务数
max_concurrent_tasks = 5
# 并发任务已满后的最大排队任务数,超过后接口返回 429,避免匿名请求无限堆积
max_queued_tasks = 100
[whisper]
# Only effective when subtitle_provider is "whisper"
# Run on GPU with FP16
# model = WhisperModel(model_size, device="cuda", compute_type="float16")
# Run on GPU with INT8
# model = WhisperModel(model_size, device="cuda", compute_type="int8_float16")
# Run on CPU with INT8
# model = WhisperModel(model_size, device="cpu", compute_type="int8")
# recommended model_size: "large-v3"
model_size = "large-v3"
# if you want to use GPU, set device="cuda"
device = "CPU"
compute_type = "int8"
[proxy]
### Use a proxy to access the Pexels API
### Format: "http://<username>:<password>@<proxy>:<port>"
### Example: "http://user:pass@proxy:1234"
### Doc: https://requests.readthedocs.io/en/latest/user/advanced/#proxies
# http = "http://10.10.1.10:3128"
# https = "http://10.10.1.10:1080"
[azure]
# Azure Speech API Key
# Get your API key at https://portal.azure.com/#view/Microsoft_Azure_ProjectOxford/CognitiveServicesHub/~/SpeechServices
speech_key = ""
speech_region = ""
[siliconflow]
# SiliconFlow API Key
# Get your API key at https://siliconflow.cn
api_key = ""
[ui]
# UI related settings
# 是否隐藏日志信息
# Whether to hide logs in the UI
hide_log = false
# 字幕位置设置 (Subtitle position settings)
# 可选值 (Available values): "top", "center", "bottom", "custom"
# subtitle_position = "custom"
# 自定义位置,表示离顶部的百分比 (0-100),仅当 subtitle_position = "custom" 时生效
# Custom position as percentage from top (0-100), only effective when subtitle_position = "custom"
# custom_position = 70.0
########## Upload-Post (Cross-post to TikTok/Instagram)
# Upload-Post allows you to automatically cross-post generated videos to TikTok and Instagram.
# Visit https://upload-post.com to create an account and get your API key.
# API Documentation: https://docs.upload-post.com
# Enable/disable Upload-Post integration
upload_post_enabled = false
# Your Upload-Post API key
upload_post_api_key = ""
# Your Upload-Post username
upload_post_username = ""
# Platforms to cross-post to (options: "tiktok", "instagram")
upload_post_platforms = ["tiktok", "instagram"]
# Automatically cross-post videos after generation (if false, you'll need to call the API manually)
upload_post_auto_upload = false