forked from harry0703/MoneyPrinterTurbo
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconfig.example.toml
More file actions
352 lines (291 loc) · 13.1 KB
/
Copy pathconfig.example.toml
File metadata and controls
352 lines (291 loc) · 13.1 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
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
# MoneyPrinterTurbo configuration example.
# The app copies this file to config.toml on first run. Keep API keys and other
# credentials in config.toml; do not commit your local config.toml.
# =============================================================================
# API Service / API 服务
# =============================================================================
# Log level: DEBUG, INFO, WARNING, or ERROR.
log_level = "DEBUG"
# Use 127.0.0.1 for local-only access. 0.0.0.0 listens on all network interfaces.
listen_host = "0.0.0.0"
listen_port = 8080
[app]
# -----------------------------------------------------------------------------
# General / 通用设置
# -----------------------------------------------------------------------------
# Hide the basic configuration panel in the WebUI.
# 是否隐藏 WebUI 基础配置面板。
hide_config = false
# Timeout in seconds for a single Edge TTS streaming request.
# 单次 Edge TTS 流式请求超时时间。慢网络可适当调大,设置为 0 表示禁用超时。
edge_tts_timeout = 30
# Verify TLS certificates for external APIs and material downloads.
# 默认应保持开启;仅在可信代理或自签名证书环境中临时关闭。
tls_verify = true
# -----------------------------------------------------------------------------
# Video Materials / 视频素材
# -----------------------------------------------------------------------------
# Available values: "pexels", "pixabay", "coverr", "local".
video_source = "pexels"
# API key lists support key rotation. Use straight ASCII double quotes and
# separate multiple keys with commas, for example: ["key-1", "key-2"].
# Key 必须使用英文半角双引号,多个 Key 使用英文逗号分隔。
# Register at https://www.pexels.com/api/
pexels_api_keys = []
# Register at https://pixabay.com/api/docs/
pixabay_api_keys = []
# Register at https://coverr.co/developers?ctx=header_navigation
coverr_api_keys = []
# Optional TwelveLabs integration for semantic material ranking and video QA.
# Install the optional dependency with: uv sync --extra twelvelabs
# Create an API key at https://playground.twelvelabs.io/
twelvelabs_api_keys = []
# Reorder search terms using Marengo before downloading materials. This option
# is ignored when match_materials_to_script is enabled.
twelvelabs_rerank_terms = false
# Optional model overrides. Uncomment only when a different model is required.
# twelvelabs_marengo_model = "marengo3.0"
# twelvelabs_pegasus_model = "pegasus1.5"
# Match search terms and downloaded materials to the script narrative order.
# 默认关闭,开启后会减少随机性,使素材顺序更贴近文案结构。
match_materials_to_script = false
# Optional Sonilo video-matched original background music.
# Create a key at https://platform.sonilo.com/dashboard. The WebUI can also save
# this value, or you can set the SONILO_API_KEY environment variable instead.
sonilo_api_key = ""
sonilo_base_url = "https://api.sonilo.com"
# 单次生成流连续无数据时的最长等待秒数;它不是整个请求的总耗时上限。
sonilo_timeout = 600
# -----------------------------------------------------------------------------
# LLM Providers / 大模型提供商
# -----------------------------------------------------------------------------
# Provider definitions, default models, and default Base URLs are maintained in
# app/models/llm_provider.py. Leave model_name and base_url empty to follow the
# Registry defaults; only set them when you need an explicit override.
llm_provider = "moonshot"
# Kimi / Moonshot AI
# API key: https://platform.kimi.com/console/api-keys
moonshot_api_key = ""
moonshot_base_url = ""
moonshot_model_name = ""
# OpenAI or another OpenAI Chat Completions-compatible provider.
# API key: https://platform.openai.com/api-keys
openai_api_key = ""
openai_base_url = ""
openai_model_name = ""
# Google Gemini
# API key: https://aistudio.google.com/app/apikey
gemini_api_key = ""
gemini_model_name = ""
# DeepSeek
# API key: https://platform.deepseek.com/api_keys
deepseek_api_key = ""
deepseek_base_url = ""
deepseek_model_name = ""
# Alibaba Cloud Qwen
# API key: https://dashscope.console.aliyun.com/apiKey
qwen_api_key = ""
qwen_model_name = ""
# Microsoft Azure OpenAI. model_name is the deployment name.
# Documentation: https://learn.microsoft.com/azure/ai-services/openai/reference
azure_api_key = ""
azure_base_url = ""
azure_model_name = ""
azure_api_version = "2024-02-15-preview"
# ByteDance VolcEngine Ark
# Console: https://console.volcengine.com/ark
volcengine_api_key = ""
volcengine_base_url = ""
volcengine_model_name = ""
# xAI Grok
# API key: https://console.x.ai/
grok_api_key = ""
grok_base_url = ""
grok_model_name = ""
# MiniMax. The API key and Base URL must use the same platform.
# China: https://platform.minimaxi.com/ | https://api.minimaxi.com/v1
# International: https://platform.minimax.io/ | https://api.minimax.io/v1
minimax_api_key = ""
minimax_base_url = ""
minimax_model_name = ""
# Xiaomi MiMo
# Documentation: https://platform.xiaomimimo.com/docs/zh-CN/quick-start/first-api-call
mimo_api_key = ""
mimo_base_url = ""
mimo_model_name = ""
# Cloudflare AI Gateway. The token requires AI Gateway Read/Edit and Workers AI
# Read permissions. Leave gateway_id empty to use the Registry default.
# Dashboard: https://dash.cloudflare.com/
cloudflare_api_key = ""
cloudflare_account_id = ""
cloudflare_gateway_id = ""
cloudflare_model_name = ""
# Alibaba ModelScope. Bind an Alibaba Cloud account before using API inference.
# Documentation: https://modelscope.cn/docs/model-service/API-Inference/intro
modelscope_api_key = ""
modelscope_base_url = ""
modelscope_model_name = ""
# AIHubMix, an OpenAI-compatible multi-model gateway.
# API key: https://aihubmix.com/
aihubmix_api_key = ""
aihubmix_base_url = ""
aihubmix_model_name = ""
# AIML API, an OpenAI-compatible multi-model API.
# API key: https://aimlapi.com/app/keys
aimlapi_api_key = ""
aimlapi_base_url = ""
aimlapi_model_name = ""
# EvoLink, an OpenAI-compatible multi-model gateway.
# API key: https://evolink.ai/dashboard/keys
evolink_api_key = ""
evolink_base_url = ""
evolink_model_name = ""
# Ollama. Leave base_url empty to use the environment-aware local default.
# Set model_name to a model installed by `ollama pull` or shown by `ollama list`.
ollama_base_url = ""
ollama_model_name = ""
# OneAPI. Use the token, Base URL, and model ID from your OneAPI deployment.
# Project: https://github.com/songquanpeng/one-api
oneapi_api_key = ""
oneapi_base_url = ""
oneapi_model_name = ""
# LiteLLM uses provider credentials from environment variables, such as
# OPENAI_API_KEY, ANTHROPIC_API_KEY, GEMINI_API_KEY, or AWS_ACCESS_KEY_ID.
# Model formats: openai/gpt-4o, anthropic/claude-sonnet-4, ollama/llama3.
# Providers: https://docs.litellm.ai/docs/providers
litellm_model_name = ""
# Groq
# API key: https://console.groq.com/keys
groq_api_key = ""
groq_base_url = ""
groq_model_name = ""
# Pollinations AI: https://enter.pollinations.ai/
pollinations_api_key = ""
pollinations_base_url = ""
pollinations_model_name = ""
# -----------------------------------------------------------------------------
# Speech, Subtitles, and Video / 语音、字幕与视频
# -----------------------------------------------------------------------------
# Xiaomi MiMo TTS shares mimo_api_key and mimo_base_url with the MiMo LLM.
mimo_tts_model_name = "mimo-v2.5-tts"
mimo_tts_style_prompt = "请用自然、清晰、适合短视频旁白的语气朗读。"
# Subtitle provider: "edge" or "whisper". Whisper is loaded only when selected
# explicitly; Edge failures do not trigger an automatic Whisper model download.
# Leave empty to skip generation.
subtitle_provider = "edge"
# FFmpeg is normally downloaded and detected automatically. If detection fails,
# download it from https://www.gyan.dev/ffmpeg/builds/ and set the executable.
# Windows example: ffmpeg_path = "C:\\path\\to\\ffmpeg.exe"
# ffmpeg_path = ""
# Leave unset to follow the app default (libx264). Hardware encoders are optional;
# unsupported encoders automatically fall back to libx264.
# Available values: "libx264", "h264_nvenc", "h264_amf", "h264_qsv",
# "h264_mf", "h264_videotoolbox".
# video_codec = "libx264"
# -----------------------------------------------------------------------------
# Storage and Task Runtime / 存储与任务运行
# -----------------------------------------------------------------------------
# Public base URL used to build generated video download links. Leave empty to
# use the current API service address, or set an external reverse-proxy URL.
endpoint = ""
# Material storage: "" uses ./storage/cache_videos, "task" stores materials in
# each task directory, and an absolute path stores materials in that directory.
# Example: material_directory = "/path/to/videos"
material_directory = ""
# Optional Redis-backed task state. Keep Redis private to this application;
# untrusted writers must not be able to modify serialized task records.
enable_redis = false
redis_host = "localhost"
redis_port = 6379
redis_db = 0
redis_password = ""
# Maximum number of concurrent and queued API video-generation tasks.
max_concurrent_tasks = 5
max_queued_tasks = 100
# -----------------------------------------------------------------------------
# Cross-platform Publishing / 跨平台发布
# -----------------------------------------------------------------------------
# Upload-Post can publish generated videos to TikTok, Instagram, and YouTube.
# Create an account and API key at https://upload-post.com/
# API documentation: https://docs.upload-post.com/
upload_post_enabled = false
upload_post_api_key = ""
upload_post_username = ""
# Available values: "tiktok", "instagram", "youtube".
upload_post_platforms = ["tiktok", "instagram"]
# Automatically publish successful video outputs after generation.
upload_post_auto_upload = false
# YouTube privacy: "public", "unlisted", or "private".
upload_post_youtube_privacy_status = "public"
# Maximum number of running and queued cross-post jobs per process. When the
# limit is reached, video generation still succeeds and only cross-posting is
# rejected.
# Cross-post jobs run in the current process and are not resumed after restart.
upload_post_max_pending_tasks = 10
# =============================================================================
# Whisper Subtitles / Whisper 字幕
# =============================================================================
[whisper]
# The model is downloaded automatically on first use unless a matching local
# directory exists at ./models/whisper-{model_size}.
model_size = "large-v3"
# device: "cpu" or "cuda". Common compute types include "int8" for CPU and
# "float16" or "int8_float16" for CUDA.
device = "cpu"
compute_type = "int8"
# =============================================================================
# Material Request Proxy / 素材请求代理
# =============================================================================
[proxy]
# Optional proxy used by Pexels, Pixabay, Coverr, and material downloads.
# Format: "http://<username>:<password>@<proxy>:<port>"
# Documentation: https://requests.readthedocs.io/en/latest/user/advanced/#proxies
# http = "http://127.0.0.1:3128"
# https = "http://127.0.0.1:1080"
# =============================================================================
# TTS Providers / 语音合成服务
# =============================================================================
[azure]
# Azure Speech TTS credentials. These are separate from Azure OpenAI settings.
# API key: https://portal.azure.com/#view/Microsoft_Azure_ProjectOxford/CognitiveServicesHub/~/SpeechServices
speech_key = ""
speech_region = ""
[siliconflow]
# SiliconFlow TTS API key: https://siliconflow.cn/
api_key = ""
[elevenlabs]
# API key: https://elevenlabs.io/app/settings/api-keys
# Favorite voices in the ElevenLabs voice library are shown in the WebUI.
api_key = ""
# Available models include eleven_multilingual_v2, eleven_flash_v2_5, and eleven_v3.
model_id = "eleven_multilingual_v2"
# Video-to-Music uses a separate model family while sharing the same API key.
music_model_id = "music_v2"
music_timeout = 600
[chatterbox]
# OpenAI-compatible Chatterbox TTS server. The defaults target
# travisvn/chatterbox-tts-api running locally on port 4123.
base_url = "http://127.0.0.1:4123/v1"
api_key = ""
model_id = "chatterbox"
# Voice names exposed by the configured Chatterbox server.
voices = ["default-Female"]
# =============================================================================
# WebUI Preferences / WebUI 偏好
# =============================================================================
[ui]
# Hide generation logs in the WebUI.
hide_log = false
# The WebUI writes the remaining preferences automatically. Uncomment values
# below only when you want to define initial defaults manually.
# language = "zh"
# tts_server = "azure-tts-v1"
# voice_name = ""
# font_name = "MicrosoftYaHeiBold.ttc"
# font_size = 60
# text_fore_color = "#FFFFFF"
# subtitle_position = "bottom" # "top", "center", "bottom", or "custom"
# custom_position = 70.0 # Percentage from the top when using "custom"
# subtitle_background_enabled = false
# subtitle_background_color = "#000000"
# rounded_subtitle_background = false