# ==================== 应用设置 ==================== [app] # 应用访问地址(用于生成文件链接) app_url = "http://127.0.0.1:8000" # 后台管理密码 app_key = "grok2api" # API 调用密钥(可选) api_key = "" # 是否启用 public 功能玩法 public_enabled = false # Public 调用密钥(可选) public_key = "" # 生成图片的格式(url 或 base64) image_format = "url" # 生成视频的格式(html 或 url) video_format = "html" # 是否启用临时对话模式 temporary = true # 是否禁用 Grok 记忆功能 disable_memory = true # 是否默认启用流式响应 stream = true # 是否默认启用思维链输出 thinking = true # 是否动态生成 Statsig 指纹 dynamic_statsig = true # 过滤的特殊标签列表 filter_tags = ["xaiartifact","xai:tool_usage_card"] # 是否将应用运行日志写入 logs/app_YYYY-MM-DD.log app_log_enabled = true # 是否记录对话详细抓包日志(用于排查图片来源、卡片原始返回等) chat_capture_enabled = true # 对话详细抓包日志文件路径(相对项目根目录) chat_capture_file = "logs/app_chat_capture.jsonl" # ==================== 代理配置 ==================== [proxy] # 基础代理地址(代理到 Grok 官网) base_proxy_url = "" # 资源代理地址(代理静态资源如图片/视频) asset_proxy_url = "" # 是否启用 CF 自动刷新 enabled = false # FlareSolverr 服务地址(通过环境变量 FLARESOLVERR_URL 自动设置) flaresolverr_url = "" # 刷新间隔(秒) refresh_interval = 3600 # CF 挑战等待超时(秒) timeout = 60 # Cloudflare Clearance Cookie cf_clearance = "" # curl_cffi 浏览器指纹 browser = "chrome136" # User-Agent 字符串 user_agent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36" # ==================== 重试策略 ==================== [retry] # 最大重试次数 max_retry = 3 # 触发重试的 HTTP 状态码 retry_status_codes = [401,429,403] # 退避基础延迟(秒) retry_backoff_base = 0.5 # 退避倍率 retry_backoff_factor = 2.0 # 单次重试最大延迟(秒) retry_backoff_max = 20.0 # 总重试预算时间(秒) retry_budget = 60.0 # ==================== Token 池管理 ==================== [token] # 是否启用 Token 自动刷新 auto_refresh = true # 普通 Token 刷新间隔(小时) refresh_interval_hours = 8 # Super Token 刷新间隔(小时) super_refresh_interval_hours = 2 # Token 连续失败阈值 fail_threshold = 5 # Token 变更保存延迟(毫秒) save_delay_ms = 500 # 多 worker 状态同步间隔(秒) reload_interval_sec = 30 # ==================== 模型路由配置 ==================== [model_routing] # 模型到 Token 池的手动路由配置。 # 值支持字符串(单池)或字符串数组(按顺序回退)。 # 例如:{ "grok-4.20-expert" = "ssoSuper", "grok-4.20-auto" = ["ssoBasic", "ssoSuper"] } model_pools = {} # ==================== 缓存管理 ==================== [cache] # 是否启用自动清理 enable_auto_clean = true # 缓存大小上限(MB) limit_mb = 512 # ==================== 对话配置 ==================== [chat] # Reverse 接口并发上限 concurrent = 50 # 连接超时时间(秒),用于弱网快速失败 connect_timeout = 12 # Reverse 接口超时时间(秒) timeout = 60 # 首包超时时间(秒),连接成功后迟迟无返回则快速超时 first_token_timeout = 20 # 流式空闲超时时间(秒) stream_timeout = 60 # ==================== 图像配置 ==================== [image] # WebSocket 请求超时时间(秒) timeout = 60 # WebSocket 流式空闲超时时间(秒) stream_timeout = 60 # 中等图后等待最终图的超时秒数 final_timeout = 15 # 是否启用 NSFW nsfw = true # 判定为中等质量图的最小字节数 medium_min_bytes = 30000 # 判定为最终图的最小字节数 final_min_bytes = 100000 # ==================== 视频配置 ==================== [video] # Reverse 接口并发上限 concurrent = 100 # Reverse 接口超时时间(秒) timeout = 60 # 流式空闲超时时间(秒) stream_timeout = 60 # ==================== 语音配置 ==================== [voice] # Voice 请求超时时间(秒) timeout = 60 # LiveKit 信令地址(可选,优先于上游返回) livekit_url = "" # LiveKit 信令地址候选列表(可选,支持多地址回退) livekit_urls = [] # 是否启用同域 signal 代理(用于移动端兜底) signal_proxy_enabled = true # signal 代理地址(可选,留空则按当前域名自动生成) signal_proxy_url = "" # ==================== 资产配置 ==================== [asset] # 上传并发数 upload_concurrent = 100 # 上传超时时间(秒) upload_timeout = 60 # 下载并发数 download_concurrent = 100 # 下载超时时间(秒) download_timeout = 60 # 资产查询并发数 list_concurrent = 100 # 资产查询超时时间(秒) list_timeout = 60 # 资产查询批次大小(Token 维度) list_batch_size = 50 # 资产删除并发数 delete_concurrent = 100 # 资产删除超时时间(秒) delete_timeout = 60 # 资产删除批次大小(Token 维度) delete_batch_size = 50 # ==================== NSFW ==================== [nsfw] # NSFW 批量开启并发上限 concurrent = 60 # NSFW 批量开启批次大小 batch_size = 30 # NSFW 请求超时时间(秒) timeout = 60 # ==================== 用量配置 ==================== [usage] # Usage 批量开启并发上限 concurrent = 100 # Usage 批量开启批次大小 batch_size = 50 # Usage 请求超时时间(秒) timeout = 60