Compare commits
3 Commits
f572da050e
...
8a18ae753d
| Author | SHA1 | Date | |
|---|---|---|---|
| 8a18ae753d | |||
| ffbcecc09d | |||
| 39c28d49a4 |
@@ -99,6 +99,9 @@ services:
|
|||||||
LITELLM_DROP_PARAMS: 'true'
|
LITELLM_DROP_PARAMS: 'true'
|
||||||
NO_DOCS: 'true'
|
NO_DOCS: 'true'
|
||||||
NO_REDOC: 'true'
|
NO_REDOC: 'true'
|
||||||
|
# Performance optimizations
|
||||||
|
LITELLM_LOG: 'ERROR' # Only log errors
|
||||||
|
LITELLM_MODE: 'PRODUCTION' # Production mode for better performance
|
||||||
volumes:
|
volumes:
|
||||||
- ./litellm-config.yaml:/app/litellm-config.yaml:ro
|
- ./litellm-config.yaml:/app/litellm-config.yaml:ro
|
||||||
command:
|
command:
|
||||||
@@ -109,7 +112,6 @@ services:
|
|||||||
'0.0.0.0',
|
'0.0.0.0',
|
||||||
'--port',
|
'--port',
|
||||||
'4000',
|
'4000',
|
||||||
'--detailed_debug',
|
|
||||||
'--drop_params'
|
'--drop_params'
|
||||||
]
|
]
|
||||||
depends_on:
|
depends_on:
|
||||||
@@ -176,19 +178,17 @@ services:
|
|||||||
- compose_network
|
- compose_network
|
||||||
labels:
|
labels:
|
||||||
- 'traefik.enable=${AI_FACEFUSION_TRAEFIK_ENABLED}'
|
- 'traefik.enable=${AI_FACEFUSION_TRAEFIK_ENABLED}'
|
||||||
# HTTP Basic Auth middleware
|
|
||||||
- 'traefik.http.middlewares.${AI_COMPOSE_PROJECT_NAME}-facefusion-auth.basicauth.users=${AUTH_USERS}'
|
|
||||||
# HTTP to HTTPS redirect
|
# HTTP to HTTPS redirect
|
||||||
- 'traefik.http.middlewares.${AI_COMPOSE_PROJECT_NAME}-facefusion-redirect-web-secure.redirectscheme.scheme=https'
|
- 'traefik.http.middlewares.${AI_COMPOSE_PROJECT_NAME}-facefusion-redirect-web-secure.redirectscheme.scheme=https'
|
||||||
- 'traefik.http.routers.${AI_COMPOSE_PROJECT_NAME}-facefusion-web.middlewares=${AI_COMPOSE_PROJECT_NAME}-facefusion-redirect-web-secure'
|
- 'traefik.http.routers.${AI_COMPOSE_PROJECT_NAME}-facefusion-web.middlewares=${AI_COMPOSE_PROJECT_NAME}-facefusion-redirect-web-secure'
|
||||||
- 'traefik.http.routers.${AI_COMPOSE_PROJECT_NAME}-facefusion-web.rule=Host(`${AI_FACEFUSION_TRAEFIK_HOST}`)'
|
- 'traefik.http.routers.${AI_COMPOSE_PROJECT_NAME}-facefusion-web.rule=Host(`${AI_FACEFUSION_TRAEFIK_HOST}`)'
|
||||||
- 'traefik.http.routers.${AI_COMPOSE_PROJECT_NAME}-facefusion-web.entrypoints=web'
|
- 'traefik.http.routers.${AI_COMPOSE_PROJECT_NAME}-facefusion-web.entrypoints=web'
|
||||||
# HTTPS router with auth
|
# HTTPS router with Authelia
|
||||||
- 'traefik.http.routers.${AI_COMPOSE_PROJECT_NAME}-facefusion-web-secure.rule=Host(`${AI_FACEFUSION_TRAEFIK_HOST}`)'
|
- 'traefik.http.routers.${AI_COMPOSE_PROJECT_NAME}-facefusion-web-secure.rule=Host(`${AI_FACEFUSION_TRAEFIK_HOST}`)'
|
||||||
- 'traefik.http.routers.${AI_COMPOSE_PROJECT_NAME}-facefusion-web-secure.tls.certresolver=resolver'
|
- 'traefik.http.routers.${AI_COMPOSE_PROJECT_NAME}-facefusion-web-secure.tls.certresolver=resolver'
|
||||||
- 'traefik.http.routers.${AI_COMPOSE_PROJECT_NAME}-facefusion-web-secure.entrypoints=web-secure'
|
- 'traefik.http.routers.${AI_COMPOSE_PROJECT_NAME}-facefusion-web-secure.entrypoints=web-secure'
|
||||||
- 'traefik.http.middlewares.${AI_COMPOSE_PROJECT_NAME}-facefusion-web-secure-compress.compress=true'
|
- 'traefik.http.middlewares.${AI_COMPOSE_PROJECT_NAME}-facefusion-web-secure-compress.compress=true'
|
||||||
- 'traefik.http.routers.${AI_COMPOSE_PROJECT_NAME}-facefusion-web-secure.middlewares=${AI_COMPOSE_PROJECT_NAME}-facefusion-auth,${AI_COMPOSE_PROJECT_NAME}-facefusion-web-secure-compress,security-headers@file'
|
- 'traefik.http.routers.${AI_COMPOSE_PROJECT_NAME}-facefusion-web-secure.middlewares=${AI_COMPOSE_PROJECT_NAME}-facefusion-web-secure-compress,net-authelia,security-headers@file'
|
||||||
# Service
|
# Service
|
||||||
- 'traefik.http.services.${AI_COMPOSE_PROJECT_NAME}-facefusion-web-secure.loadbalancer.server.port=7860'
|
- 'traefik.http.services.${AI_COMPOSE_PROJECT_NAME}-facefusion-web-secure.loadbalancer.server.port=7860'
|
||||||
- 'traefik.docker.network=${NETWORK_NAME}'
|
- 'traefik.docker.network=${NETWORK_NAME}'
|
||||||
|
|||||||
@@ -9,7 +9,8 @@ model_list:
|
|||||||
model: anthropic/claude-sonnet-4-5-20250929
|
model: anthropic/claude-sonnet-4-5-20250929
|
||||||
api_key: os.environ/ANTHROPIC_API_KEY
|
api_key: os.environ/ANTHROPIC_API_KEY
|
||||||
drop_params: true
|
drop_params: true
|
||||||
additional_drop_params: ["prompt_cache_key"]
|
# Enable prompt caching for better performance
|
||||||
|
supports_prompt_caching: true
|
||||||
|
|
||||||
- model_name: claude-3-5-sonnet
|
- model_name: claude-3-5-sonnet
|
||||||
litellm_params:
|
litellm_params:
|
||||||
@@ -28,15 +29,16 @@ model_list:
|
|||||||
|
|
||||||
litellm_settings:
|
litellm_settings:
|
||||||
drop_params: true
|
drop_params: true
|
||||||
set_verbose: true
|
set_verbose: false # Disable verbose logging for better performance
|
||||||
# Disable prompt caching features
|
# Enable prompt caching for better performance
|
||||||
cache: false
|
cache: true
|
||||||
# Force strip specific parameters globally
|
# Force strip specific parameters globally
|
||||||
allowed_fails: 0
|
allowed_fails: 0
|
||||||
# Modify params before sending to provider
|
# Modify params before sending to provider
|
||||||
modify_params: true
|
modify_params: true
|
||||||
# Drop prompt_cache_key globally for all models
|
# Enable success and failure logging but minimize overhead
|
||||||
additional_drop_params: ["prompt_cache_key"]
|
success_callback: [] # Disable all success callbacks to reduce DB writes
|
||||||
|
failure_callback: [] # Disable all failure callbacks
|
||||||
|
|
||||||
router_settings:
|
router_settings:
|
||||||
allowed_fails: 0
|
allowed_fails: 0
|
||||||
@@ -47,3 +49,9 @@ default_litellm_params:
|
|||||||
|
|
||||||
general_settings:
|
general_settings:
|
||||||
disable_responses_id_security: true
|
disable_responses_id_security: true
|
||||||
|
# Disable spend tracking to reduce database overhead
|
||||||
|
disable_spend_logs: true
|
||||||
|
# Disable tag tracking
|
||||||
|
disable_tag_tracking: true
|
||||||
|
# Disable daily spend updates
|
||||||
|
disable_daily_spend_logs: true
|
||||||
|
|||||||
@@ -269,12 +269,11 @@ services:
|
|||||||
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web.rule=Host(`admin.${DEV_ASCIINEMA_TRAEFIK_HOST}`)"
|
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web.rule=Host(`admin.${DEV_ASCIINEMA_TRAEFIK_HOST}`)"
|
||||||
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web.entrypoints=web"
|
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web.entrypoints=web"
|
||||||
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web.service=${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin"
|
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web.service=${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin"
|
||||||
# Admin interface - HTTPS router with Basic Auth
|
# Admin interface - HTTPS router with Authelia
|
||||||
- "traefik.http.middlewares.${DEV_COMPOSE_PROJECT_NAME}-asciinema-auth.basicauth.users=${AUTH_USERS}"
|
|
||||||
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web-secure.rule=Host(`admin.${DEV_ASCIINEMA_TRAEFIK_HOST}`)"
|
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web-secure.rule=Host(`admin.${DEV_ASCIINEMA_TRAEFIK_HOST}`)"
|
||||||
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web-secure.tls.certresolver=resolver"
|
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web-secure.tls.certresolver=resolver"
|
||||||
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web-secure.entrypoints=web-secure"
|
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web-secure.entrypoints=web-secure"
|
||||||
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web-secure.middlewares=${DEV_COMPOSE_PROJECT_NAME}-asciinema-auth,${DEV_COMPOSE_PROJECT_NAME}-asciinema-compress,security-headers@file"
|
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web-secure.middlewares=${DEV_COMPOSE_PROJECT_NAME}-asciinema-compress,net-authelia,security-headers@file"
|
||||||
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web-secure.service=${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin"
|
- "traefik.http.routers.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin-web-secure.service=${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin"
|
||||||
- "traefik.http.services.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin.loadbalancer.server.port=4002"
|
- "traefik.http.services.${DEV_COMPOSE_PROJECT_NAME}-asciinema-admin.loadbalancer.server.port=4002"
|
||||||
# Network
|
# Network
|
||||||
|
|||||||
@@ -71,15 +71,10 @@ access_control:
|
|||||||
- "scrapy.pivoine.art"
|
- "scrapy.pivoine.art"
|
||||||
- "restic.pivoine.art"
|
- "restic.pivoine.art"
|
||||||
- "proxy.pivoine.art"
|
- "proxy.pivoine.art"
|
||||||
|
- "admin.asciinema.dev.pivoine.art"
|
||||||
|
- "facefusion.ai.pivoine.art"
|
||||||
policy: one_factor
|
policy: one_factor
|
||||||
|
|
||||||
# Development services
|
|
||||||
- domain:
|
|
||||||
- "dev.pivoine.art"
|
|
||||||
- "n8n.pivoine.art"
|
|
||||||
- "asciinema.pivoine.art"
|
|
||||||
- "coolify.pivoine.art"
|
|
||||||
policy: two_factor
|
|
||||||
|
|
||||||
# session secret set via environment variable: AUTHELIA_SESSION_SECRET
|
# session secret set via environment variable: AUTHELIA_SESSION_SECRET
|
||||||
session:
|
session:
|
||||||
|
|||||||
@@ -218,6 +218,7 @@ services:
|
|||||||
- 'traefik.http.routers.${NET_COMPOSE_PROJECT_NAME}-umami-web-secure.rule=Host(`${NET_TRACK_TRAEFIK_HOST}`)'
|
- 'traefik.http.routers.${NET_COMPOSE_PROJECT_NAME}-umami-web-secure.rule=Host(`${NET_TRACK_TRAEFIK_HOST}`)'
|
||||||
- 'traefik.http.routers.${NET_COMPOSE_PROJECT_NAME}-umami-web-secure.tls.certresolver=resolver'
|
- 'traefik.http.routers.${NET_COMPOSE_PROJECT_NAME}-umami-web-secure.tls.certresolver=resolver'
|
||||||
- 'traefik.http.routers.${NET_COMPOSE_PROJECT_NAME}-umami-web-secure.entrypoints=web-secure'
|
- 'traefik.http.routers.${NET_COMPOSE_PROJECT_NAME}-umami-web-secure.entrypoints=web-secure'
|
||||||
|
- 'traefik.http.routers.${NET_COMPOSE_PROJECT_NAME}-umami-web-secure.middlewares=security-headers@file'
|
||||||
- 'traefik.http.services.${NET_COMPOSE_PROJECT_NAME}-umami-web-secure.loadbalancer.server.port=3000'
|
- 'traefik.http.services.${NET_COMPOSE_PROJECT_NAME}-umami-web-secure.loadbalancer.server.port=3000'
|
||||||
- 'traefik.docker.network=${NETWORK_NAME}'
|
- 'traefik.docker.network=${NETWORK_NAME}'
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user