AI SDK 提供商 (kind: "ai-sdk")
为了让 AIO Proxy 能够轻松融入广阔的开源大模型与社区驱动生态,AIO Proxy 原生集成了 Vercel AI SDK 的 Provider 运行时标准。
任何符合 AI SDK Provider 规范的 npm 驱动包(包括官方驱动、开源社区生态包或自建私有包)均可直接作为 AIO Proxy 的提供商驱动,无需为每个平台单独编写适配代码。
什么是 Vercel AI SDK 与 Provider 规范?
AI SDK 是 Vercel 主导的开源 TypeScript 大模型调用标准框架。在 AI SDK 标准体系中,大模型厂商或推理网关被抽象为标准的 Provider 驱动包。一个合规的 Provider 驱动包只需满足以下约定:
- 导出工厂函数:包中导出了以
create*命名的工厂函数(例如createOpenAI、createAnthropic、createOpenRouter、createMistral、createXai、createGoogle等)。 - 返回模型实例:该工厂函数接收自定义参数对象(如
baseURL、apiKey等),并返回符合规范的LanguageModelV1或ProviderV1实例。
只要满足上述接口规范,AIO Proxy 就能直接通过 packageName 进行运行时动态加载与实例化调用。
常用包与配置示例
1. 接入通用 OpenAI 兼容服务 (@ai-sdk/openai-compatible)
适用于本地 Ollama、vLLM、LM Studio 或各类第三方中转:
2. 接入 OpenRouter 全球模型池 (@openrouter/ai-sdk-provider)
3. 接入各类开源与专属驱动包
如 @ai-sdk/mistral、@ai-sdk/groq、@ai-sdk/xai,甚至任何社区自主发布的驱动包(如 my-company-ai-sdk-provider):
与上游同步模型
设置 syncModels: true 可代替手动维护 models。模型发现优先使用包实例的 listModels 方法,否则通过 options.baseURL 查询 OpenAI 兼容的 /models 接口。两者都不具备时,Provider 会报告 CATALOG_UNSUPPORTED。
同步默认关闭,与非空的 models 互斥。excludedModels 仅在 syncModels: true 时有效,按精确模型 ID 隐藏模型,不支持 glob 匹配。别名可指向被隐藏的模型,手动 models 列表保持原有行为。
启动和配置变更后立即发现模型,之后每小时刷新。刷新失败后,在列表过期时每隔 5 分钟重试;上游故障或返回空列表时保留上次成功的列表。首次发现成功前,仅别名可路由。更改 packageName 或 options.baseURL 会丢弃旧列表。模型发现不会改写配置文件。
Dashboard 的模型区域提供手动 / 与上游同步(Manual / Sync with upstream)切换、逐个隐藏模型、上次刷新时间和刷新按钮。API 提供商 也支持模型同步。