@posthog/ai 8.2.0 → 8.2.2
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/LICENSE +27 -0
- package/README.md +6 -149
- 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 +1 -1
- package/dist/index.mjs +1 -1
- package/dist/langchain/index.cjs +1 -1
- package/dist/langchain/index.mjs +1 -1
- package/dist/openai/index.cjs +12 -1
- package/dist/openai/index.cjs.map +1 -1
- package/dist/openai/index.d.ts +13 -0
- package/dist/openai/index.mjs +12 -1
- package/dist/openai/index.mjs.map +1 -1
- package/dist/openai-agents/index.cjs +1 -1
- package/dist/openai-agents/index.mjs +1 -1
- package/dist/vercel/index.cjs +1 -1
- package/dist/vercel/index.mjs +1 -1
- package/package.json +4 -4
package/dist/openai/index.d.ts
CHANGED
|
@@ -29,6 +29,9 @@ type ChatCompletionChunk$1 = OpenAIOrignal.ChatCompletionChunk;
|
|
|
29
29
|
type ChatCompletionCreateParamsBase$1 = OpenAIOrignal.Chat.Completions.ChatCompletionCreateParams;
|
|
30
30
|
type ChatCompletionCreateParamsNonStreaming$1 = OpenAIOrignal.Chat.Completions.ChatCompletionCreateParamsNonStreaming;
|
|
31
31
|
type ChatCompletionCreateParamsStreaming$1 = OpenAIOrignal.Chat.Completions.ChatCompletionCreateParamsStreaming;
|
|
32
|
+
type ResponsesCreateParamsBase$1 = OpenAIOrignal.Responses.ResponseCreateParams;
|
|
33
|
+
type ResponsesCreateParamsNonStreaming$1 = OpenAIOrignal.Responses.ResponseCreateParamsNonStreaming;
|
|
34
|
+
type ResponsesCreateParamsStreaming$1 = OpenAIOrignal.Responses.ResponseCreateParamsStreaming;
|
|
32
35
|
type CreateEmbeddingResponse$1 = OpenAIOrignal.CreateEmbeddingResponse;
|
|
33
36
|
type EmbeddingCreateParams$1 = OpenAIOrignal.EmbeddingCreateParams;
|
|
34
37
|
interface MonitoringOpenAIConfig$1 {
|
|
@@ -40,6 +43,7 @@ type RequestOptions$1 = Record<string, any>;
|
|
|
40
43
|
declare class PostHogAzureOpenAI extends AzureOpenAI {
|
|
41
44
|
private readonly phClient;
|
|
42
45
|
chat: WrappedChat$1;
|
|
46
|
+
responses: WrappedResponses$1;
|
|
43
47
|
embeddings: WrappedEmbeddings$1;
|
|
44
48
|
constructor(config: MonitoringOpenAIConfig$1);
|
|
45
49
|
}
|
|
@@ -55,6 +59,15 @@ declare class WrappedCompletions$1 extends AzureOpenAI.Chat.Completions {
|
|
|
55
59
|
create(body: ChatCompletionCreateParamsStreaming$1 & MonitoringParams, options?: RequestOptions$1): APIPromise<Stream<ChatCompletionChunk$1>>;
|
|
56
60
|
create(body: ChatCompletionCreateParamsBase$1 & MonitoringParams, options?: RequestOptions$1): APIPromise<ChatCompletion$1 | Stream<ChatCompletionChunk$1>>;
|
|
57
61
|
}
|
|
62
|
+
declare class WrappedResponses$1 extends AzureOpenAI.Responses {
|
|
63
|
+
private readonly phClient;
|
|
64
|
+
private readonly baseURL;
|
|
65
|
+
constructor(client: AzureOpenAI, phClient: PostHog);
|
|
66
|
+
create(body: ResponsesCreateParamsNonStreaming$1 & MonitoringParams, options?: RequestOptions$1): APIPromise<OpenAIOrignal.Responses.Response>;
|
|
67
|
+
create(body: ResponsesCreateParamsStreaming$1 & MonitoringParams, options?: RequestOptions$1): APIPromise<Stream<OpenAIOrignal.Responses.ResponseStreamEvent>>;
|
|
68
|
+
create(body: ResponsesCreateParamsBase$1 & MonitoringParams, options?: RequestOptions$1): APIPromise<OpenAIOrignal.Responses.Response | Stream<OpenAIOrignal.Responses.ResponseStreamEvent>>;
|
|
69
|
+
parse<Params extends ResponseCreateParamsWithTools, ParsedT = ExtractParsedContentFromParams<Params>>(body: Params & MonitoringParams, options?: RequestOptions$1): APIPromise<ParsedResponse<ParsedT>>;
|
|
70
|
+
}
|
|
58
71
|
declare class WrappedEmbeddings$1 extends AzureOpenAI.Embeddings {
|
|
59
72
|
private readonly phClient;
|
|
60
73
|
private readonly baseURL;
|
package/dist/openai/index.mjs
CHANGED
|
@@ -530,7 +530,7 @@ function formatOpenAIResponsesInput(input, instructions) {
|
|
|
530
530
|
return messages;
|
|
531
531
|
}
|
|
532
532
|
|
|
533
|
-
var version = "8.2.
|
|
533
|
+
var version = "8.2.2";
|
|
534
534
|
|
|
535
535
|
const DEFAULT_MAX_DEPTH = 3;
|
|
536
536
|
const MAX_STACK_LINES = 20;
|
|
@@ -803,6 +803,7 @@ class PostHogAzureOpenAI extends AzureOpenAI {
|
|
|
803
803
|
super(openAIConfig);
|
|
804
804
|
this.phClient = posthog;
|
|
805
805
|
this.chat = new WrappedChat$1(this, this.phClient);
|
|
806
|
+
this.responses = new WrappedResponses$1(this, this.phClient);
|
|
806
807
|
this.embeddings = new WrappedEmbeddings$1(this, this.phClient);
|
|
807
808
|
}
|
|
808
809
|
}
|
|
@@ -1354,6 +1355,10 @@ function preserveAPIPromiseHelpers(parentPromise, wrappedPromise) {
|
|
|
1354
1355
|
}
|
|
1355
1356
|
return apiPromise;
|
|
1356
1357
|
}
|
|
1358
|
+
const TERMINAL_RESPONSE_STATUSES = new Set(['completed', 'failed', 'cancelled', 'incomplete']);
|
|
1359
|
+
function isPendingBackgroundResponse(params, response) {
|
|
1360
|
+
return params.background === true && !response.usage && !!response.status && !TERMINAL_RESPONSE_STATUSES.has(response.status);
|
|
1361
|
+
}
|
|
1357
1362
|
class PostHogOpenAI extends OpenAI {
|
|
1358
1363
|
constructor(config) {
|
|
1359
1364
|
const {
|
|
@@ -1779,6 +1784,9 @@ class WrappedResponses extends Responses {
|
|
|
1779
1784
|
} else {
|
|
1780
1785
|
const wrappedPromise = parentPromise.then(async result => {
|
|
1781
1786
|
if ('output' in result) {
|
|
1787
|
+
if (isPendingBackgroundResponse(openAIParams, result)) {
|
|
1788
|
+
return result;
|
|
1789
|
+
}
|
|
1782
1790
|
const latency = (Date.now() - startTime) / 1000;
|
|
1783
1791
|
const availableTools = extractAvailableToolCalls('openai', openAIParams);
|
|
1784
1792
|
const formattedOutput = formatResponseOpenAI({
|
|
@@ -1847,6 +1855,9 @@ class WrappedResponses extends Responses {
|
|
|
1847
1855
|
try {
|
|
1848
1856
|
const parentPromise = super.parse(openAIParams, options);
|
|
1849
1857
|
const wrappedPromise = parentPromise.then(async result => {
|
|
1858
|
+
if (isPendingBackgroundResponse(openAIParams, result)) {
|
|
1859
|
+
return result;
|
|
1860
|
+
}
|
|
1850
1861
|
const latency = (Date.now() - startTime) / 1000;
|
|
1851
1862
|
await captureAiGeneration(this.phClient, {
|
|
1852
1863
|
...posthogParams,
|