Files
meijiaka-zy/python-api/.env.example
T
小鱼开发 30536276ba refactor(scheduler): 统一异步任务调度架构
核心变更:
- 统一第三方接口架构:所有服务走 PlatformGateway(call_sync/submit_task/query_task/handle_webhook)
- 视频生成(Vidu 对口型)纳入 Async Engine,与 script/subtitle/tts 统一为 POST /tasks/{task_type} 模式
- 新增 VideoHandler、TTSHandler,完善 ScriptHandler/SubtitleHandler
- PlatformGateway 生成 internal_task_id,建立 Redis 双向映射,callback 场景传入 Async Engine task_id 保证映射一致
- SlotManager 新增 acquire_ctx 上下文管理器,所有 Handler 统一使用
- ViduAdapter 状态映射归一化(normalize_state/denormalize_state)
- 移除 ViduService Semaphore 和 tenacity 重试,并发控制完全交予 SlotManager
- nonce 防重放下沉到 CallbackCapable 协议
- Service 层错误统一为 PlatformError,路由层错误信息脱敏
- 废弃 /voice/lip-sync,清理 vidu.py 遗留路由

Bug 修复:
- VideoHandler 轮询阶段后添加 continue,防止已提交任务重复创建
- voice.py synthesize_to_file 变量名冲突(request vs request_body)
- PlatformGateway.submit_task 空 data 防护
- ScriptHandler 动态导入 asyncio 改为模块级导入
- SubtitleHandler 完成时补充 progress=100

文档:
- 更新 AGENTS.md 核心功能、运行时架构、异步调度描述
2026-05-05 20:53:18 +08:00

67 lines
1.9 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 美家卡智影 API - 环境变量配置示例
# ================================
# 复制此文件为 .env 并填写实际值
# === 基础配置 ===
APP_NAME=美家卡智影 API
APP_VERSION=0.1.0
DEBUG=true
ENV=development
HOST=0.0.0.0
PORT=8000
# === 数据库配置 ===
# 本地开发: localhost
# Docker 部署: 容器名(如 db、meijiaka-db
DATABASE_URL=postgresql+asyncpg://postgres:postgres@localhost:5432/meijiaka_zy
# === Redis 配置 ===
# 本地开发: localhost
# Docker 部署: 容器名(如 redis、meijiaka-redis
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_DB=1
# REDIS_PASSWORD= # 如无密码请留空或注释
# === JWT 安全配置 ===
# 生产环境必须修改为强随机密钥
SECRET_KEY=your-secret-key-here-change-in-production
ACCESS_TOKEN_EXPIRE_MINUTES=10080
ALGORITHM=HS256
# === CORS 配置 ===
# 本地开发: 允许 localhost
# 测试/生产服: 填写实际域名,如 https://app.yourdomain.com
CORS_ORIGINS=http://localhost:1420,http://127.0.0.1:1420,http://localhost:8080
# === AI 平台配置 ===
# 火山方舟(必需)
VOLCENGINE_API_KEY=your-volcengine-api-key
VOLCENGINE_BASE_URL=https://ark.cn-beijing.volces.com/api/v3
# 火山字幕服务(必需)
VOLCENGINE_CAPTION_APPID=your-caption-appid
VOLCENGINE_CAPTION_TOKEN=your-caption-token
# Vidu(必需,用于TTS语音合成、声音复刻、对口型)
VIDU_API_KEY=your-vidu-api-key
VIDU_BASE_URL=https://api.vidu.cn
# === 七牛云存储(必需,用于空镜图片上传)===
QINIU_ACCESS_KEY=your-qiniu-access-key
QINIU_SECRET_KEY=your-qiniu-secret-key
QINIU_VIDEO_BUCKET=media-liche
QINIU_VIDEO_DOMAIN=media.liche.cn
QINIU_IMAGE_BUCKET=img-liche
QINIU_IMAGE_DOMAIN=img.liche.cn
# === 其他服务 ===
# === 应用公网地址(用于 Vidu 等第三方回调)===
# 不配置时自动根据 ENV 推断:production→tapi.meijiaka.cn, staging→dev.tapi.meijiaka.cn
# APP_BASE_URL=https://dev.tapi.meijiaka.cn
# === 日志配置 ===
LOG_LEVEL=INFO