@posthog/ai 8.8.1 → 8.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/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 +12 -6
- package/dist/langchain/index.cjs.map +1 -1
- package/dist/langchain/index.d.ts +13 -11
- package/dist/langchain/index.mjs +12 -6
- package/dist/langchain/index.mjs.map +1 -1
- package/dist/langchain/middleware/index.cjs +1273 -0
- package/dist/langchain/middleware/index.cjs.map +1 -0
- package/dist/langchain/middleware/index.d.ts +39 -0
- package/dist/langchain/middleware/index.mjs +1271 -0
- package/dist/langchain/middleware/index.mjs.map +1 -0
- package/dist/openai/index.cjs +1 -1
- package/dist/openai/index.mjs +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 +15 -5
|
@@ -7,6 +7,15 @@ import { AgentAction, AgentFinish } from '@langchain/core/agents';
|
|
|
7
7
|
import { DocumentInterface } from '@langchain/core/documents';
|
|
8
8
|
import { BaseMessage } from '@langchain/core/messages';
|
|
9
9
|
|
|
10
|
+
interface LangChainCallbackHandlerOptions {
|
|
11
|
+
client: PostHog;
|
|
12
|
+
distinctId?: string | number;
|
|
13
|
+
traceId?: string | number;
|
|
14
|
+
properties?: Record<string, any>;
|
|
15
|
+
privacyMode?: boolean;
|
|
16
|
+
groups?: Record<string, any>;
|
|
17
|
+
debug?: boolean;
|
|
18
|
+
}
|
|
10
19
|
declare class LangChainCallbackHandler extends BaseCallbackHandler {
|
|
11
20
|
name: string;
|
|
12
21
|
private client;
|
|
@@ -18,16 +27,8 @@ declare class LangChainCallbackHandler extends BaseCallbackHandler {
|
|
|
18
27
|
private debug;
|
|
19
28
|
private runs;
|
|
20
29
|
private parentTree;
|
|
21
|
-
constructor(options:
|
|
22
|
-
|
|
23
|
-
distinctId?: string | number;
|
|
24
|
-
traceId?: string | number;
|
|
25
|
-
properties?: Record<string, any>;
|
|
26
|
-
privacyMode?: boolean;
|
|
27
|
-
groups?: Record<string, any>;
|
|
28
|
-
debug?: boolean;
|
|
29
|
-
});
|
|
30
|
-
handleChainStart(chain: Serialized, inputs: ChainValues, runId: string, parentRunId?: string, tags?: string[], metadata?: Record<string, unknown>, _runType?: string, runName?: string): void;
|
|
30
|
+
constructor(options: LangChainCallbackHandlerOptions);
|
|
31
|
+
handleChainStart(chain: Serialized, inputs: ChainValues, runId: string, parentRunId?: string, tags?: string[], metadata?: Record<string, unknown>, _runType?: string, runName?: string, extra?: Record<string, unknown>): void;
|
|
31
32
|
handleChainEnd(outputs: ChainValues, runId: string, parentRunId?: string, tags?: string[], _kwargs?: {
|
|
32
33
|
inputs?: Record<string, unknown>;
|
|
33
34
|
}): void;
|
|
@@ -56,7 +57,7 @@ declare class LangChainCallbackHandler extends BaseCallbackHandler {
|
|
|
56
57
|
private _setLLMMetadata;
|
|
57
58
|
private _popRunMetadata;
|
|
58
59
|
private _getTraceId;
|
|
59
|
-
|
|
60
|
+
protected _getParentRunId(traceId: string, _runId: string, parentRunId?: string): string | undefined;
|
|
60
61
|
private _safeCapture;
|
|
61
62
|
private _popRunAndCaptureTraceOrSpan;
|
|
62
63
|
private _captureTraceOrSpan;
|
|
@@ -75,3 +76,4 @@ declare class LangChainCallbackHandler extends BaseCallbackHandler {
|
|
|
75
76
|
}
|
|
76
77
|
|
|
77
78
|
export { LangChainCallbackHandler };
|
|
79
|
+
export type { LangChainCallbackHandlerOptions };
|
package/dist/langchain/index.mjs
CHANGED
|
@@ -245,7 +245,7 @@ function sanitizeValues(obj) {
|
|
|
245
245
|
return jsonSafe;
|
|
246
246
|
}
|
|
247
247
|
|
|
248
|
-
var version = "8.
|
|
248
|
+
var version = "8.9.0";
|
|
249
249
|
|
|
250
250
|
const DEFAULT_MAX_DEPTH = 3;
|
|
251
251
|
const MAX_STACK_LINES = 20;
|
|
@@ -367,13 +367,16 @@ class LangChainCallbackHandler extends BaseCallbackHandler {
|
|
|
367
367
|
|
|
368
368
|
// ===== CALLBACK METHODS =====
|
|
369
369
|
|
|
370
|
-
handleChainStart(chain, inputs, runId, parentRunId, tags, metadata, _runType, runName) {
|
|
370
|
+
handleChainStart(chain, inputs, runId, parentRunId, tags, metadata, _runType, runName, extra) {
|
|
371
371
|
this._logDebugEvent('on_chain_start', runId, parentRunId, {
|
|
372
372
|
inputs,
|
|
373
373
|
tags
|
|
374
374
|
});
|
|
375
375
|
this._setParentOfRun(runId, parentRunId);
|
|
376
376
|
this._setTraceOrSpanMetadata(chain, inputs, runId, parentRunId, metadata, tags, runName);
|
|
377
|
+
if (typeof extra?.posthogStartTime === 'number' && Number.isFinite(extra.posthogStartTime)) {
|
|
378
|
+
this.runs[runId].startTime = extra.posthogStartTime;
|
|
379
|
+
}
|
|
377
380
|
}
|
|
378
381
|
handleChainEnd(outputs, runId, parentRunId, tags, _kwargs) {
|
|
379
382
|
this._logAndPopTraceOrSpan('on_chain_end', runId, parentRunId, {
|
|
@@ -568,6 +571,7 @@ class LangChainCallbackHandler extends BaseCallbackHandler {
|
|
|
568
571
|
}
|
|
569
572
|
_popRunAndCaptureTraceOrSpan(runId, parentRunId, outputs) {
|
|
570
573
|
const traceId = this._getTraceId(runId);
|
|
574
|
+
const isSpan = Boolean(parentRunId || this.parentTree[runId]);
|
|
571
575
|
this._popParentOfRun(runId);
|
|
572
576
|
const run = this._popRunMetadata(runId);
|
|
573
577
|
if (!run) {
|
|
@@ -578,10 +582,10 @@ class LangChainCallbackHandler extends BaseCallbackHandler {
|
|
|
578
582
|
return;
|
|
579
583
|
}
|
|
580
584
|
const actualParentRunId = this._getParentRunId(traceId, runId, parentRunId);
|
|
581
|
-
this._captureTraceOrSpan(traceId, runId, run, outputs, actualParentRunId);
|
|
585
|
+
this._captureTraceOrSpan(traceId, runId, run, outputs, isSpan, actualParentRunId);
|
|
582
586
|
}
|
|
583
|
-
_captureTraceOrSpan(traceId, runId, run, outputs, parentRunId) {
|
|
584
|
-
const eventName =
|
|
587
|
+
_captureTraceOrSpan(traceId, runId, run, outputs, isSpan, parentRunId) {
|
|
588
|
+
const eventName = isSpan ? '$ai_span' : '$ai_trace';
|
|
585
589
|
const latency = run.endTime ? (run.endTime - run.startTime) / 1000 : 0;
|
|
586
590
|
const eventProperties = {
|
|
587
591
|
$ai_lib: 'posthog-ai',
|
|
@@ -645,7 +649,6 @@ class LangChainCallbackHandler extends BaseCallbackHandler {
|
|
|
645
649
|
$ai_trace_id: traceId,
|
|
646
650
|
$ai_span_id: runId,
|
|
647
651
|
$ai_span_name: run.name,
|
|
648
|
-
$ai_parent_id: parentRunId,
|
|
649
652
|
$ai_provider: run.provider,
|
|
650
653
|
$ai_model: run.model,
|
|
651
654
|
$ai_model_parameters: run.modelParams,
|
|
@@ -655,6 +658,9 @@ class LangChainCallbackHandler extends BaseCallbackHandler {
|
|
|
655
658
|
$ai_base_url: run.baseUrl,
|
|
656
659
|
$ai_framework: 'langchain'
|
|
657
660
|
};
|
|
661
|
+
if (parentRunId) {
|
|
662
|
+
eventProperties['$ai_parent_id'] = parentRunId;
|
|
663
|
+
}
|
|
658
664
|
if (run.tools) {
|
|
659
665
|
eventProperties['$ai_tools'] = run.tools;
|
|
660
666
|
}
|