Files
meijiaka-zy/python-api/requirements.lock
T
小鱼开发 c6eba97b43 feat(points): 积分消耗系统全链路集成
后端:
- 简化积分服务: 删除 freeze/settle/refund, 保留 consume/recharge/expire
- 计费配置化: config/points-config.yaml 驱动 fixed/duration/free 三种模式
- TTS 时长探测: app/utils/audio_utils.py (httpx + mutagen 纯 Python)
- Python 层扣费: script(5)/polish(1)/title(1)/voice_clone(200)/tts(按秒)/video(按秒)
- 字幕 free_services: caption/auto_align 不扣费
- 新增 POST /points/consume 端点(402余额预检)
- 新增 check_balance + /points/cost 返回 sufficient/balance/required
- 新增 expire_batches 定时回收, 接入 scheduler main(每5分钟)
- 删除废弃 tts_handler.py
- Alembic 迁移: 删除 frozen/total_refunded 字段
- 同步 requirements.lock 添加 mutagen

前端:
- Rust/IPC 层扣费: compose(5)/subtitle_burn(2)/cover_design(2)
- 字幕打轴改异步: 走 scheduler subtitle handler
- 对口型传 duration: VideoGeneration 传 actualDuration
- 创建 pointStore: 全局余额 + fetchBalance + 充值弹窗控制
- 402 欠费弹 RechargeModal: VideoGeneration/SubtitleBurning/CoverDesign
- 修复 VoiceDubbing.tsx 类型错误 (alignResult never)
- 同步 PointBalance 类型(删除 frozen/available/totalRefunded)

Refs: 积分消耗集成收尾
2026-05-09 15:42:54 +08:00

184 lines
3.7 KiB
Plaintext

# This file was autogenerated by uv via the following command:
# uv pip compile pyproject.toml -o requirements.lock
aiohappyeyeballs==2.6.1
# via aiohttp
aiohttp==3.13.5
# via meijiaka-ai-api (pyproject.toml)
aiosignal==1.4.0
# via aiohttp
alembic==1.14.1
# via meijiaka-ai-api (pyproject.toml)
annotated-doc==0.0.4
# via fastapi
annotated-types==0.7.0
# via pydantic
anyio==4.13.0
# via
# httpx
# openai
# starlette
# volcengine-python-sdk
# watchfiles
asyncpg==0.30.0
# via meijiaka-ai-api (pyproject.toml)
attrs==26.1.0
# via aiohttp
bcrypt==4.2.1
# via
# meijiaka-ai-api (pyproject.toml)
# passlib
certifi==2026.4.22
# via
# httpcore
# httpx
# requests
# volcengine-python-sdk
cffi==2.0.0
# via cryptography
charset-normalizer==3.4.7
# via requests
click==8.3.3
# via uvicorn
cryptography==48.0.0
# via
# python-jose
# volcengine-python-sdk
distro==1.9.0
# via openai
ecdsa==0.19.2
# via python-jose
fastapi==0.136.1
# via meijiaka-ai-api (pyproject.toml)
frozenlist==1.8.0
# via
# aiohttp
# aiosignal
greenlet==3.5.0
# via sqlalchemy
h11==0.16.0
# via
# httpcore
# uvicorn
httpcore==1.0.9
# via httpx
httptools==0.7.1
# via uvicorn
httpx==0.28.1
# via
# meijiaka-ai-api (pyproject.toml)
# openai
# volcengine-python-sdk
idna==3.13
# via
# anyio
# httpx
# requests
# yarl
jiter==0.14.0
# via openai
mako==1.3.12
# via alembic
markupsafe==3.0.3
# via mako
multidict==6.7.1
# via
# aiohttp
# yarl
mutagen==1.47.0
# via meijiaka-ai-api (pyproject.toml)
openai==1.58.1
# via meijiaka-ai-api (pyproject.toml)
orjson==3.11.9
# via meijiaka-ai-api (pyproject.toml)
passlib==1.7.4
# via meijiaka-ai-api (pyproject.toml)
propcache==0.4.1
# via
# aiohttp
# yarl
psycopg2-binary==2.9.12
# via meijiaka-ai-api (pyproject.toml)
pyasn1==0.4.8
# via
# python-jose
# rsa
pycparser==3.0
# via cffi
pydantic==2.9.2
# via
# meijiaka-ai-api (pyproject.toml)
# fastapi
# openai
# pydantic-settings
# volcengine-python-sdk
pydantic-core==2.23.4
# via pydantic
pydantic-settings==2.6.1
# via meijiaka-ai-api (pyproject.toml)
python-dateutil==2.9.0.post0
# via volcengine-python-sdk
python-dotenv==1.2.2
# via
# pydantic-settings
# uvicorn
python-jose==3.4.0
# via meijiaka-ai-api (pyproject.toml)
python-multipart==0.0.27
# via meijiaka-ai-api (pyproject.toml)
pyyaml==6.0.3
# via
# meijiaka-ai-api (pyproject.toml)
# uvicorn
qiniu==7.13.2
# via meijiaka-ai-api (pyproject.toml)
redis==5.2.1
# via meijiaka-ai-api (pyproject.toml)
requests==2.33.1
# via qiniu
rsa==4.9.1
# via python-jose
six==1.17.0
# via
# ecdsa
# python-dateutil
# volcengine-python-sdk
sniffio==1.3.1
# via openai
sqlalchemy==2.0.49
# via
# meijiaka-ai-api (pyproject.toml)
# alembic
starlette==1.0.0
# via fastapi
tenacity==9.0.0
# via meijiaka-ai-api (pyproject.toml)
tqdm==4.67.3
# via openai
typing-extensions==4.15.0
# via
# alembic
# fastapi
# openai
# pydantic
# pydantic-core
# sqlalchemy
# typing-inspection
typing-inspection==0.4.2
# via fastapi
urllib3==2.7.0
# via
# requests
# volcengine-python-sdk
uvicorn==0.32.1
# via meijiaka-ai-api (pyproject.toml)
uvloop==0.22.1
# via uvicorn
volcengine-python-sdk==5.0.26
# via meijiaka-ai-api (pyproject.toml)
watchfiles==1.1.1
# via uvicorn
websockets==16.0
# via uvicorn
yarl==1.23.0
# via aiohttp