Установите и настройте провайдера
Vercel AI SDK может использовать провайдера, совместимого с OpenAI. Один раз настройте base URL CometAPI и храните API key в переменной окружения на стороне сервера.
import { createOpenAI } from '@ai-sdk/openai';
export const cometapi = createOpenAI({
apiKey: process.env.COMETAPI_KEY,
baseURL: 'https://api.cometapi.com/v1',
});Создайте потоковый чат-маршрут
Выбирайте модель на сервере из allowlist. Это предотвращает выбор клиентами неожиданно дорогой модели, сохраняя гибкость работы с несколькими моделями.
import { streamText } from 'ai';
import { cometapi } from '@/lib/cometapi';
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: cometapi(modelId),
messages,
});
return result.toDataStreamResponse();
}Переключайте модели в зависимости от рабочей нагрузки
Используйте более быстрый маршрут для диалоговых реплик и маршрут с более высоким качеством для сложного анализа, крупных изменений кода или проверки высокой ценности. Сделайте логику маршрутизации наблюдаемой, чтобы позже можно было сравнить стоимость и качество.
- Маршрутизируйте по явному product mode, прежде чем пытаться выполнять автоматическую классификацию.
- Записывайте выбранный маршрут, model ID, токены, задержку и результат запроса.
- Применяйте ограничения расходов на уровне аккаунта и запроса.
Чек-лист для production
Перед запуском добавьте валидацию схемы, обработку таймаутов, повторные попытки при временных сбоях и совместимый fallback-маршрут. Никогда не раскрывайте upstream API key в коде браузера.
