refactor: 移除 LiteLLM proxy 架构,后端直连 Provider API

- 移除 backend/scripts/build_litellm_proxy_config.py
- 简化 LiteLLMService,移除 run_completion_with_cost 方法
- AgentScopeRunner 改为从 LlmFactory 获取 api_base 和 api_key
- 部署配置移除 litellm/litellm-config-job 服务
- Flutter 新增 AuthBootScreen 引导页
- Android 添加通知权限 (POST_NOTIFICATIONS, RECEIVE_BOOT_COMPLETED, SCHEDULE_EXACT_ALARM)
- 优化 LocalNotificationService 调度失败 fallback
- 更新 manifest.json (version 3)
This commit is contained in:
qzl
2026-03-17 18:05:49 +08:00
parent cf56b358ad
commit 19981964fb
26 changed files with 417 additions and 1018 deletions
-65
View File
@@ -23,50 +23,6 @@ services:
timeout: 3s
retries: 10
litellm-config-job:
image: ${SOCIAL_BACKEND_IMAGE:-social-app-backend:prod}
container_name: social-prod-litellm-config-job
restart: "no"
env_file:
- ./.env.prod
environment:
- PYTHONPATH=/app/backend/src
- PYTHONDONTWRITEBYTECODE=1
command: >
.venv/bin/python backend/scripts/build_litellm_proxy_config.py --output /config/litellm-proxy-config.yaml
volumes:
- litellm_config:/config
depends_on:
redis:
condition: service_healthy
litellm:
image: ghcr.io/berriai/litellm@sha256:b959a1816fa454a14d2842242d0fa1cd0d39f96fc94d3a1f4e1de4e48e2398c6
container_name: social-prod-litellm
restart: unless-stopped
env_file:
- ./.env.prod
command: >
--config /config/litellm-proxy-config.yaml --host ${SOCIAL_LITELLM__BIND_HOST:-0.0.0.0} --port ${SOCIAL_LITELLM__PORT:-3875}
volumes:
- litellm_config:/config:ro
depends_on:
redis:
condition: service_healthy
litellm-config-job:
condition: service_completed_successfully
healthcheck:
test:
[
"CMD",
"python",
"-c",
"import os,sys,urllib.request;port=os.getenv('SOCIAL_LITELLM__PORT','3875');u=f'http://127.0.0.1:{port}/health';sys.exit(0 if urllib.request.urlopen(u, timeout=3).getcode() < 500 else 1)",
]
interval: 15s
timeout: 5s
retries: 10
web:
image: ${SOCIAL_BACKEND_IMAGE:-social-app-backend:prod}
container_name: social-prod-web
@@ -80,8 +36,6 @@ services:
- SOCIAL_RUNTIME__ENVIRONMENT=${SOCIAL_RUNTIME__ENVIRONMENT:-prod}
- SOCIAL_REDIS__HOST=redis
- SOCIAL_REDIS__PORT=6379
- SOCIAL_LITELLM__HOST=litellm
- SOCIAL_LITELLM__PORT=${SOCIAL_LITELLM__PORT:-3875}
command: >
sh -c '.venv/bin/uvicorn app:app --host ${SOCIAL_WEB__HOST:-0.0.0.0} --port ${SOCIAL_WEB__PORT:-5775} --workers ${SOCIAL_WEB__WORKERS:-2} --log-level $(printf "%s" "${SOCIAL_RUNTIME__LOG_LEVEL:-info}" | tr "[:upper:]" "[:lower:]")'
ports:
@@ -89,8 +43,6 @@ services:
depends_on:
redis:
condition: service_healthy
litellm:
condition: service_healthy
volumes:
- ../logs:/app/logs
- ./static/releases:/app/deploy/static/releases:ro
@@ -119,15 +71,11 @@ services:
- SOCIAL_RUNTIME__ENVIRONMENT=${SOCIAL_RUNTIME__ENVIRONMENT:-prod}
- SOCIAL_REDIS__HOST=redis
- SOCIAL_REDIS__PORT=6379
- SOCIAL_LITELLM__HOST=litellm
- SOCIAL_LITELLM__PORT=${SOCIAL_LITELLM__PORT:-3875}
command: >
sh -c '.venv/bin/taskiq worker core.taskiq.app:critical_broker core.agentscope.runtime.tasks --workers ${SOCIAL_WORKER__GROUPS__CRITICAL__CONCURRENCY:-2}'
depends_on:
redis:
condition: service_healthy
litellm:
condition: service_healthy
volumes:
- ../logs:/app/logs
- ./static/releases:/app/deploy/static/releases:ro
@@ -145,15 +93,11 @@ services:
- SOCIAL_RUNTIME__ENVIRONMENT=${SOCIAL_RUNTIME__ENVIRONMENT:-prod}
- SOCIAL_REDIS__HOST=redis
- SOCIAL_REDIS__PORT=6379
- SOCIAL_LITELLM__HOST=litellm
- SOCIAL_LITELLM__PORT=${SOCIAL_LITELLM__PORT:-3875}
command: >
sh -c '.venv/bin/taskiq worker core.taskiq.app:default_broker core.agentscope.runtime.tasks --workers ${SOCIAL_WORKER__GROUPS__DEFAULT__CONCURRENCY:-2}'
depends_on:
redis:
condition: service_healthy
litellm:
condition: service_healthy
volumes:
- ../logs:/app/logs
- ./static/releases:/app/deploy/static/releases:ro
@@ -171,15 +115,11 @@ services:
- SOCIAL_RUNTIME__ENVIRONMENT=${SOCIAL_RUNTIME__ENVIRONMENT:-prod}
- SOCIAL_REDIS__HOST=redis
- SOCIAL_REDIS__PORT=6379
- SOCIAL_LITELLM__HOST=litellm
- SOCIAL_LITELLM__PORT=${SOCIAL_LITELLM__PORT:-3875}
command: >
sh -c '.venv/bin/taskiq worker core.taskiq.app:bulk_broker core.agentscope.runtime.tasks --workers ${SOCIAL_WORKER__GROUPS__BULK__CONCURRENCY:-1}'
depends_on:
redis:
condition: service_healthy
litellm:
condition: service_healthy
volumes:
- ../logs:/app/logs
- ./static/releases:/app/deploy/static/releases:ro
@@ -197,14 +137,10 @@ services:
- SOCIAL_RUNTIME__ENVIRONMENT=${SOCIAL_RUNTIME__ENVIRONMENT:-prod}
- SOCIAL_REDIS__HOST=redis
- SOCIAL_REDIS__PORT=6379
- SOCIAL_LITELLM__HOST=litellm
- SOCIAL_LITELLM__PORT=${SOCIAL_LITELLM__PORT:-3875}
command: .venv/bin/python -m core.runtime.cli bootstrap
depends_on:
redis:
condition: service_healthy
litellm:
condition: service_healthy
volumes:
- ../logs:/app/logs
- ./static/releases:/app/deploy/static/releases:ro
@@ -213,4 +149,3 @@ services:
volumes:
redis_data:
litellm_config: