LiteLLM 是一款开源的大模型代理服务器(AI 网关),可以提供统一的接口调用所有支持 OpenAI 的大模型服务,并带有一个管理界面,支持负载均衡、密钥管理和日志记录等功能。
部署
通过 docker compose部署
先创建 litellm_config.yaml 文件,这里以添加通过 [[vLLM]] 部署的 [[Qwen3.5]] 模型为例:
general_settings: master_key: os.environ/LITELLM_MASTER_KEY ui_password: os.environ/LITELLM_UI_PASSWORD ui_username: adminlitellm_settings: public_model_groups_links: {}model_list: - model_name: Qwen3.5-122B litellm_params: model: hosted_vllm/Qwen3.5-122B api_base: os.environ/API_BASE api_key: os.environ/API_KEY extra_body: chat_template_kwargs: enable_thinking: false再创建带数据库版本的 [[docker-compose]] 配置文件:
services: postgres: container_name: litellm-db image: postgres:16 restart: unless-stopped environment: - POSTGRES_USER=litellm - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} - POSTGRES_DB=litellm volumes: - postgres_data:/var/lib/postgresql/data healthcheck: test: [ "CMD-SHELL", "pg_isready -U litellm -d litellm" ] interval: 10s timeout: 5s retries: 5
litellm: container_name: litellm image: ghcr.io/berriai/litellm:main-stable ports: - "4000:4000" volumes: - ./litellm_config.yaml:/app/config.yaml environment: - LITELLM_MASTER_KEY=${LITELLM_MASTER_KEY} - LITELLM_UI_PASSWORD=${LITELLM_UI_PASSWORD} - VLLM_BASE_URL=${API_BASE} - VLLM_API_KEY=${API_KEY} - STORE_MODEL_IN_DB=True - DATABASE_URL=postgresql://litellm:${POSTGRES_PASSWORD}@postgres:5432/litellm command: --config /app/config.yaml --port 4000 depends_on: postgres: condition: service_healthy
volumes: postgres_data:如果不需要 [[FastAPI]] 提供的文档,可以在环境变量加入 - NO_DOCS=True 关闭。
最后创建 .env 文件,用于存储环境变量:
LITELLM_MASTER_KEY=sk-42LITELLM_UI_PASSWORD=passwordPOSTGRES_PASSWORD=passwordAPI_BASE=http://ip:port/v1API_KEY=sk-42- LITELLM_MASTER_KEY: LiteLLM 主密钥
- LITELLM_UI_PASSWORD: LiteLLM UI 密码
- API_BASE: API URL (带 v1 后缀)
- API_KEY: API 密钥
- POSTGRES_PASSWORD: PostgreSQL 密码
注:上面部署的是带数据库版本的 LiteLLM,模型是可以直接在 UI 中添加的,因此在 litellm_config.yaml 文件中的 model_list 字段部分不是必须的,相对应的变量也是可以直接移除,可以参考 [[litellm.yml]] 中的配置。
config 配置
- store_model_in_db:启用数据存储,开启后才能在 UI 中添加模型,默认为 False