335 lines
12 KiB
TOML
335 lines
12 KiB
TOML
# 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
|
|
|
|
# -----------------------------------------------------------------------------
|
|
# 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". 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"
|
|
|
|
# =============================================================================
|
|
# 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"
|
|
|
|
[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
|