Skip to content

概述

GodeX 在 OpenAI Responses API 与众多非 OpenAI 大语言模型提供商之间架起了桥梁。你无需重写每个客户端 SDK 来适配各提供商的专有协议,只需将 OpenAI 兼容的工具指向 GodeX,它会在后台透明地完成请求和响应的转换。这消除了供应商锁定问题,让团队能够通过一次配置变更即可切换或组合 LLM 提供商。

概览

方面详情
定义兼容 OpenAI 的 Responses API 网关
协议接收 OpenAI Responses API 请求;转换为 Chat Completions
运行时基于 Bun 构建,提供高性能 HTTP 服务
内置提供商DeepSeek、Zhipu、MiniMax
会话后端内存、SQLite
配置YAML 文件,支持 ${VAR} 环境变量插值
CLIgodex init 向导、godex serve 运行时
可观测性内置追踪记录器,支持载荷捕获

架构

GodeX 采用分层网关架构,每一层拥有单一职责:CLI 解析、配置构建、提供商注册、请求桥接和响应重建。

请求生命周期

每个传入请求都遵循一条确定性的系统路径。桥接内核验证兼容性、规划工具转换、将请求分发到正确的提供商边缘,然后将响应重建为 OpenAI Responses API 格式。

SyncRequestPipeline 负责编排整个流程:它将处理委托给 ProviderExchange,后者调用 buildChatCompletionRequest 将传入的 Responses API 载荷转换为针对目标提供商能力定制的 Chat Completions 请求 (src/responses/sync-request-pipeline.ts:31-46)。

提供商规约契约

每个提供商都实现了 ProviderSpec 接口,该接口定义了能力、端点配置、认证、工具名称转换以及响应/流访问器的统一契约 (src/bridge/provider-spec/contract.ts:54-74)。

契约字段用途
name唯一的提供商标识符(如 deepseek
protocol始终为 chat_completions
capabilities声明支持的参数、工具、格式
endpoint默认基础 URL
auth认证方案(始终为 Bearer)
toolName在 API 和提供商之间转换工具名称的编解码器
response用于提取文本、用量、结束原因的访问器
stream用于从 SSE 数据块中提取增量的访问器
hooks可选的 patchRequestnormalizeResponsenormalizeChunk

会话管理

GodeX 通过持久化响应并在客户端发送 previous_response_id 时回放历史消息来支持多轮对话。提供两种后端:

后端描述默认
memory进程内映射;重启后丢失
sqlite通过 SQLite 实现的文件持久化按需启用

会话配置在 src/config/sections/session.ts:5-27 中解析,存储在 ApplicationContext 初始化期间创建 (src/context/application-context.ts:20-30)。

兼容性规划

在任何请求到达提供商之前,桥接内核会构建一份兼容性计划,将每个请求的参数、工具类型和响应格式与提供商声明的能力进行校验。不支持的功能要么降级为兼容的替代方案,要么以诊断信息拒绝 (src/bridge/compatibility/compatibility-plan.ts:38-50)。

流式管道

对于流式请求,StreamPipeline 将多个 TransformStream 阶段串联起来:原始 SSE 摄取、事件桥接、输出契约校验、追踪记录、日志记录、会话持久化和兼容性诊断 (src/responses/stream-pipeline.ts:37-85)。

下一步

主题描述
快速开始安装 GodeX 并发起你的第一个 API 调用
配置完整的 godex.yaml 参考文档
内置提供商DeepSeek、Zhipu 和 MiniMax 对比

参考