Vercel AI Exporter

SDK reference for the Respan Vercel AI exporter.

Installation

$npm install @respan/exporter-vercel

Classes

RespanExporter

OpenTelemetry SpanExporter implementation that converts Vercel AI SDK spans to Respan format.

1import { RespanExporter } from '@respan/exporter-vercel';
ParameterTypeDefaultDescription
apiKeystringRespan API key. Falls back to RESPAN_API_KEY env var.
baseUrlstring | undefined"https://api.respan.ai"API base URL.

Methods

MethodDescription
export(spans, resultCallback)Export OpenTelemetry spans to Respan.

Internal processing

The exporter automatically:

  • Deduplicates AI SDK spans
  • Parses model information, prompt messages, and tool calls
  • Extracts token usage and cost data
  • Maps Vercel AI metadata to Respan span attributes
  • Handles streaming response data

Usage

1// instrumentation.ts
2import { registerOTel } from '@vercel/otel';
3import { RespanExporter } from '@respan/exporter-vercel';
4
5export function register() {
6 registerOTel({
7 serviceName: 'my-app',
8 traceExporter: new RespanExporter({
9 apiKey: process.env.RESPAN_API_KEY!,
10 }),
11 });
12}

Then enable telemetry in your AI SDK calls:

1import { generateText } from 'ai';
2import { openai } from '@ai-sdk/openai';
3
4const result = await generateText({
5 model: openai('gpt-4o-mini'),
6 prompt: 'Tell me a joke',
7 experimental_telemetry: { isEnabled: true },
8});