Design a unified LLM Gateway with: - Multi-format API support (OpenAI, Anthropic, Responses API) - 5 provider adapters (OpenAI, Anthropic, Azure, Gemini, Bedrock) - Model aliasing, routing, and load balancing - RPM/TPM rate limiting and budget control (key/project level) - Fallback/retry with circuit breaker - Request logging and usage statistics - Admin API for provider/key/model management Tech stack: Python (FastAPI) + SQLite Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
1.1 KiB
1.1 KiB
2026-05-01
纪要
- 工作区已初始化,可在此持续记录当天上下文。
决策
LLM Gateway 技术选型
- 结论:采用 Python (FastAPI) + SQLite 技术栈实现 LLM Gateway
- 理由:
- Python 开发效率高,一期功能多,需快速落地
- SQLite 零配置,轻量级,适合一期验证
- FastAPI 原生异步,自动文档,生态成熟
- 影响:后续可平滑迁移到 PostgreSQL + Redis 方案
- 替代方案:Go(高性能但开发成本高)、Rust(极致性能但开发周期长)
LLM Gateway 架构设计
- 结论:采用统一 API 入口 + 多 Provider Adapter 架构
- 理由:
- 支持 OpenAI-compatible、OpenAI Responses API、Anthropic Messages API 三种格式
- 通过 Transformer 层实现格式互转
- Router 层实现模型别名和路由
- Load Balancer + Circuit Breaker 实现高可用
- 一期 Provider:OpenAI、Anthropic、Azure OpenAI、Google Gemini、AWS Bedrock
- 二期扩展:Structured output、插件系统、账单结算、组织级 RBAC