安全公告 — 恶意 litellm 版本 1.82.7 与 1.82.8 已从 PyPI 移除(存在 API 密钥外泄风险)。请卸载、轮换已暴露凭据,并升级至安全版本(如 1.82.9+)。运行 pip show litellm 以确认。 PyPI · README

AI Gateway API

基址:http://localhost:8088(GATEWAY_HTTP_ADDR)

AI Gateway API

源码:apps/gateway/internal/server/server.go(路由注册:Router() 方法)

基址:http://localhost:8088GATEWAY_HTTP_ADDR

OpenAI 兼容 + 企业管控扩展。


公开路由

方法路径认证说明
GET/healthz健康检查
POST/v1/chat/completionsJWT Bearer聊天(支持 stream: true SSE)
POST/v1/embeddingsJWT Bearer向量嵌入

Chat Completions

Headers

1Authorization: Bearer <portal_jwt>
2Content-Type: application/json

可选路由 headers(见 routing.Decider):

  • Provider 显式指定 header(配置项 provider_header
  • local_route_header — 强制 local / private-cloud / third-party

Body:标准 OpenAI chat completions JSON。

响应

  • 非流式:OpenAI JSON + usage
  • 流式:text/event-stream,SSE data lines
  • 策略 block:业务错误 JSON(非上游模型拒答文案),含命中规则信息

流式加固环境变量

  • GATEWAY_STREAM_IDLE_TIMEOUT
  • GATEWAY_STREAM_SCANNER_MAX_BUFFER_MB

Internal 路由

方法路径认证说明
GET/internal/channel-statsGATEWAY_INTERNAL_TOKENChannel 运行统计

上游 Key 解析

OpenAICompatibleProvider 顺序:

  1. <PROVIDER>_API_KEY(provider 名大写、-_
  2. LLM_API_KEY 通用兜底
  3. 未配置 → mock 回退(链路仍走策略/审计/计量)

Admin GUI 配置的 Key 存 PG cipher,gateway runtimeconfig ~5s 轮询,优先级高于 env。


配置来源

配置环境变量(远程)环境变量(本地)
ProvidersGATEWAY_REMOTE_PROVIDERS_URLGATEWAY_ADMIN_PROVIDERS_FILE
配额GATEWAY_REMOTE_QUOTA_CONFIG_URLGATEWAY_QUOTA_CONFIG_FILE
策略快照GATEWAY_REMOTE_POLICY_SNAPSHOT_URLGATEWAY_POLICY_SNAPSHOT_FILE
ChannelGATEWAY_REMOTE_CHANNELS_URLPG gateway_channels
策略覆盖GATEWAY_POLICY_OVERRIDE_FILE

远程拉取需 GATEWAY_INTERNAL_TOKEN 与 admin 一致。


审计与计量输出

输出路径/表
审计 JSONLapps/gateway/.runtime/audit/audit-*.jsonl
审计 PGgateway_audit_events
待回灌.runtime/audit/.pg-pending
计量 PGusage_records
计量 JSONLGATEWAY_USAGE_LOG(无 PG 时)

构建与运行

bash
1cd enterprise/apps/gateway
2go build -o bin/gateway ./cmd/gateway
3go run ./cmd/gateway

Docker:

bash
1cd enterprise
2docker build -f apps/gateway/Dockerfile -t agenticx-gateway:latest .

详见 ../gateway/overview.md../../apps/gateway/README.md


与 Machi Desktop 区别

Enterprise Gateway 为独立 Go 进程。Machi Desktop 使用内嵌 Python `agx serve` + LiteLLM,不是同一实现