@posthog/ai
Version:
PostHog Node.js AI integrations
28 lines (24 loc) • 943 B
TypeScript
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 };