@dotlab-hq/llm-proxy

中文文档
1.0.12发布于 2026/05/04MITTypeScriptES Module构建来源已验证近 30 天下载 5182

LLM 语言 具有 OpenAI 兼容性的代理服务器

中文使用文档
文档目录31 节
  1. 快速启动
  2. 1. 初始化配置
  3. 2. 配置您的模型
  4. 3. 启动服务器
  5. CLI 命令
  6. init
  7. serve
  8. 选项
  9. 配置格式
  10. JSONC(载有评论的JSON)
  11. 动态Schema 参考
  12. 模型配置
  13. API 终点
  14. 获取缓存状态
  15. 获取统计
  16. OpenAI 兼容端点
  17. 发展
  18. 在开发模式中运行
  19. 类型检查
  20. 运行测试
  21. 本地链接软件包
  22. 建立用于分发的 CLI
  23. 特征
  24. 处理错误
  25. CLI 架构
  26. 生产部署
  27. 1. 建立国家能力倡议
  28. 2. 用于项目
  29. 环境变量
  30. 建筑
  31. 许可证

@dotlab-hq/llm-代理服务器

一个本地的 LLM API 代理服务器,其速率限制,缓存和多后端支持. 作为OpenAI兼容的API端点工作.

快速启动

1. 初始化配置

创建新 model.jsonc 配置文件 :

npx @dotlab-hq/llm-proxy init

或者跳过自动提示 :

npx @dotlab-hq/llm-proxy init --skip-prompts

2. 配置您的模型

编辑生成的 model.jsonc 并添加您的 LLM 提供者 :

{
  "$schema": "https://raw.githubusercontent.com/dotlab-hq/llm-proxy/refs/heads/main/schema.json",
  "state-adapter": "memory",
  "models": {
    "openai": [
      {
        "id": "primary-openai",
        "name": "Primary Instance",
        "models": ["gpt-3.5-turbo", "gpt-4"],
        "individualLimit": true,
        "baseUrl": "https://api.openai.com/v1",
        "apiKey": "sk-your-api-key-here",
        "rateLimit": {
          "tokensPerMinute": 90000,
          "requestsPerMinute": 3500,
          "requestsPerDay": 200000
        }
      }
    ]
  }
}

3. 启动服务器

npx @dotlab-hq/llm-proxy serve

服务器从端口开始 25789 (中文(简体) ) 默认。 如果忙, 它会自动选择下一个可用的端口 .

与 --skip-prompts,服务器立即启动,没有提示.

CLI 命令

init

初始化一个新的 model.jsonc 配置 :

npx @dotlab-hq/llm-proxy init
npx @dotlab-hq/llm-proxy init --skip-prompts

serve

启动 LLM 代理服务器 :

npx @dotlab-hq/llm-proxy serve
npx @dotlab-hq/llm-proxy serve --skip-prompts

它会做什么:

  • 装入配置从 model.jsonc
  • 在端口25789上开始( 如果忙则自动选择下一个可用)
  • 显示服务器配置细节
  • 按 Ctrl+C 键停止

选项

  • --skip-prompts - 跳过所有交互式提示并使用默认

配置格式

JSONC(载有评论的JSON)

配置使用 约克 更好的用户体验格式 :

  • ✅ 为文件保留了评论
  • * 内在字段解释
  • 显示示例值
  • * 已记录的可选字段

动态Schema 参考

生成的 schema 引用总是指最近的版本 :

"$schema": "https://raw.githubusercontent.com/dotlab-hq/llm-proxy/refs/heads/main/schema.json"

当作为国家防范机制一揽子方案安装并在当地链接时,它提到:

"$schema": "./node_modules/@dotlab-hq/llm-proxy/schema.json"

模型配置

每个后端配置包括:

{
  // Unique identifier for this backend
  "id": "primary-openai",
  // Display name
  "name": "Primary Instance",
  // Models this backend supports
  "models": ["gpt-3.5-turbo", "gpt-4"],
  // Track rate limits per instance
  "individualLimit": true,
  // API endpoint (OpenAI-compatible)
  "baseUrl": "https://api.openai.com/v1",
  // API authentication key
  "apiKey": "sk-your-api-key-here",
  // Rate limiting per backend
  "rateLimit": {
    "tokensPerMinute": 90000,
    "requestsPerMinute": 3500,
    "requestsPerDay": 200000
  }
}

API 终点

获取缓存状态

curl http://localhost:25789/

获取统计

curl http://localhost:25789/stats

自动装入服务器启动时使用当前速率限制 .

OpenAI 兼容端点

  • POST /v1/chat/completions - 聊天结束
  • POST /v1/completions - 文本完成情况
  • POST /v1/embeddings - 内嵌物
  • GET /v1/models - 列出现有模式

示例

curl -X POST http://localhost:25789/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer llm-proxy" \
  -d '{
    "model": "gpt-3.5-turbo",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

发展

在开发模式中运行

bun run dev

类型检查

bun run types

运行测试

bun run testify
bun link

用于其他项目的当地登记:

bun link @dotlab-hq/llm-proxy

建立用于分发的 CLI

bun run build

创建 dist/cli.js (独立CLI可执行).

特征

✅ OpenAI 兼容 - 更换OpenAI API
✅ 多个后端 - 多个供应商的负载平衡
✅ 限制费率 - 外观符号/请求限制
✅ 缓存 - 内存或后置状态
✅ 自动挂起 - 服务器启动时加载的统计数据
✅ 模块化 CLI - 分开的命令和公用事业
✅ 动态模板 - 总是使用来自GitHub的最新计划
✅ JSONC 配置 - 提供更好的文件的评论
✅ Bun 已链接 - 地方一揽子发展支助
✅ 类型脚本 - 全类型安全

处理错误

所有错误都以 OpenAI 兼容格式返回 :

  • 400个 - 无效请求(丢失模型,无效参数)
  • 429个 - 超过费率限额(下个后端)
  • 502 (中文(简体) ) - 所有后端都失败了
  • 第503条 - 没有配置后端

堆栈痕迹被压制,只显示方便用户的信息.

CLI 架构

关于CLI结构和发展的详情,请参看: (智利语).md。 。 。 .

生产部署

1. 建立国家能力倡议

bun run build

2. 用于项目

npx @dotlab-hq/llm-proxy init
npx @dotlab-hq/llm-proxy serve

环境变量

使用 ${VAR_NAME} 在你身边 model.jsonc 参考环境变量:

{
  "models": {
    "openai": [
      {
        "apiKey": "${OPENAI_API_KEY}",
        "baseUrl": "https://api.openai.com/v1",
        "models": ["gpt-3.5-turbo"]
      }
    ]
  }
}

建筑

  • 浩诺 - 快速而轻巧的HTTP服务器
  • 佐德语Name - 类型安全配置验证
  • @ clack/ 瞬间 - 美丽的互动性CLI
  • 阿宝 - 快速JavaScript运行时间
  • 多后端 - 供应商之间的负载平衡
  • 限制费率 - Granular用途跟踪
  • 缓存 - 可插接适配器(记忆/雷地斯)

许可证

麻省理工学院


由 Dotlab 总部创建

版本与发布记录

@dotlab-hq/llm-proxy 共发布 13 个版本,首次发布于 2026/05/02;过去 12 个月发布了 13 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
1.0.12latest2026/05/046 个月前
1.0.112026/05/046 个月前
1.0.102026/05/046 个月前
1.0.92026/05/046 个月前
1.0.82026/05/046 个月前
1.0.72026/05/046 个月前

关于 @dotlab-hq/llm-proxy 的常见问题

@dotlab-hq/llm-proxy 是什么?

LLM 语言 具有 OpenAI 兼容性的代理服务器

如何安装 @dotlab-hq/llm-proxy?

在项目目录运行 npm install @dotlab-hq/llm-proxy,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:typescript(^5)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。它还提供命令行工具 llm-proxy,可以用 npx llm-proxy 直接运行。

@dotlab-hq/llm-proxy 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@dotlab-hq/llm-proxy 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@dotlab-hq/llm-proxy 可以商用吗?

@dotlab-hq/llm-proxy 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@dotlab-hq/llm-proxy 的下载量有多少?

根据 npm 官方下载统计,@dotlab-hq/llm-proxy 在 2026/10/13 – 2026/11/11 这 30 天内被下载 5,182 次,日均约 173 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@dotlab-hq/llm-proxy 还在维护吗?

最新版本 1.0.12 发布于 2026/05/04(6 个月前);至今共发布 13 个版本,其中过去 12 个月发布了 13 个;首次发布于 2026/05/02。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。