Files
AIRouter/configs/config.yaml
T
freedakgmail 63eec59773
CI / lint (push) Has been cancelled
CI / test (push) Has been cancelled
CI / build (push) Has been cancelled
CI / security-scan (push) Has been cancelled
feat: 添加vLLM适配器、修复SSE流式输出和中间件问题
- 新增 vLLM 适配器 (internal/adapter/vllm.go),支持 OpenAI 兼容 API
- 修复 responseWriter 未实现 http.Flusher 导致 SSE 流式输出 500 错误
- 调整中间件顺序:BodyLimit 移至 Auth 之前,提前拒绝超大请求
- BodyLimit 增强:检查 Content-Length header
- 导出 Server.Authenticator() 方法供测试使用
- 配置更新:使用本地 deepseek-r1:1.5b 模型,新增 vllm-chat 逻辑模型
- 修复 handlers.go 中未使用的 target 参数 lint 警告
2026-08-03 07:52:50 +08:00

102 lines
2.2 KiB
YAML

server:
host: "0.0.0.0"
port: 8080
admin_port: 8081
max_request_body_mb: 20
auth:
enabled: true
methods: [api_key]
jwt_issuer: edge-ai-gateway
jwt_secret_env: EDGEAI_JWT_SECRET
scheduler:
max_running_tasks: 8
max_queued_tasks: 500
fairness: weighted_fair_queue
priority_aging_seconds: 30
reserved_realtime_slots: 2
timeouts:
default_connect_ms: 5000
default_queue_ms: 5000
default_first_token_ms: 10000
default_inference_ms: 60000
default_idle_ms: 15000
default_total_ms: 90000
cancel_grace_period_ms: 3000
context:
safety_margin_ratio: 0.08
default_policy: summary_and_recent
max_session_messages: 200
session_idle_ttl_minutes: 60
enable_prompt_persistence: false
models:
general-chat:
provider: ollama
actual_model: deepseek-r1:1.5b
endpoint: http://127.0.0.1:11434
context_window: 32768
max_output_tokens: 4096
max_concurrency: 4
residency: always
cancel_supported: true
fast-chat:
provider: ollama
actual_model: deepseek-r1:1.5b
endpoint: http://127.0.0.1:11434
context_window: 16384
max_output_tokens: 2048
max_concurrency: 2
residency: on_demand
idle_unload_seconds: 600
vllm-chat:
provider: vllm
actual_model: deepseek-r1:1.5b
endpoint: http://127.0.0.1:8000
context_window: 32768
max_output_tokens: 4096
max_concurrency: 4
residency: always
cancel_supported: true
routing:
sensitive_data_local_only: true
allow_cloud_fallback_by_default: false
overload_strategy:
- same_model_other_instance
- smaller_local_model
- backup_edge_node
- reject
circuit_breaker:
error_rate_threshold: 0.1
min_requests: 10
window_seconds: 60
open_duration_seconds: 30
half_open_max_requests: 1
backpressure:
level1_threshold: 0.70
level2_threshold: 0.85
level3_threshold: 0.95
observability:
metrics_enabled: true
metrics_path: /metrics
tracing_enabled: true
prompt_logging: metadata_only
audit_retention_days: 180
log_level: info
storage:
session_db: sqlite:///var/lib/edgeai/sessions.db
task_state: sqlite:///var/lib/edgeai/tasks.db
redis:
enabled: false
endpoint: redis://127.0.0.1:6379