UNPKG

@posthog/ai

Version:
28 lines (24 loc) 943 B
import { LanguageModelV2, LanguageModelV3 } from '@ai-sdk/provider'; import { PostHog } from 'posthog-node'; interface CostOverride { inputCost: number; outputCost: number; } type LanguageModel = LanguageModelV2 | LanguageModelV3; interface ClientOptions { posthogDistinctId?: string; posthogTraceId?: string; posthogProperties?: Record<string, any>; posthogPrivacyMode?: boolean; posthogGroups?: Record<string, any>; posthogModelOverride?: string; posthogProviderOverride?: string; posthogCostOverride?: CostOverride; posthogCaptureImmediate?: boolean; } /** * Wraps a Vercel AI SDK language model (V2 or V3) with PostHog tracing. * Automatically detects the model version and applies appropriate instrumentation. */ declare const wrapVercelLanguageModel: <T extends LanguageModel>(model: T, phClient: PostHog, options: ClientOptions) => T; export { wrapVercelLanguageModel as withTracing };