Vercel AI SDK
The Vercel AI SDK reaches UberLLM through the official
@ai-sdk/openai-compatible provider.
Install
pnpm add ai @ai-sdk/openai-compatible
# or: npm i ai @ai-sdk/openai-compatible
Configure the provider
import { createOpenAICompatible } from "@ai-sdk/openai-compatible";
const uberllm = createOpenAICompatible({
name: "uberllm",
apiKey: process.env.UBERLLM_API_KEY,
baseURL: "https://api.uberllm.dev/v1",
includeUsage: true, // return token usage on streaming responses
});
Fields:
- name: an identifier for the provider (used in routing/telemetry).
- apiKey: your
ull_key (sent asAuthorization: Bearer). - baseURL:
https://api.uberllm.dev/v1. - includeUsage: set
trueso streamed responses carry usage — recommended.
Generate and stream
import { generateText, streamText } from "ai";
// One-shot
const { text } = await generateText({
model: uberllm("deepseek/deepseek-v3.1"),
prompt: "Say hello in one sentence.",
});
console.log(text);
// Streaming
const result = streamText({
model: uberllm("deepseek/deepseek-v3.1"),
prompt: "Count to five.",
});
for await (const delta of result.textStream) {
process.stdout.write(delta);
}
Routing suffixes
Pass a suffixed model id to steer routing:
model: uberllm("deepseek/deepseek-v3.1:floor"); // cheapest healthy provider
model: uberllm("deepseek/deepseek-v3.1:nitro"); // highest throughput
See Models & routing for the full model, and Pricing for the no-markup billing model.