@posthog/ai 7.8.12 → 7.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +57 -2
- package/dist/anthropic/index.cjs +1 -1
- package/dist/anthropic/index.mjs +1 -1
- package/dist/gemini/index.cjs +1 -1
- package/dist/gemini/index.mjs +1 -1
- package/dist/index.cjs +847 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +65 -1
- package/dist/index.mjs +845 -2
- package/dist/index.mjs.map +1 -1
- package/dist/langchain/index.cjs +1 -1
- package/dist/langchain/index.mjs +1 -1
- package/dist/openai/index.cjs +1 -1
- package/dist/openai/index.mjs +1 -1
- package/dist/otel/index.cjs +1127 -0
- package/dist/otel/index.cjs.map +1 -0
- package/dist/otel/index.d.ts +76 -0
- package/dist/otel/index.mjs +1122 -0
- package/dist/otel/index.mjs.map +1 -0
- package/dist/vercel/index.cjs +1 -1
- package/dist/vercel/index.mjs +1 -1
- package/package.json +19 -4
package/dist/index.d.ts
CHANGED
|
@@ -4,6 +4,8 @@ import { Stream } from 'openai/streaming';
|
|
|
4
4
|
import { ParsedResponse } from 'openai/resources/responses/responses';
|
|
5
5
|
import { ResponseCreateParamsWithTools, ExtractParsedContentFromParams } from 'openai/lib/ResponsesParser';
|
|
6
6
|
import { LanguageModelV2, LanguageModelV3 } from '@ai-sdk/provider';
|
|
7
|
+
import { ReadableSpan, SpanProcessor } from '@opentelemetry/sdk-trace-base';
|
|
8
|
+
import { Span, Context } from '@opentelemetry/api';
|
|
7
9
|
import AnthropicOriginal, { APIPromise as APIPromise$1 } from '@anthropic-ai/sdk';
|
|
8
10
|
import { Stream as Stream$1 } from '@anthropic-ai/sdk/streaming';
|
|
9
11
|
import { GoogleGenAI, GenerateContentParameters, GenerateContentResponse, GoogleGenAIOptions } from '@google/genai';
|
|
@@ -55,6 +57,10 @@ interface CostOverride {
|
|
|
55
57
|
inputCost: number;
|
|
56
58
|
outputCost: number;
|
|
57
59
|
}
|
|
60
|
+
declare enum AIEvent {
|
|
61
|
+
Generation = "$ai_generation",
|
|
62
|
+
Embedding = "$ai_embedding"
|
|
63
|
+
}
|
|
58
64
|
|
|
59
65
|
declare const Chat: typeof OpenAI.Chat;
|
|
60
66
|
declare const Completions: typeof OpenAI.Chat.Completions;
|
|
@@ -186,6 +192,64 @@ interface ClientOptions {
|
|
|
186
192
|
*/
|
|
187
193
|
declare const wrapVercelLanguageModel: <T extends LanguageModel>(model: T, phClient: PostHog, options: ClientOptions) => T;
|
|
188
194
|
|
|
195
|
+
type UsageData = Record<string, unknown>;
|
|
196
|
+
interface PostHogSpanMapperContext {
|
|
197
|
+
options: PostHogTelemetryOptions;
|
|
198
|
+
}
|
|
199
|
+
interface PostHogSpanMapperResult {
|
|
200
|
+
distinctId?: string;
|
|
201
|
+
traceId?: string;
|
|
202
|
+
model?: string;
|
|
203
|
+
provider: string;
|
|
204
|
+
input: any;
|
|
205
|
+
output: any;
|
|
206
|
+
latency: number;
|
|
207
|
+
timeToFirstToken?: number;
|
|
208
|
+
baseURL?: string;
|
|
209
|
+
httpStatus?: number;
|
|
210
|
+
eventType?: AIEvent;
|
|
211
|
+
usage?: UsageData;
|
|
212
|
+
tools?: any[] | null;
|
|
213
|
+
modelParams?: Record<string, unknown>;
|
|
214
|
+
posthogProperties?: Record<string, unknown>;
|
|
215
|
+
error?: unknown;
|
|
216
|
+
}
|
|
217
|
+
interface PostHogSpanMapper {
|
|
218
|
+
name: string;
|
|
219
|
+
canMap: (span: ReadableSpan) => boolean;
|
|
220
|
+
map: (span: ReadableSpan, context: PostHogSpanMapperContext) => PostHogSpanMapperResult | null;
|
|
221
|
+
}
|
|
222
|
+
type ShouldExportSpan = (params: {
|
|
223
|
+
otelSpan: ReadableSpan;
|
|
224
|
+
}) => boolean;
|
|
225
|
+
interface PostHogTelemetryOptions {
|
|
226
|
+
posthogDistinctId?: string;
|
|
227
|
+
posthogTraceId?: string;
|
|
228
|
+
posthogProperties?: Record<string, any>;
|
|
229
|
+
posthogPrivacyMode?: boolean;
|
|
230
|
+
posthogGroups?: Record<string, any>;
|
|
231
|
+
posthogModelOverride?: string;
|
|
232
|
+
posthogProviderOverride?: string;
|
|
233
|
+
posthogCostOverride?: CostOverride;
|
|
234
|
+
posthogCaptureImmediate?: boolean;
|
|
235
|
+
mappers?: PostHogSpanMapper[];
|
|
236
|
+
shouldExportSpan?: ShouldExportSpan;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
declare function captureSpan(span: ReadableSpan, phClient: PostHog, options?: PostHogTelemetryOptions): Promise<void>;
|
|
240
|
+
|
|
241
|
+
declare class PostHogSpanProcessor implements SpanProcessor {
|
|
242
|
+
private readonly phClient;
|
|
243
|
+
private readonly options;
|
|
244
|
+
private readonly pendingCaptures;
|
|
245
|
+
constructor(phClient: PostHog, options?: PostHogTelemetryOptions);
|
|
246
|
+
onStart(_span: Span, _parentContext: Context): void;
|
|
247
|
+
onEnd(span: ReadableSpan): void;
|
|
248
|
+
shutdown(): Promise<void>;
|
|
249
|
+
forceFlush(): Promise<void>;
|
|
250
|
+
}
|
|
251
|
+
declare function createPostHogSpanProcessor(phClient: PostHog, options?: PostHogTelemetryOptions): SpanProcessor;
|
|
252
|
+
|
|
189
253
|
type MessageCreateParamsNonStreaming = AnthropicOriginal.Messages.MessageCreateParamsNonStreaming;
|
|
190
254
|
type MessageCreateParamsStreaming = AnthropicOriginal.Messages.MessageCreateParamsStreaming;
|
|
191
255
|
type Message = AnthropicOriginal.Messages.Message;
|
|
@@ -362,4 +426,4 @@ declare class Prompts {
|
|
|
362
426
|
private fetchPromptFromApi;
|
|
363
427
|
}
|
|
364
428
|
|
|
365
|
-
export { PostHogAnthropic as Anthropic, PostHogAzureOpenAI as AzureOpenAI, PostHogGoogleGenAI as GoogleGenAI, LangChainCallbackHandler, PostHogOpenAI as OpenAI, Prompts, wrapVercelLanguageModel as withTracing };
|
|
429
|
+
export { PostHogAnthropic as Anthropic, PostHogAzureOpenAI as AzureOpenAI, PostHogGoogleGenAI as GoogleGenAI, LangChainCallbackHandler, PostHogOpenAI as OpenAI, PostHogSpanProcessor, Prompts, captureSpan, createPostHogSpanProcessor, wrapVercelLanguageModel as withTracing };
|