cheapaimodel

Vercel AI SDK

Usa los modelos de cheapaimodel en el Vercel AI SDK a través del proveedor compatible con OpenAI.

Copiar

El AI SDK se conecta a servicios compatibles con OpenAI mediante el proveedor @ai-sdk/openai-compatible. Crea un proveedor para cheapaimodel y pasa sus modelos a generateText, streamText y las demás funciones del AI SDK.

Parámetro del AI SDKValor
Base URLbaseURLhttps://api.cheapaimodel.ai/v1
Clave de APIapiKeyLa clave que creaste en la página Claves de API de la consola
ID del modelocheapaimodel(modelId)deepseek-v4-1-flash o cualquier ID del catálogo

Configuración

Terminal
npm install ai @ai-sdk/openai-compatible
cheapaimodel.ts
import { createOpenAICompatible } from "@ai-sdk/openai-compatible";

export const cheapaimodel = createOpenAICompatible({
  name: "cheapaimodel",
  baseURL: "https://api.cheapaimodel.ai/v1",
  apiKey: process.env.CHEAPAIMODEL_API_KEY,
  includeUsage: true, // token usage on streamed responses
});
generate.ts
import { generateText } from "ai";
import { cheapaimodel } from "./cheapaimodel";

const { text } = await generateText({
  model: cheapaimodel("deepseek-v4-1-flash"),
  prompt: "Explain recursion in one sentence.",
});
console.log(text);

El proveedor envía las solicitudes a /v1/chat/completions. Funciona igual en un route handler de Next.js: pasa cheapaimodel("deepseek-v4-1-flash") como model.

Streaming

stream.ts
import { streamText } from "ai";
import { cheapaimodel } from "./cheapaimodel";

const result = streamText({
  model: cheapaimodel("deepseek-v4-1-flash"),
  prompt: "Write a haiku about rivers.",
});

for await (const chunk of result.textStream) {
  process.stdout.write(chunk);
}
console.log("\nTokens:", (await result.usage).totalTokens);

Errores comunes

  • Unauthenticated request to AI Gateway. El modelo se pasó como una cadena simple, por ejemplo model: "deepseek-v4-1-flash". El AI SDK envía las cadenas de modelo simples al Vercel AI Gateway, no a cheapaimodel. Mejor pasa cheapaimodel("deepseek-v4-1-flash").
  • Not Found o Invalid URL (POST /v1/chat/completions/chat/completions). A baseURL le falta /v1, o incluye la ruta del endpoint. Defínelo exactamente como https://api.cheapaimodel.ai/v1; el proveedor agrega /chat/completions por su cuenta.
  • El uso de tokens es undefined en las llamadas con streaming. El proveedor compatible con OpenAI solo pide el uso en streaming cuando defines includeUsage: true. Mantenlo en la configuración del proveedor.
  • Chats de varios turnos con @ai-sdk/openai. Su createOpenAI también acepta nuestra Base URL, pero el openai(modelId) predeterminado llama a la API de Responses, y cuando le devuelves en messages las respuestas anteriores del SDK, las envía como IDs item_reference en lugar de su texto. Eso solo funciona si el servidor guardó esas respuestas. Usa el proveedor compatible con OpenAI de arriba, o openai.chat(modelId).
Copiar
Abrir en

En esta página