langchain 0.0.137 → 0.0.139
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/chat_models/minimax.cjs +1 -0
- package/chat_models/minimax.d.ts +1 -0
- package/chat_models/minimax.js +1 -0
- package/dist/agents/initialize.cjs +11 -0
- package/dist/agents/initialize.d.ts +4 -0
- package/dist/agents/initialize.js +11 -0
- package/dist/agents/xml/index.cjs +119 -0
- package/dist/agents/xml/index.d.ts +51 -0
- package/dist/agents/xml/index.js +114 -0
- package/dist/agents/xml/prompt.cjs +23 -0
- package/dist/agents/xml/prompt.d.ts +1 -0
- package/dist/agents/xml/prompt.js +20 -0
- package/dist/callbacks/base.d.ts +12 -4
- package/dist/callbacks/handlers/run_collector.cjs +50 -0
- package/dist/callbacks/handlers/run_collector.d.ts +26 -0
- package/dist/callbacks/handlers/run_collector.js +46 -0
- package/dist/callbacks/handlers/tracer.cjs +33 -20
- package/dist/callbacks/handlers/tracer.d.ts +7 -3
- package/dist/callbacks/handlers/tracer.js +33 -20
- package/dist/callbacks/handlers/tracer_langchain.cjs +1 -0
- package/dist/callbacks/handlers/tracer_langchain.d.ts +2 -1
- package/dist/callbacks/handlers/tracer_langchain.js +1 -0
- package/dist/callbacks/index.cjs +3 -1
- package/dist/callbacks/index.d.ts +1 -0
- package/dist/callbacks/index.js +1 -0
- package/dist/callbacks/manager.cjs +29 -14
- package/dist/callbacks/manager.d.ts +9 -4
- package/dist/callbacks/manager.js +29 -14
- package/dist/chains/openai_functions/extraction.cjs +2 -2
- package/dist/chains/openai_functions/extraction.d.ts +5 -4
- package/dist/chains/openai_functions/extraction.js +2 -2
- package/dist/chains/openai_functions/openapi.d.ts +2 -1
- package/dist/chains/openai_functions/structured_output.d.ts +4 -3
- package/dist/chains/openai_functions/tagging.cjs +2 -2
- package/dist/chains/openai_functions/tagging.d.ts +5 -4
- package/dist/chains/openai_functions/tagging.js +2 -2
- package/dist/chat_models/anthropic.cjs +7 -5
- package/dist/chat_models/anthropic.d.ts +17 -12
- package/dist/chat_models/anthropic.js +4 -2
- package/dist/chat_models/minimax.cjs +547 -0
- package/dist/chat_models/minimax.d.ts +364 -0
- package/dist/chat_models/minimax.js +543 -0
- package/dist/chat_models/ollama.cjs +136 -0
- package/dist/chat_models/ollama.d.ts +34 -0
- package/dist/chat_models/ollama.js +136 -0
- package/dist/embeddings/minimax.cjs +152 -0
- package/dist/embeddings/minimax.d.ts +104 -0
- package/dist/embeddings/minimax.js +148 -0
- package/dist/experimental/chat_models/anthropic_functions.cjs +129 -0
- package/dist/experimental/chat_models/anthropic_functions.d.ts +20 -0
- package/dist/experimental/chat_models/anthropic_functions.js +125 -0
- package/dist/llms/ollama.cjs +136 -0
- package/dist/llms/ollama.d.ts +34 -0
- package/dist/llms/ollama.js +136 -0
- package/dist/load/import_constants.cjs +1 -0
- package/dist/load/import_constants.js +1 -0
- package/dist/load/import_map.cjs +4 -2
- package/dist/load/import_map.d.ts +2 -0
- package/dist/load/import_map.js +2 -0
- package/dist/schema/output_parser.cjs +1 -1
- package/dist/schema/output_parser.js +1 -1
- package/dist/schema/runnable.cjs +54 -15
- package/dist/schema/runnable.d.ts +9 -3
- package/dist/schema/runnable.js +55 -16
- package/dist/sql_db.cjs +3 -1
- package/dist/sql_db.js +3 -1
- package/dist/util/ollama.d.ts +34 -0
- package/dist/vectorstores/redis.cjs +17 -2
- package/dist/vectorstores/redis.d.ts +10 -1
- package/dist/vectorstores/redis.js +17 -2
- package/dist/vectorstores/zep.cjs +2 -1
- package/dist/vectorstores/zep.js +3 -2
- package/embeddings/minimax.cjs +1 -0
- package/embeddings/minimax.d.ts +1 -0
- package/embeddings/minimax.js +1 -0
- package/experimental/chat_models/anthropic_functions.cjs +1 -0
- package/experimental/chat_models/anthropic_functions.d.ts +1 -0
- package/experimental/chat_models/anthropic_functions.js +1 -0
- package/package.json +34 -5
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BaseTracer = void 0;
|
|
4
4
|
const base_js_1 = require("../base.cjs");
|
|
5
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
6
|
+
function _coerceToDict(value, defaultKey) {
|
|
7
|
+
return value && !Array.isArray(value) && typeof value === "object"
|
|
8
|
+
? value
|
|
9
|
+
: { [defaultKey]: value };
|
|
10
|
+
}
|
|
5
11
|
class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
6
12
|
constructor(_fields) {
|
|
7
13
|
super(...arguments);
|
|
@@ -23,6 +29,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
23
29
|
const parentRun = this.runMap.get(run.parent_run_id);
|
|
24
30
|
if (parentRun) {
|
|
25
31
|
this._addChildRun(parentRun, run);
|
|
32
|
+
parentRun.child_execution_order = Math.max(parentRun.child_execution_order, run.child_execution_order);
|
|
26
33
|
}
|
|
27
34
|
}
|
|
28
35
|
this.runMap.set(run.id, run);
|
|
@@ -60,7 +67,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
60
67
|
events: [
|
|
61
68
|
{
|
|
62
69
|
name: "start",
|
|
63
|
-
time: start_time,
|
|
70
|
+
time: new Date(start_time).toISOString(),
|
|
64
71
|
},
|
|
65
72
|
],
|
|
66
73
|
inputs: { prompts },
|
|
@@ -89,7 +96,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
89
96
|
events: [
|
|
90
97
|
{
|
|
91
98
|
name: "start",
|
|
92
|
-
time: start_time,
|
|
99
|
+
time: new Date(start_time).toISOString(),
|
|
93
100
|
},
|
|
94
101
|
],
|
|
95
102
|
inputs: { messages },
|
|
@@ -112,7 +119,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
112
119
|
run.outputs = output;
|
|
113
120
|
run.events.push({
|
|
114
121
|
name: "end",
|
|
115
|
-
time: run.end_time,
|
|
122
|
+
time: new Date(run.end_time).toISOString(),
|
|
116
123
|
});
|
|
117
124
|
await this.onLLMEnd?.(run);
|
|
118
125
|
await this._endTrace(run);
|
|
@@ -126,7 +133,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
126
133
|
run.error = error.message;
|
|
127
134
|
run.events.push({
|
|
128
135
|
name: "error",
|
|
129
|
-
time: run.end_time,
|
|
136
|
+
time: new Date(run.end_time).toISOString(),
|
|
130
137
|
});
|
|
131
138
|
await this.onLLMError?.(run);
|
|
132
139
|
await this._endTrace(run);
|
|
@@ -143,7 +150,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
143
150
|
events: [
|
|
144
151
|
{
|
|
145
152
|
name: "start",
|
|
146
|
-
time: start_time,
|
|
153
|
+
time: new Date(start_time).toISOString(),
|
|
147
154
|
},
|
|
148
155
|
],
|
|
149
156
|
inputs,
|
|
@@ -157,21 +164,24 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
157
164
|
this._startTrace(run);
|
|
158
165
|
await this.onChainStart?.(run);
|
|
159
166
|
}
|
|
160
|
-
async handleChainEnd(outputs, runId) {
|
|
167
|
+
async handleChainEnd(outputs, runId, _parentRunId, _tags, kwargs) {
|
|
161
168
|
const run = this.runMap.get(runId);
|
|
162
169
|
if (!run) {
|
|
163
170
|
throw new Error("No chain run to end.");
|
|
164
171
|
}
|
|
165
172
|
run.end_time = Date.now();
|
|
166
|
-
run.outputs = outputs;
|
|
173
|
+
run.outputs = _coerceToDict(outputs, "output");
|
|
167
174
|
run.events.push({
|
|
168
175
|
name: "end",
|
|
169
|
-
time: run.end_time,
|
|
176
|
+
time: new Date(run.end_time).toISOString(),
|
|
170
177
|
});
|
|
178
|
+
if (kwargs?.inputs !== undefined) {
|
|
179
|
+
run.inputs = _coerceToDict(kwargs.inputs, "input");
|
|
180
|
+
}
|
|
171
181
|
await this.onChainEnd?.(run);
|
|
172
182
|
await this._endTrace(run);
|
|
173
183
|
}
|
|
174
|
-
async handleChainError(error, runId) {
|
|
184
|
+
async handleChainError(error, runId, _parentRunId, _tags, kwargs) {
|
|
175
185
|
const run = this.runMap.get(runId);
|
|
176
186
|
if (!run) {
|
|
177
187
|
throw new Error("No chain run to end.");
|
|
@@ -180,8 +190,11 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
180
190
|
run.error = error.message;
|
|
181
191
|
run.events.push({
|
|
182
192
|
name: "error",
|
|
183
|
-
time: run.end_time,
|
|
193
|
+
time: new Date(run.end_time).toISOString(),
|
|
184
194
|
});
|
|
195
|
+
if (kwargs?.inputs !== undefined) {
|
|
196
|
+
run.inputs = _coerceToDict(kwargs.inputs, "input");
|
|
197
|
+
}
|
|
185
198
|
await this.onChainError?.(run);
|
|
186
199
|
await this._endTrace(run);
|
|
187
200
|
}
|
|
@@ -197,7 +210,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
197
210
|
events: [
|
|
198
211
|
{
|
|
199
212
|
name: "start",
|
|
200
|
-
time: start_time,
|
|
213
|
+
time: new Date(start_time).toISOString(),
|
|
201
214
|
},
|
|
202
215
|
],
|
|
203
216
|
inputs: { input },
|
|
@@ -220,7 +233,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
220
233
|
run.outputs = { output };
|
|
221
234
|
run.events.push({
|
|
222
235
|
name: "end",
|
|
223
|
-
time: run.end_time,
|
|
236
|
+
time: new Date(run.end_time).toISOString(),
|
|
224
237
|
});
|
|
225
238
|
await this.onToolEnd?.(run);
|
|
226
239
|
await this._endTrace(run);
|
|
@@ -234,7 +247,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
234
247
|
run.error = error.message;
|
|
235
248
|
run.events.push({
|
|
236
249
|
name: "error",
|
|
237
|
-
time: run.end_time,
|
|
250
|
+
time: new Date(run.end_time).toISOString(),
|
|
238
251
|
});
|
|
239
252
|
await this.onToolError?.(run);
|
|
240
253
|
await this._endTrace(run);
|
|
@@ -249,7 +262,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
249
262
|
agentRun.actions.push(action);
|
|
250
263
|
agentRun.events.push({
|
|
251
264
|
name: "agent_action",
|
|
252
|
-
time: Date.
|
|
265
|
+
time: new Date().toISOString(),
|
|
253
266
|
kwargs: { action },
|
|
254
267
|
});
|
|
255
268
|
await this.onAgentAction?.(run);
|
|
@@ -261,7 +274,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
261
274
|
}
|
|
262
275
|
run.events.push({
|
|
263
276
|
name: "agent_end",
|
|
264
|
-
time: Date.
|
|
277
|
+
time: new Date().toISOString(),
|
|
265
278
|
kwargs: { action },
|
|
266
279
|
});
|
|
267
280
|
await this.onAgentEnd?.(run);
|
|
@@ -278,7 +291,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
278
291
|
events: [
|
|
279
292
|
{
|
|
280
293
|
name: "start",
|
|
281
|
-
time: start_time,
|
|
294
|
+
time: new Date(start_time).toISOString(),
|
|
282
295
|
},
|
|
283
296
|
],
|
|
284
297
|
inputs: { query },
|
|
@@ -301,7 +314,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
301
314
|
run.outputs = { documents };
|
|
302
315
|
run.events.push({
|
|
303
316
|
name: "end",
|
|
304
|
-
time: run.end_time,
|
|
317
|
+
time: new Date(run.end_time).toISOString(),
|
|
305
318
|
});
|
|
306
319
|
await this.onRetrieverEnd?.(run);
|
|
307
320
|
await this._endTrace(run);
|
|
@@ -315,7 +328,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
315
328
|
run.error = error.message;
|
|
316
329
|
run.events.push({
|
|
317
330
|
name: "error",
|
|
318
|
-
time: run.end_time,
|
|
331
|
+
time: new Date(run.end_time).toISOString(),
|
|
319
332
|
});
|
|
320
333
|
await this.onRetrieverError?.(run);
|
|
321
334
|
await this._endTrace(run);
|
|
@@ -327,7 +340,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
327
340
|
}
|
|
328
341
|
run.events.push({
|
|
329
342
|
name: "text",
|
|
330
|
-
time: Date.
|
|
343
|
+
time: new Date().toISOString(),
|
|
331
344
|
kwargs: { text },
|
|
332
345
|
});
|
|
333
346
|
await this.onText?.(run);
|
|
@@ -339,7 +352,7 @@ class BaseTracer extends base_js_1.BaseCallbackHandler {
|
|
|
339
352
|
}
|
|
340
353
|
run.events.push({
|
|
341
354
|
name: "new_token",
|
|
342
|
-
time: Date.
|
|
355
|
+
time: new Date().toISOString(),
|
|
343
356
|
kwargs: { token, idx, chunk: fields?.chunk },
|
|
344
357
|
});
|
|
345
358
|
await this.onLLMNewToken?.(run);
|
|
@@ -12,7 +12,7 @@ export interface Run extends BaseRun {
|
|
|
12
12
|
child_execution_order: number;
|
|
13
13
|
events: Array<{
|
|
14
14
|
name: string;
|
|
15
|
-
time:
|
|
15
|
+
time: string;
|
|
16
16
|
kwargs?: Record<string, unknown>;
|
|
17
17
|
}>;
|
|
18
18
|
}
|
|
@@ -33,8 +33,12 @@ export declare abstract class BaseTracer extends BaseCallbackHandler {
|
|
|
33
33
|
handleLLMEnd(output: LLMResult, runId: string): Promise<void>;
|
|
34
34
|
handleLLMError(error: Error, runId: string): Promise<void>;
|
|
35
35
|
handleChainStart(chain: Serialized, inputs: ChainValues, runId: string, parentRunId?: string, tags?: string[], metadata?: KVMap, runType?: string): Promise<void>;
|
|
36
|
-
handleChainEnd(outputs: ChainValues, runId: string
|
|
37
|
-
|
|
36
|
+
handleChainEnd(outputs: ChainValues, runId: string, _parentRunId?: string, _tags?: string[], kwargs?: {
|
|
37
|
+
inputs?: Record<string, unknown>;
|
|
38
|
+
}): Promise<void>;
|
|
39
|
+
handleChainError(error: Error, runId: string, _parentRunId?: string, _tags?: string[], kwargs?: {
|
|
40
|
+
inputs?: Record<string, unknown>;
|
|
41
|
+
}): Promise<void>;
|
|
38
42
|
handleToolStart(tool: Serialized, input: string, runId: string, parentRunId?: string, tags?: string[], metadata?: KVMap): Promise<void>;
|
|
39
43
|
handleToolEnd(output: string, runId: string): Promise<void>;
|
|
40
44
|
handleToolError(error: Error, runId: string): Promise<void>;
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
import { BaseCallbackHandler, } from "../base.js";
|
|
2
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
3
|
+
function _coerceToDict(value, defaultKey) {
|
|
4
|
+
return value && !Array.isArray(value) && typeof value === "object"
|
|
5
|
+
? value
|
|
6
|
+
: { [defaultKey]: value };
|
|
7
|
+
}
|
|
2
8
|
export class BaseTracer extends BaseCallbackHandler {
|
|
3
9
|
constructor(_fields) {
|
|
4
10
|
super(...arguments);
|
|
@@ -20,6 +26,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
20
26
|
const parentRun = this.runMap.get(run.parent_run_id);
|
|
21
27
|
if (parentRun) {
|
|
22
28
|
this._addChildRun(parentRun, run);
|
|
29
|
+
parentRun.child_execution_order = Math.max(parentRun.child_execution_order, run.child_execution_order);
|
|
23
30
|
}
|
|
24
31
|
}
|
|
25
32
|
this.runMap.set(run.id, run);
|
|
@@ -57,7 +64,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
57
64
|
events: [
|
|
58
65
|
{
|
|
59
66
|
name: "start",
|
|
60
|
-
time: start_time,
|
|
67
|
+
time: new Date(start_time).toISOString(),
|
|
61
68
|
},
|
|
62
69
|
],
|
|
63
70
|
inputs: { prompts },
|
|
@@ -86,7 +93,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
86
93
|
events: [
|
|
87
94
|
{
|
|
88
95
|
name: "start",
|
|
89
|
-
time: start_time,
|
|
96
|
+
time: new Date(start_time).toISOString(),
|
|
90
97
|
},
|
|
91
98
|
],
|
|
92
99
|
inputs: { messages },
|
|
@@ -109,7 +116,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
109
116
|
run.outputs = output;
|
|
110
117
|
run.events.push({
|
|
111
118
|
name: "end",
|
|
112
|
-
time: run.end_time,
|
|
119
|
+
time: new Date(run.end_time).toISOString(),
|
|
113
120
|
});
|
|
114
121
|
await this.onLLMEnd?.(run);
|
|
115
122
|
await this._endTrace(run);
|
|
@@ -123,7 +130,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
123
130
|
run.error = error.message;
|
|
124
131
|
run.events.push({
|
|
125
132
|
name: "error",
|
|
126
|
-
time: run.end_time,
|
|
133
|
+
time: new Date(run.end_time).toISOString(),
|
|
127
134
|
});
|
|
128
135
|
await this.onLLMError?.(run);
|
|
129
136
|
await this._endTrace(run);
|
|
@@ -140,7 +147,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
140
147
|
events: [
|
|
141
148
|
{
|
|
142
149
|
name: "start",
|
|
143
|
-
time: start_time,
|
|
150
|
+
time: new Date(start_time).toISOString(),
|
|
144
151
|
},
|
|
145
152
|
],
|
|
146
153
|
inputs,
|
|
@@ -154,21 +161,24 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
154
161
|
this._startTrace(run);
|
|
155
162
|
await this.onChainStart?.(run);
|
|
156
163
|
}
|
|
157
|
-
async handleChainEnd(outputs, runId) {
|
|
164
|
+
async handleChainEnd(outputs, runId, _parentRunId, _tags, kwargs) {
|
|
158
165
|
const run = this.runMap.get(runId);
|
|
159
166
|
if (!run) {
|
|
160
167
|
throw new Error("No chain run to end.");
|
|
161
168
|
}
|
|
162
169
|
run.end_time = Date.now();
|
|
163
|
-
run.outputs = outputs;
|
|
170
|
+
run.outputs = _coerceToDict(outputs, "output");
|
|
164
171
|
run.events.push({
|
|
165
172
|
name: "end",
|
|
166
|
-
time: run.end_time,
|
|
173
|
+
time: new Date(run.end_time).toISOString(),
|
|
167
174
|
});
|
|
175
|
+
if (kwargs?.inputs !== undefined) {
|
|
176
|
+
run.inputs = _coerceToDict(kwargs.inputs, "input");
|
|
177
|
+
}
|
|
168
178
|
await this.onChainEnd?.(run);
|
|
169
179
|
await this._endTrace(run);
|
|
170
180
|
}
|
|
171
|
-
async handleChainError(error, runId) {
|
|
181
|
+
async handleChainError(error, runId, _parentRunId, _tags, kwargs) {
|
|
172
182
|
const run = this.runMap.get(runId);
|
|
173
183
|
if (!run) {
|
|
174
184
|
throw new Error("No chain run to end.");
|
|
@@ -177,8 +187,11 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
177
187
|
run.error = error.message;
|
|
178
188
|
run.events.push({
|
|
179
189
|
name: "error",
|
|
180
|
-
time: run.end_time,
|
|
190
|
+
time: new Date(run.end_time).toISOString(),
|
|
181
191
|
});
|
|
192
|
+
if (kwargs?.inputs !== undefined) {
|
|
193
|
+
run.inputs = _coerceToDict(kwargs.inputs, "input");
|
|
194
|
+
}
|
|
182
195
|
await this.onChainError?.(run);
|
|
183
196
|
await this._endTrace(run);
|
|
184
197
|
}
|
|
@@ -194,7 +207,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
194
207
|
events: [
|
|
195
208
|
{
|
|
196
209
|
name: "start",
|
|
197
|
-
time: start_time,
|
|
210
|
+
time: new Date(start_time).toISOString(),
|
|
198
211
|
},
|
|
199
212
|
],
|
|
200
213
|
inputs: { input },
|
|
@@ -217,7 +230,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
217
230
|
run.outputs = { output };
|
|
218
231
|
run.events.push({
|
|
219
232
|
name: "end",
|
|
220
|
-
time: run.end_time,
|
|
233
|
+
time: new Date(run.end_time).toISOString(),
|
|
221
234
|
});
|
|
222
235
|
await this.onToolEnd?.(run);
|
|
223
236
|
await this._endTrace(run);
|
|
@@ -231,7 +244,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
231
244
|
run.error = error.message;
|
|
232
245
|
run.events.push({
|
|
233
246
|
name: "error",
|
|
234
|
-
time: run.end_time,
|
|
247
|
+
time: new Date(run.end_time).toISOString(),
|
|
235
248
|
});
|
|
236
249
|
await this.onToolError?.(run);
|
|
237
250
|
await this._endTrace(run);
|
|
@@ -246,7 +259,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
246
259
|
agentRun.actions.push(action);
|
|
247
260
|
agentRun.events.push({
|
|
248
261
|
name: "agent_action",
|
|
249
|
-
time: Date.
|
|
262
|
+
time: new Date().toISOString(),
|
|
250
263
|
kwargs: { action },
|
|
251
264
|
});
|
|
252
265
|
await this.onAgentAction?.(run);
|
|
@@ -258,7 +271,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
258
271
|
}
|
|
259
272
|
run.events.push({
|
|
260
273
|
name: "agent_end",
|
|
261
|
-
time: Date.
|
|
274
|
+
time: new Date().toISOString(),
|
|
262
275
|
kwargs: { action },
|
|
263
276
|
});
|
|
264
277
|
await this.onAgentEnd?.(run);
|
|
@@ -275,7 +288,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
275
288
|
events: [
|
|
276
289
|
{
|
|
277
290
|
name: "start",
|
|
278
|
-
time: start_time,
|
|
291
|
+
time: new Date(start_time).toISOString(),
|
|
279
292
|
},
|
|
280
293
|
],
|
|
281
294
|
inputs: { query },
|
|
@@ -298,7 +311,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
298
311
|
run.outputs = { documents };
|
|
299
312
|
run.events.push({
|
|
300
313
|
name: "end",
|
|
301
|
-
time: run.end_time,
|
|
314
|
+
time: new Date(run.end_time).toISOString(),
|
|
302
315
|
});
|
|
303
316
|
await this.onRetrieverEnd?.(run);
|
|
304
317
|
await this._endTrace(run);
|
|
@@ -312,7 +325,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
312
325
|
run.error = error.message;
|
|
313
326
|
run.events.push({
|
|
314
327
|
name: "error",
|
|
315
|
-
time: run.end_time,
|
|
328
|
+
time: new Date(run.end_time).toISOString(),
|
|
316
329
|
});
|
|
317
330
|
await this.onRetrieverError?.(run);
|
|
318
331
|
await this._endTrace(run);
|
|
@@ -324,7 +337,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
324
337
|
}
|
|
325
338
|
run.events.push({
|
|
326
339
|
name: "text",
|
|
327
|
-
time: Date.
|
|
340
|
+
time: new Date().toISOString(),
|
|
328
341
|
kwargs: { text },
|
|
329
342
|
});
|
|
330
343
|
await this.onText?.(run);
|
|
@@ -336,7 +349,7 @@ export class BaseTracer extends BaseCallbackHandler {
|
|
|
336
349
|
}
|
|
337
350
|
run.events.push({
|
|
338
351
|
name: "new_token",
|
|
339
|
-
time: Date.
|
|
352
|
+
time: new Date().toISOString(),
|
|
340
353
|
kwargs: { token, idx, chunk: fields?.chunk },
|
|
341
354
|
});
|
|
342
355
|
await this.onLLMNewToken?.(run);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Client } from "langsmith";
|
|
2
|
-
import { BaseRun, RunUpdate as BaseRunUpdate } from "langsmith/schemas";
|
|
2
|
+
import { BaseRun, RunUpdate as BaseRunUpdate, KVMap } from "langsmith/schemas";
|
|
3
3
|
import { BaseTracer } from "./tracer.js";
|
|
4
4
|
import { BaseCallbackHandlerInput } from "../base.js";
|
|
5
5
|
export interface Run extends BaseRun {
|
|
@@ -9,6 +9,7 @@ export interface Run extends BaseRun {
|
|
|
9
9
|
}
|
|
10
10
|
export interface RunUpdate extends BaseRunUpdate {
|
|
11
11
|
events: BaseRun["events"];
|
|
12
|
+
inputs: KVMap;
|
|
12
13
|
}
|
|
13
14
|
export interface LangChainTracerFields extends BaseCallbackHandlerInput {
|
|
14
15
|
exampleId?: string;
|
package/dist/callbacks/index.cjs
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.consumeCallback = exports.awaitAllCallbacks = exports.traceAsGroup = exports.TraceGroup = exports.CallbackManagerForToolRun = exports.CallbackManagerForLLMRun = exports.CallbackManagerForChainRun = exports.CallbackManagerForRetrieverRun = exports.CallbackManager = exports.getTracingV2CallbackHandler = exports.getTracingCallbackHandler = exports.LangChainTracerV1 = exports.LangChainTracer = exports.ConsoleCallbackHandler = exports.BaseTracer = exports.BaseCallbackHandler = void 0;
|
|
3
|
+
exports.consumeCallback = exports.awaitAllCallbacks = exports.traceAsGroup = exports.TraceGroup = exports.CallbackManagerForToolRun = exports.CallbackManagerForLLMRun = exports.CallbackManagerForChainRun = exports.CallbackManagerForRetrieverRun = exports.CallbackManager = exports.getTracingV2CallbackHandler = exports.getTracingCallbackHandler = exports.LangChainTracerV1 = exports.LangChainTracer = exports.RunCollectorCallbackHandler = exports.ConsoleCallbackHandler = exports.BaseTracer = exports.BaseCallbackHandler = void 0;
|
|
4
4
|
var base_js_1 = require("./base.cjs");
|
|
5
5
|
Object.defineProperty(exports, "BaseCallbackHandler", { enumerable: true, get: function () { return base_js_1.BaseCallbackHandler; } });
|
|
6
6
|
var tracer_js_1 = require("./handlers/tracer.cjs");
|
|
7
7
|
Object.defineProperty(exports, "BaseTracer", { enumerable: true, get: function () { return tracer_js_1.BaseTracer; } });
|
|
8
8
|
var console_js_1 = require("./handlers/console.cjs");
|
|
9
9
|
Object.defineProperty(exports, "ConsoleCallbackHandler", { enumerable: true, get: function () { return console_js_1.ConsoleCallbackHandler; } });
|
|
10
|
+
var run_collector_js_1 = require("./handlers/run_collector.cjs");
|
|
11
|
+
Object.defineProperty(exports, "RunCollectorCallbackHandler", { enumerable: true, get: function () { return run_collector_js_1.RunCollectorCallbackHandler; } });
|
|
10
12
|
var tracer_langchain_js_1 = require("./handlers/tracer_langchain.cjs");
|
|
11
13
|
Object.defineProperty(exports, "LangChainTracer", { enumerable: true, get: function () { return tracer_langchain_js_1.LangChainTracer; } });
|
|
12
14
|
var tracer_langchain_v1_js_1 = require("./handlers/tracer_langchain_v1.cjs");
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { BaseCallbackHandler, CallbackHandlerMethods, BaseCallbackHandlerInput, NewTokenIndices, } from "./base.js";
|
|
2
2
|
export { Run, RunType, BaseTracer } from "./handlers/tracer.js";
|
|
3
3
|
export { ConsoleCallbackHandler } from "./handlers/console.js";
|
|
4
|
+
export { RunCollectorCallbackHandler } from "./handlers/run_collector.js";
|
|
4
5
|
export { LangChainTracer } from "./handlers/tracer_langchain.js";
|
|
5
6
|
export { LangChainTracerV1 } from "./handlers/tracer_langchain_v1.js";
|
|
6
7
|
export { getTracingCallbackHandler, getTracingV2CallbackHandler, } from "./handlers/initialize.js";
|
package/dist/callbacks/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { BaseCallbackHandler, } from "./base.js";
|
|
2
2
|
export { BaseTracer } from "./handlers/tracer.js";
|
|
3
3
|
export { ConsoleCallbackHandler } from "./handlers/console.js";
|
|
4
|
+
export { RunCollectorCallbackHandler } from "./handlers/run_collector.js";
|
|
4
5
|
export { LangChainTracer } from "./handlers/tracer_langchain.js";
|
|
5
6
|
export { LangChainTracerV1 } from "./handlers/tracer_langchain_v1.js";
|
|
6
7
|
export { getTracingCallbackHandler, getTracingV2CallbackHandler, } from "./handlers/initialize.js";
|
|
@@ -187,11 +187,11 @@ class CallbackManagerForChainRun extends BaseRunManager {
|
|
|
187
187
|
}
|
|
188
188
|
return manager;
|
|
189
189
|
}
|
|
190
|
-
async handleChainError(err) {
|
|
190
|
+
async handleChainError(err, _runId, _parentRunId, _tags, kwargs) {
|
|
191
191
|
await Promise.all(this.handlers.map((handler) => (0, promises_js_1.consumeCallback)(async () => {
|
|
192
192
|
if (!handler.ignoreChain) {
|
|
193
193
|
try {
|
|
194
|
-
await handler.handleChainError?.(err, this.runId, this._parentRunId, this.tags);
|
|
194
|
+
await handler.handleChainError?.(err, this.runId, this._parentRunId, this.tags, kwargs);
|
|
195
195
|
}
|
|
196
196
|
catch (err) {
|
|
197
197
|
console.error(`Error in handler ${handler.constructor.name}, handleChainError: ${err}`);
|
|
@@ -199,11 +199,11 @@ class CallbackManagerForChainRun extends BaseRunManager {
|
|
|
199
199
|
}
|
|
200
200
|
}, handler.awaitHandlers)));
|
|
201
201
|
}
|
|
202
|
-
async handleChainEnd(output) {
|
|
202
|
+
async handleChainEnd(output, _runId, _parentRunId, _tags, kwargs) {
|
|
203
203
|
await Promise.all(this.handlers.map((handler) => (0, promises_js_1.consumeCallback)(async () => {
|
|
204
204
|
if (!handler.ignoreChain) {
|
|
205
205
|
try {
|
|
206
|
-
await handler.handleChainEnd?.(output, this.runId, this._parentRunId, this.tags);
|
|
206
|
+
await handler.handleChainEnd?.(output, this.runId, this._parentRunId, this.tags, kwargs);
|
|
207
207
|
}
|
|
208
208
|
catch (err) {
|
|
209
209
|
console.error(`Error in handler ${handler.constructor.name}, handleChainEnd: ${err}`);
|
|
@@ -571,42 +571,57 @@ class TraceGroup {
|
|
|
571
571
|
value: void 0
|
|
572
572
|
});
|
|
573
573
|
}
|
|
574
|
-
async getTraceGroupCallbackManager(group_name, options) {
|
|
574
|
+
async getTraceGroupCallbackManager(group_name, inputs, options) {
|
|
575
575
|
const cb = new tracer_langchain_js_1.LangChainTracer(options);
|
|
576
576
|
const cm = await CallbackManager.configure([cb]);
|
|
577
577
|
const runManager = await cm?.handleChainStart({
|
|
578
578
|
lc: 1,
|
|
579
579
|
type: "not_implemented",
|
|
580
580
|
id: ["langchain", "callbacks", "groups", group_name],
|
|
581
|
-
}, {});
|
|
581
|
+
}, inputs ?? {});
|
|
582
582
|
if (!runManager) {
|
|
583
583
|
throw new Error("Failed to create run group callback manager.");
|
|
584
584
|
}
|
|
585
585
|
return runManager;
|
|
586
586
|
}
|
|
587
|
-
async start() {
|
|
587
|
+
async start(inputs) {
|
|
588
588
|
if (!this.runManager) {
|
|
589
|
-
this.runManager = await this.getTraceGroupCallbackManager(this.groupName, this.options);
|
|
589
|
+
this.runManager = await this.getTraceGroupCallbackManager(this.groupName, inputs, this.options);
|
|
590
590
|
}
|
|
591
591
|
return this.runManager.getChild();
|
|
592
592
|
}
|
|
593
|
-
async
|
|
593
|
+
async error(err) {
|
|
594
594
|
if (this.runManager) {
|
|
595
|
-
await this.runManager.
|
|
595
|
+
await this.runManager.handleChainError(err);
|
|
596
|
+
this.runManager = undefined;
|
|
597
|
+
}
|
|
598
|
+
}
|
|
599
|
+
async end(output) {
|
|
600
|
+
if (this.runManager) {
|
|
601
|
+
await this.runManager.handleChainEnd(output ?? {});
|
|
596
602
|
this.runManager = undefined;
|
|
597
603
|
}
|
|
598
604
|
}
|
|
599
605
|
}
|
|
600
606
|
exports.TraceGroup = TraceGroup;
|
|
601
607
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
608
|
+
function _coerceToDict(value, defaultKey) {
|
|
609
|
+
return value && !Array.isArray(value) && typeof value === "object"
|
|
610
|
+
? value
|
|
611
|
+
: { [defaultKey]: value };
|
|
612
|
+
}
|
|
613
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
602
614
|
async function traceAsGroup(groupOptions, enclosedCode, ...args) {
|
|
603
615
|
const traceGroup = new TraceGroup(groupOptions.name, groupOptions);
|
|
604
|
-
const callbackManager = await traceGroup.start();
|
|
616
|
+
const callbackManager = await traceGroup.start({ ...args });
|
|
605
617
|
try {
|
|
606
|
-
|
|
618
|
+
const result = await enclosedCode(callbackManager, ...args);
|
|
619
|
+
await traceGroup.end(_coerceToDict(result, "output"));
|
|
620
|
+
return result;
|
|
607
621
|
}
|
|
608
|
-
|
|
609
|
-
await traceGroup.
|
|
622
|
+
catch (err) {
|
|
623
|
+
await traceGroup.error(err);
|
|
624
|
+
throw err;
|
|
610
625
|
}
|
|
611
626
|
}
|
|
612
627
|
exports.traceAsGroup = traceAsGroup;
|
|
@@ -68,8 +68,12 @@ export declare class CallbackManagerForLLMRun extends BaseRunManager implements
|
|
|
68
68
|
}
|
|
69
69
|
export declare class CallbackManagerForChainRun extends BaseRunManager implements BaseCallbackManagerMethods {
|
|
70
70
|
getChild(tag?: string): CallbackManager;
|
|
71
|
-
handleChainError(err: Error | unknown
|
|
72
|
-
|
|
71
|
+
handleChainError(err: Error | unknown, _runId?: string, _parentRunId?: string, _tags?: string[], kwargs?: {
|
|
72
|
+
inputs?: Record<string, unknown>;
|
|
73
|
+
}): Promise<void>;
|
|
74
|
+
handleChainEnd(output: ChainValues, _runId?: string, _parentRunId?: string, _tags?: string[], kwargs?: {
|
|
75
|
+
inputs?: Record<string, unknown>;
|
|
76
|
+
}): Promise<void>;
|
|
73
77
|
handleAgentAction(action: AgentAction): Promise<void>;
|
|
74
78
|
handleAgentEnd(action: AgentFinish): Promise<void>;
|
|
75
79
|
}
|
|
@@ -113,8 +117,9 @@ export declare class TraceGroup {
|
|
|
113
117
|
exampleId?: string | undefined;
|
|
114
118
|
} | undefined);
|
|
115
119
|
private getTraceGroupCallbackManager;
|
|
116
|
-
start(): Promise<CallbackManager>;
|
|
117
|
-
|
|
120
|
+
start(inputs?: ChainValues): Promise<CallbackManager>;
|
|
121
|
+
error(err: Error | unknown): Promise<void>;
|
|
122
|
+
end(output?: ChainValues): Promise<void>;
|
|
118
123
|
}
|
|
119
124
|
export declare function traceAsGroup<T, A extends any[]>(groupOptions: {
|
|
120
125
|
name: string;
|