Files
server-core/pyproject.toml
T
Pine 5f0acfa79e feat(park): 视频识别剥离,per-tenant 配置接入 park-vision 独立服务
- 删除 vision_yolo/vision_llm 及路由 /api/vision/frame|llm(保留遥测 event),去除 ultralytics 依赖
- 视频识别改为每园区(per-tenant)配置,经 park_settings(kv) 键 vision_api:<tid> 存取
- /park/api/vision/config GET/PUT(园区端读写本园区识别地址,可局域网);bind 下发含 vision_api
- 新增 alembic 0004(tenant_id 可空) / 0005(park_settings 表),迁移脚本执行
2026-08-25 01:52:23 +08:00

50 lines
1.1 KiB
TOML

[project]
name = "pineagents-demo-server"
version = "0.1.0"
description = "云超服核心服务端(FastAPI + SQLite + JWT + RBAC):身份/平台 API + 培训子应用(/api/*),统一对外 opc.pinesound.cn"
readme = "README.md"
requires-python = ">=3.11"
dependencies = [
"fastapi>=0.115.0",
"uvicorn[standard]>=0.30.0",
"pydantic>=2.7.0",
"sqlalchemy[asyncio]>=2.0.30",
"aiosqlite>=0.20.0",
"asyncmy>=0.2.9",
"redis>=5.0.0",
"aioboto3>=13.0.0",
"pyjwt>=2.8.0",
"httpx>=0.27.0",
"python-multipart>=0.0.12",
"paho-mqtt>=1.6,<2",
"dashscope>=1.27.1",
"jinja2>=3.1.6",
"nltk>=3.10.3",
"numpy>=2.4.6",
"openai>=3.3.1",
"scipy>=1.17.1",
"soundfile>=0.14.0",
"websockets>=17.0.1",
"torch>=2.13.0",
"transformers>=5.15.1",
"alembic>=1.19.1",
]
[dependency-groups]
dev = [
"pytest>=8.0.0",
"httpx>=0.27.0",
"pytest-asyncio>=0.23.0",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["app"]
[tool.pytest.ini_options]
testpaths = ["tests"]
addopts = "-q"