安装并设置 provider
Vercel AI SDK 可以使用兼容 OpenAI 的 provider。只需设置一次 CoreAPI base URL,并将 API key 保存在服务器端环境变量中。
import { createOpenAI } from '@ai-sdk/openai';
export const coreapi = createOpenAI({
apiKey: process.env.COREAPI_KEY,
baseURL: 'https://unixcore.io/v1',
});创建串流聊天路由
在服务器端从 allowlist 中选择模型。这可防止用户端选取非预期的高成本模型,同时保留多模型弹性。
import { streamText } from 'ai';
import { coreapi } from '@/lib/coreapi';
const allowedModels = {
fast: 'your-fast-model-id',
quality: 'your-quality-model-id',
};
export async function POST(request: Request) {
const { messages, route = 'fast' } = await request.json();
const modelId = allowedModels[route as keyof typeof allowedModels];
const result = streamText({
model: coreapi(modelId),
messages,
});
return result.toDataStreamResponse();
}依工作负载切换模型
对于对话回合使用较快的路由,对于复杂分析、长篇代码变更或高价值审查则使用高质量路由。请保持路由逻辑可观测,以便日后比较成本与质量。
- 在尝试自动分类之前,先依明确的产品模式进行路由。
- 记录所选路由、model ID、token、延迟与请求结果。
- 套用账户层级与请求层级的支出上限。
生产环境检查清单
在上线前,请加入结构验证、逾时处理、对暂时性失败的重试,以及兼容的 fallback 路由。切勿在浏览器代码中暴露上游 API key。
