langchain 0.0.195 → 0.0.196

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.
Files changed (216) hide show
  1. package/dist/agents/toolkits/conversational_retrieval/token_buffer_memory.d.ts +1 -1
  2. package/dist/base_language/count_tokens.cjs +5 -70
  3. package/dist/base_language/count_tokens.d.ts +1 -10
  4. package/dist/base_language/count_tokens.js +1 -65
  5. package/dist/base_language/index.cjs +6 -196
  6. package/dist/base_language/index.d.ts +1 -111
  7. package/dist/base_language/index.js +1 -191
  8. package/dist/cache/base.cjs +15 -37
  9. package/dist/cache/base.d.ts +1 -20
  10. package/dist/cache/base.js +1 -33
  11. package/dist/cache/index.cjs +2 -46
  12. package/dist/cache/index.d.ts +1 -29
  13. package/dist/cache/index.js +1 -45
  14. package/dist/callbacks/base.cjs +3 -139
  15. package/dist/callbacks/base.d.ts +1 -266
  16. package/dist/callbacks/base.js +1 -126
  17. package/dist/callbacks/handlers/console.cjs +14 -221
  18. package/dist/callbacks/handlers/console.d.ts +1 -117
  19. package/dist/callbacks/handlers/console.js +1 -217
  20. package/dist/callbacks/handlers/initialize.cjs +15 -30
  21. package/dist/callbacks/handlers/initialize.d.ts +1 -16
  22. package/dist/callbacks/handlers/initialize.js +1 -27
  23. package/dist/callbacks/handlers/log_stream.cjs +15 -293
  24. package/dist/callbacks/handlers/log_stream.d.ts +1 -100
  25. package/dist/callbacks/handlers/log_stream.js +1 -289
  26. package/dist/callbacks/handlers/run_collector.cjs +15 -48
  27. package/dist/callbacks/handlers/run_collector.d.ts +1 -26
  28. package/dist/callbacks/handlers/run_collector.js +1 -46
  29. package/dist/callbacks/handlers/tracer.cjs +15 -375
  30. package/dist/callbacks/handlers/tracer.d.ts +1 -70
  31. package/dist/callbacks/handlers/tracer.js +1 -373
  32. package/dist/callbacks/handlers/tracer_langchain.cjs +15 -104
  33. package/dist/callbacks/handlers/tracer_langchain.d.ts +1 -41
  34. package/dist/callbacks/handlers/tracer_langchain.js +1 -102
  35. package/dist/callbacks/handlers/tracer_langchain_v1.cjs +15 -197
  36. package/dist/callbacks/handlers/tracer_langchain_v1.d.ts +1 -57
  37. package/dist/callbacks/handlers/tracer_langchain_v1.js +1 -195
  38. package/dist/callbacks/manager.cjs +15 -676
  39. package/dist/callbacks/manager.d.ts +1 -180
  40. package/dist/callbacks/manager.js +1 -666
  41. package/dist/callbacks/promises.cjs +14 -42
  42. package/dist/callbacks/promises.d.ts +1 -11
  43. package/dist/callbacks/promises.js +1 -37
  44. package/dist/chains/graph_qa/prompts.d.ts +1 -1
  45. package/dist/chains/openai_functions/structured_output.cjs +2 -2
  46. package/dist/chains/openai_functions/structured_output.d.ts +1 -1
  47. package/dist/chains/openai_functions/structured_output.js +1 -1
  48. package/dist/chat_models/baiduwenxin.d.ts +1 -1
  49. package/dist/chat_models/base.cjs +15 -296
  50. package/dist/chat_models/base.d.ts +1 -122
  51. package/dist/chat_models/base.js +1 -292
  52. package/dist/chat_models/bedrock/web.d.ts +1 -1
  53. package/dist/chat_models/fireworks.d.ts +1 -1
  54. package/dist/document.cjs +2 -24
  55. package/dist/document.d.ts +1 -12
  56. package/dist/document.js +1 -23
  57. package/dist/document_loaders/web/azure_blob_storage_file.d.ts +1 -1
  58. package/dist/document_loaders/web/s3.d.ts +1 -1
  59. package/dist/embeddings/base.cjs +15 -22
  60. package/dist/embeddings/base.d.ts +1 -33
  61. package/dist/embeddings/base.js +1 -20
  62. package/dist/embeddings/cache_backed.cjs +2 -2
  63. package/dist/embeddings/cache_backed.js +1 -1
  64. package/dist/evaluation/agents/trajectory.d.ts +1 -1
  65. package/dist/evaluation/criteria/prompt.d.ts +2 -2
  66. package/dist/evaluation/qa/prompt.d.ts +2 -2
  67. package/dist/experimental/hubs/makersuite/googlemakersuitehub.d.ts +1 -1
  68. package/dist/experimental/plan_and_execute/prompt.d.ts +1 -1
  69. package/dist/llms/base.cjs +15 -278
  70. package/dist/llms/base.d.ts +1 -115
  71. package/dist/llms/base.js +1 -275
  72. package/dist/llms/bedrock/web.d.ts +1 -1
  73. package/dist/llms/fireworks.d.ts +1 -1
  74. package/dist/load/import_map.cjs +2 -1
  75. package/dist/load/import_map.d.ts +1 -0
  76. package/dist/load/import_map.js +1 -0
  77. package/dist/load/index.cjs +7 -148
  78. package/dist/load/index.js +7 -148
  79. package/dist/load/map_keys.cjs +0 -24
  80. package/dist/load/map_keys.d.ts +0 -6
  81. package/dist/load/map_keys.js +1 -17
  82. package/dist/load/serializable.cjs +15 -178
  83. package/dist/load/serializable.d.ts +1 -66
  84. package/dist/load/serializable.js +1 -175
  85. package/dist/memory/base.cjs +17 -92
  86. package/dist/memory/base.d.ts +2 -68
  87. package/dist/memory/base.js +2 -87
  88. package/dist/output_parsers/openai_functions.cjs +2 -2
  89. package/dist/output_parsers/openai_functions.d.ts +1 -1
  90. package/dist/output_parsers/openai_functions.js +1 -1
  91. package/dist/output_parsers/regex.d.ts +1 -1
  92. package/dist/output_parsers/structured.d.ts +1 -1
  93. package/dist/prompts/base.cjs +8 -183
  94. package/dist/prompts/base.d.ts +3 -132
  95. package/dist/prompts/base.js +3 -178
  96. package/dist/prompts/chat.cjs +15 -477
  97. package/dist/prompts/chat.d.ts +1 -219
  98. package/dist/prompts/chat.js +1 -466
  99. package/dist/prompts/few_shot.cjs +15 -353
  100. package/dist/prompts/few_shot.d.ts +1 -192
  101. package/dist/prompts/few_shot.js +1 -350
  102. package/dist/prompts/index.cjs +3 -2
  103. package/dist/prompts/index.d.ts +2 -1
  104. package/dist/prompts/index.js +2 -1
  105. package/dist/prompts/pipeline.cjs +15 -142
  106. package/dist/prompts/pipeline.d.ts +1 -98
  107. package/dist/prompts/pipeline.js +1 -140
  108. package/dist/prompts/prompt.cjs +15 -146
  109. package/dist/prompts/prompt.d.ts +1 -92
  110. package/dist/prompts/prompt.js +1 -144
  111. package/dist/prompts/selectors/LengthBasedExampleSelector.cjs +15 -148
  112. package/dist/prompts/selectors/LengthBasedExampleSelector.d.ts +1 -89
  113. package/dist/prompts/selectors/LengthBasedExampleSelector.js +1 -146
  114. package/dist/prompts/selectors/SemanticSimilarityExampleSelector.cjs +15 -137
  115. package/dist/prompts/selectors/SemanticSimilarityExampleSelector.d.ts +1 -91
  116. package/dist/prompts/selectors/SemanticSimilarityExampleSelector.js +1 -135
  117. package/dist/prompts/selectors/conditional.cjs +15 -74
  118. package/dist/prompts/selectors/conditional.d.ts +1 -63
  119. package/dist/prompts/selectors/conditional.js +1 -69
  120. package/dist/prompts/serde.cjs +15 -0
  121. package/dist/prompts/serde.d.ts +1 -43
  122. package/dist/prompts/serde.js +1 -1
  123. package/dist/prompts/template.cjs +14 -88
  124. package/dist/prompts/template.d.ts +1 -36
  125. package/dist/prompts/template.js +1 -83
  126. package/dist/{util/@cfworker/json-schema → runnables}/index.cjs +1 -1
  127. package/dist/runnables/index.d.ts +1 -0
  128. package/dist/runnables/index.js +1 -0
  129. package/dist/schema/document.cjs +3 -34
  130. package/dist/schema/document.d.ts +2 -29
  131. package/dist/schema/document.js +2 -32
  132. package/dist/schema/index.cjs +37 -612
  133. package/dist/schema/index.d.ts +11 -311
  134. package/dist/schema/index.js +8 -583
  135. package/dist/schema/output_parser.cjs +15 -309
  136. package/dist/schema/output_parser.d.ts +1 -173
  137. package/dist/schema/output_parser.js +1 -301
  138. package/dist/schema/retriever.cjs +15 -77
  139. package/dist/schema/retriever.d.ts +1 -43
  140. package/dist/schema/retriever.js +1 -75
  141. package/dist/schema/runnable/base.cjs +10 -1072
  142. package/dist/schema/runnable/base.d.ts +1 -356
  143. package/dist/schema/runnable/base.js +1 -1060
  144. package/dist/schema/runnable/branch.cjs +2 -131
  145. package/dist/schema/runnable/branch.d.ts +1 -94
  146. package/dist/schema/runnable/branch.js +1 -130
  147. package/dist/schema/runnable/config.cjs +0 -6
  148. package/dist/schema/runnable/config.d.ts +1 -3
  149. package/dist/schema/runnable/config.js +1 -4
  150. package/dist/schema/runnable/index.cjs +15 -16
  151. package/dist/schema/runnable/index.d.ts +1 -5
  152. package/dist/schema/runnable/index.js +1 -4
  153. package/dist/schema/runnable/passthrough.cjs +3 -113
  154. package/dist/schema/runnable/passthrough.d.ts +1 -72
  155. package/dist/schema/runnable/passthrough.js +1 -111
  156. package/dist/schema/runnable/router.cjs +2 -71
  157. package/dist/schema/runnable/router.d.ts +1 -29
  158. package/dist/schema/runnable/router.js +1 -70
  159. package/dist/schema/storage.cjs +15 -8
  160. package/dist/schema/storage.d.ts +1 -57
  161. package/dist/schema/storage.js +1 -6
  162. package/dist/tools/bingserpapi.d.ts +1 -1
  163. package/dist/tools/searchapi.d.ts +1 -1
  164. package/dist/tools/serpapi.d.ts +1 -1
  165. package/dist/tools/serper.d.ts +1 -1
  166. package/dist/util/async_caller.cjs +14 -128
  167. package/dist/util/async_caller.d.ts +1 -45
  168. package/dist/util/async_caller.js +1 -124
  169. package/package.json +11 -5
  170. package/runnables.cjs +1 -0
  171. package/runnables.d.ts +1 -0
  172. package/runnables.js +1 -0
  173. package/dist/util/@cfworker/json-schema/index.d.ts +0 -1
  174. package/dist/util/@cfworker/json-schema/index.js +0 -1
  175. package/dist/util/@cfworker/json-schema/src/deep-compare-strict.cjs +0 -43
  176. package/dist/util/@cfworker/json-schema/src/deep-compare-strict.d.ts +0 -1
  177. package/dist/util/@cfworker/json-schema/src/deep-compare-strict.js +0 -39
  178. package/dist/util/@cfworker/json-schema/src/dereference.cjs +0 -169
  179. package/dist/util/@cfworker/json-schema/src/dereference.d.ts +0 -12
  180. package/dist/util/@cfworker/json-schema/src/dereference.js +0 -165
  181. package/dist/util/@cfworker/json-schema/src/format.cjs +0 -139
  182. package/dist/util/@cfworker/json-schema/src/format.d.ts +0 -2
  183. package/dist/util/@cfworker/json-schema/src/format.js +0 -136
  184. package/dist/util/@cfworker/json-schema/src/index.cjs +0 -24
  185. package/dist/util/@cfworker/json-schema/src/index.d.ts +0 -8
  186. package/dist/util/@cfworker/json-schema/src/index.js +0 -8
  187. package/dist/util/@cfworker/json-schema/src/pointer.cjs +0 -11
  188. package/dist/util/@cfworker/json-schema/src/pointer.d.ts +0 -2
  189. package/dist/util/@cfworker/json-schema/src/pointer.js +0 -6
  190. package/dist/util/@cfworker/json-schema/src/types.cjs +0 -2
  191. package/dist/util/@cfworker/json-schema/src/types.d.ts +0 -72
  192. package/dist/util/@cfworker/json-schema/src/types.js +0 -1
  193. package/dist/util/@cfworker/json-schema/src/ucs2-length.cjs +0 -28
  194. package/dist/util/@cfworker/json-schema/src/ucs2-length.d.ts +0 -6
  195. package/dist/util/@cfworker/json-schema/src/ucs2-length.js +0 -24
  196. package/dist/util/@cfworker/json-schema/src/validate.cjs +0 -808
  197. package/dist/util/@cfworker/json-schema/src/validate.d.ts +0 -3
  198. package/dist/util/@cfworker/json-schema/src/validate.js +0 -804
  199. package/dist/util/@cfworker/json-schema/src/validator.cjs +0 -44
  200. package/dist/util/@cfworker/json-schema/src/validator.d.ts +0 -10
  201. package/dist/util/@cfworker/json-schema/src/validator.js +0 -40
  202. package/dist/util/fast-json-patch/index.cjs +0 -49
  203. package/dist/util/fast-json-patch/index.d.ts +0 -22
  204. package/dist/util/fast-json-patch/index.js +0 -16
  205. package/dist/util/fast-json-patch/src/core.cjs +0 -469
  206. package/dist/util/fast-json-patch/src/core.d.ts +0 -111
  207. package/dist/util/fast-json-patch/src/core.js +0 -459
  208. package/dist/util/fast-json-patch/src/duplex.cjs +0 -237
  209. package/dist/util/fast-json-patch/src/duplex.d.ts +0 -23
  210. package/dist/util/fast-json-patch/src/duplex.js +0 -230
  211. package/dist/util/fast-json-patch/src/helpers.cjs +0 -194
  212. package/dist/util/fast-json-patch/src/helpers.d.ts +0 -36
  213. package/dist/util/fast-json-patch/src/helpers.js +0 -181
  214. package/dist/util/js-sha1/hash.cjs +0 -358
  215. package/dist/util/js-sha1/hash.d.ts +0 -1
  216. package/dist/util/js-sha1/hash.js +0 -355
@@ -1,377 +1,17 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
2
16
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BaseTracer = void 0;
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
- }
11
- class BaseTracer extends base_js_1.BaseCallbackHandler {
12
- constructor(_fields) {
13
- super(...arguments);
14
- Object.defineProperty(this, "runMap", {
15
- enumerable: true,
16
- configurable: true,
17
- writable: true,
18
- value: new Map()
19
- });
20
- }
21
- copy() {
22
- return this;
23
- }
24
- _addChildRun(parentRun, childRun) {
25
- parentRun.child_runs.push(childRun);
26
- }
27
- async _startTrace(run) {
28
- if (run.parent_run_id !== undefined) {
29
- const parentRun = this.runMap.get(run.parent_run_id);
30
- if (parentRun) {
31
- this._addChildRun(parentRun, run);
32
- parentRun.child_execution_order = Math.max(parentRun.child_execution_order, run.child_execution_order);
33
- }
34
- }
35
- this.runMap.set(run.id, run);
36
- await this.onRunCreate?.(run);
37
- }
38
- async _endTrace(run) {
39
- const parentRun = run.parent_run_id !== undefined && this.runMap.get(run.parent_run_id);
40
- if (parentRun) {
41
- parentRun.child_execution_order = Math.max(parentRun.child_execution_order, run.child_execution_order);
42
- }
43
- else {
44
- await this.persistRun(run);
45
- }
46
- this.runMap.delete(run.id);
47
- await this.onRunUpdate?.(run);
48
- }
49
- _getExecutionOrder(parentRunId) {
50
- const parentRun = parentRunId !== undefined && this.runMap.get(parentRunId);
51
- // If a run has no parent then execution order is 1
52
- if (!parentRun) {
53
- return 1;
54
- }
55
- return parentRun.child_execution_order + 1;
56
- }
57
- async handleLLMStart(llm, prompts, runId, parentRunId, extraParams, tags, metadata, name) {
58
- const execution_order = this._getExecutionOrder(parentRunId);
59
- const start_time = Date.now();
60
- const finalExtraParams = metadata
61
- ? { ...extraParams, metadata }
62
- : extraParams;
63
- const run = {
64
- id: runId,
65
- name: name ?? llm.id[llm.id.length - 1],
66
- parent_run_id: parentRunId,
67
- start_time,
68
- serialized: llm,
69
- events: [
70
- {
71
- name: "start",
72
- time: new Date(start_time).toISOString(),
73
- },
74
- ],
75
- inputs: { prompts },
76
- execution_order,
77
- child_runs: [],
78
- child_execution_order: execution_order,
79
- run_type: "llm",
80
- extra: finalExtraParams ?? {},
81
- tags: tags || [],
82
- };
83
- await this._startTrace(run);
84
- await this.onLLMStart?.(run);
85
- return run;
86
- }
87
- async handleChatModelStart(llm, messages, runId, parentRunId, extraParams, tags, metadata, name) {
88
- const execution_order = this._getExecutionOrder(parentRunId);
89
- const start_time = Date.now();
90
- const finalExtraParams = metadata
91
- ? { ...extraParams, metadata }
92
- : extraParams;
93
- const run = {
94
- id: runId,
95
- name: name ?? llm.id[llm.id.length - 1],
96
- parent_run_id: parentRunId,
97
- start_time,
98
- serialized: llm,
99
- events: [
100
- {
101
- name: "start",
102
- time: new Date(start_time).toISOString(),
103
- },
104
- ],
105
- inputs: { messages },
106
- execution_order,
107
- child_runs: [],
108
- child_execution_order: execution_order,
109
- run_type: "llm",
110
- extra: finalExtraParams ?? {},
111
- tags: tags || [],
112
- };
113
- await this._startTrace(run);
114
- await this.onLLMStart?.(run);
115
- return run;
116
- }
117
- async handleLLMEnd(output, runId) {
118
- const run = this.runMap.get(runId);
119
- if (!run || run?.run_type !== "llm") {
120
- throw new Error("No LLM run to end.");
121
- }
122
- run.end_time = Date.now();
123
- run.outputs = output;
124
- run.events.push({
125
- name: "end",
126
- time: new Date(run.end_time).toISOString(),
127
- });
128
- await this.onLLMEnd?.(run);
129
- await this._endTrace(run);
130
- return run;
131
- }
132
- async handleLLMError(error, runId) {
133
- const run = this.runMap.get(runId);
134
- if (!run || run?.run_type !== "llm") {
135
- throw new Error("No LLM run to end.");
136
- }
137
- run.end_time = Date.now();
138
- run.error = error.message;
139
- run.events.push({
140
- name: "error",
141
- time: new Date(run.end_time).toISOString(),
142
- });
143
- await this.onLLMError?.(run);
144
- await this._endTrace(run);
145
- return run;
146
- }
147
- async handleChainStart(chain, inputs, runId, parentRunId, tags, metadata, runType, name) {
148
- const execution_order = this._getExecutionOrder(parentRunId);
149
- const start_time = Date.now();
150
- const run = {
151
- id: runId,
152
- name: name ?? chain.id[chain.id.length - 1],
153
- parent_run_id: parentRunId,
154
- start_time,
155
- serialized: chain,
156
- events: [
157
- {
158
- name: "start",
159
- time: new Date(start_time).toISOString(),
160
- },
161
- ],
162
- inputs,
163
- execution_order,
164
- child_execution_order: execution_order,
165
- run_type: runType ?? "chain",
166
- child_runs: [],
167
- extra: metadata ? { metadata } : {},
168
- tags: tags || [],
169
- };
170
- await this._startTrace(run);
171
- await this.onChainStart?.(run);
172
- return run;
173
- }
174
- async handleChainEnd(outputs, runId, _parentRunId, _tags, kwargs) {
175
- const run = this.runMap.get(runId);
176
- if (!run) {
177
- throw new Error("No chain run to end.");
178
- }
179
- run.end_time = Date.now();
180
- run.outputs = _coerceToDict(outputs, "output");
181
- run.events.push({
182
- name: "end",
183
- time: new Date(run.end_time).toISOString(),
184
- });
185
- if (kwargs?.inputs !== undefined) {
186
- run.inputs = _coerceToDict(kwargs.inputs, "input");
187
- }
188
- await this.onChainEnd?.(run);
189
- await this._endTrace(run);
190
- return run;
191
- }
192
- async handleChainError(error, runId, _parentRunId, _tags, kwargs) {
193
- const run = this.runMap.get(runId);
194
- if (!run) {
195
- throw new Error("No chain run to end.");
196
- }
197
- run.end_time = Date.now();
198
- run.error = error.message;
199
- run.events.push({
200
- name: "error",
201
- time: new Date(run.end_time).toISOString(),
202
- });
203
- if (kwargs?.inputs !== undefined) {
204
- run.inputs = _coerceToDict(kwargs.inputs, "input");
205
- }
206
- await this.onChainError?.(run);
207
- await this._endTrace(run);
208
- return run;
209
- }
210
- async handleToolStart(tool, input, runId, parentRunId, tags, metadata, name) {
211
- const execution_order = this._getExecutionOrder(parentRunId);
212
- const start_time = Date.now();
213
- const run = {
214
- id: runId,
215
- name: name ?? tool.id[tool.id.length - 1],
216
- parent_run_id: parentRunId,
217
- start_time,
218
- serialized: tool,
219
- events: [
220
- {
221
- name: "start",
222
- time: new Date(start_time).toISOString(),
223
- },
224
- ],
225
- inputs: { input },
226
- execution_order,
227
- child_execution_order: execution_order,
228
- run_type: "tool",
229
- child_runs: [],
230
- extra: metadata ? { metadata } : {},
231
- tags: tags || [],
232
- };
233
- await this._startTrace(run);
234
- await this.onToolStart?.(run);
235
- return run;
236
- }
237
- async handleToolEnd(output, runId) {
238
- const run = this.runMap.get(runId);
239
- if (!run || run?.run_type !== "tool") {
240
- throw new Error("No tool run to end");
241
- }
242
- run.end_time = Date.now();
243
- run.outputs = { output };
244
- run.events.push({
245
- name: "end",
246
- time: new Date(run.end_time).toISOString(),
247
- });
248
- await this.onToolEnd?.(run);
249
- await this._endTrace(run);
250
- return run;
251
- }
252
- async handleToolError(error, runId) {
253
- const run = this.runMap.get(runId);
254
- if (!run || run?.run_type !== "tool") {
255
- throw new Error("No tool run to end");
256
- }
257
- run.end_time = Date.now();
258
- run.error = error.message;
259
- run.events.push({
260
- name: "error",
261
- time: new Date(run.end_time).toISOString(),
262
- });
263
- await this.onToolError?.(run);
264
- await this._endTrace(run);
265
- return run;
266
- }
267
- async handleAgentAction(action, runId) {
268
- const run = this.runMap.get(runId);
269
- if (!run || run?.run_type !== "chain") {
270
- return;
271
- }
272
- const agentRun = run;
273
- agentRun.actions = agentRun.actions || [];
274
- agentRun.actions.push(action);
275
- agentRun.events.push({
276
- name: "agent_action",
277
- time: new Date().toISOString(),
278
- kwargs: { action },
279
- });
280
- await this.onAgentAction?.(run);
281
- }
282
- async handleAgentEnd(action, runId) {
283
- const run = this.runMap.get(runId);
284
- if (!run || run?.run_type !== "chain") {
285
- return;
286
- }
287
- run.events.push({
288
- name: "agent_end",
289
- time: new Date().toISOString(),
290
- kwargs: { action },
291
- });
292
- await this.onAgentEnd?.(run);
293
- }
294
- async handleRetrieverStart(retriever, query, runId, parentRunId, tags, metadata, name) {
295
- const execution_order = this._getExecutionOrder(parentRunId);
296
- const start_time = Date.now();
297
- const run = {
298
- id: runId,
299
- name: name ?? retriever.id[retriever.id.length - 1],
300
- parent_run_id: parentRunId,
301
- start_time,
302
- serialized: retriever,
303
- events: [
304
- {
305
- name: "start",
306
- time: new Date(start_time).toISOString(),
307
- },
308
- ],
309
- inputs: { query },
310
- execution_order,
311
- child_execution_order: execution_order,
312
- run_type: "retriever",
313
- child_runs: [],
314
- extra: metadata ? { metadata } : {},
315
- tags: tags || [],
316
- };
317
- await this._startTrace(run);
318
- await this.onRetrieverStart?.(run);
319
- return run;
320
- }
321
- async handleRetrieverEnd(documents, runId) {
322
- const run = this.runMap.get(runId);
323
- if (!run || run?.run_type !== "retriever") {
324
- throw new Error("No retriever run to end");
325
- }
326
- run.end_time = Date.now();
327
- run.outputs = { documents };
328
- run.events.push({
329
- name: "end",
330
- time: new Date(run.end_time).toISOString(),
331
- });
332
- await this.onRetrieverEnd?.(run);
333
- await this._endTrace(run);
334
- return run;
335
- }
336
- async handleRetrieverError(error, runId) {
337
- const run = this.runMap.get(runId);
338
- if (!run || run?.run_type !== "retriever") {
339
- throw new Error("No retriever run to end");
340
- }
341
- run.end_time = Date.now();
342
- run.error = error.message;
343
- run.events.push({
344
- name: "error",
345
- time: new Date(run.end_time).toISOString(),
346
- });
347
- await this.onRetrieverError?.(run);
348
- await this._endTrace(run);
349
- return run;
350
- }
351
- async handleText(text, runId) {
352
- const run = this.runMap.get(runId);
353
- if (!run || run?.run_type !== "chain") {
354
- return;
355
- }
356
- run.events.push({
357
- name: "text",
358
- time: new Date().toISOString(),
359
- kwargs: { text },
360
- });
361
- await this.onText?.(run);
362
- }
363
- async handleLLMNewToken(token, idx, runId, _parentRunId, _tags, fields) {
364
- const run = this.runMap.get(runId);
365
- if (!run || run?.run_type !== "llm") {
366
- throw new Error(`Invalid "runId" provided to "handleLLMNewToken" callback.`);
367
- }
368
- run.events.push({
369
- name: "new_token",
370
- time: new Date().toISOString(),
371
- kwargs: { token, idx, chunk: fields?.chunk },
372
- });
373
- await this.onLLMNewToken?.(run, token);
374
- return run;
375
- }
376
- }
377
- exports.BaseTracer = BaseTracer;
17
+ __exportStar(require("langchain-core/callbacks/tracers/base"), exports);
@@ -1,70 +1 @@
1
- import { KVMap, BaseRun } from "langsmith/schemas";
2
- import { AgentAction, AgentFinish, BaseMessage, ChainValues, LLMResult } from "../../schema/index.js";
3
- import { Serialized } from "../../load/serializable.js";
4
- import { BaseCallbackHandler, BaseCallbackHandlerInput, HandleLLMNewTokenCallbackFields, NewTokenIndices } from "../base.js";
5
- import { Document } from "../../document.js";
6
- export type RunType = string;
7
- export interface Run extends BaseRun {
8
- id: string;
9
- start_time: number;
10
- execution_order: number;
11
- child_runs: this[];
12
- child_execution_order: number;
13
- events: Array<{
14
- name: string;
15
- time: string;
16
- kwargs?: Record<string, unknown>;
17
- }>;
18
- }
19
- export interface AgentRun extends Run {
20
- actions: AgentAction[];
21
- }
22
- export declare abstract class BaseTracer extends BaseCallbackHandler {
23
- protected runMap: Map<string, Run>;
24
- constructor(_fields?: BaseCallbackHandlerInput);
25
- copy(): this;
26
- protected abstract persistRun(run: Run): Promise<void>;
27
- protected _addChildRun(parentRun: Run, childRun: Run): void;
28
- protected _startTrace(run: Run): Promise<void>;
29
- protected _endTrace(run: Run): Promise<void>;
30
- protected _getExecutionOrder(parentRunId: string | undefined): number;
31
- handleLLMStart(llm: Serialized, prompts: string[], runId: string, parentRunId?: string, extraParams?: KVMap, tags?: string[], metadata?: KVMap, name?: string): Promise<Run>;
32
- handleChatModelStart(llm: Serialized, messages: BaseMessage[][], runId: string, parentRunId?: string, extraParams?: KVMap, tags?: string[], metadata?: KVMap, name?: string): Promise<Run>;
33
- handleLLMEnd(output: LLMResult, runId: string): Promise<Run>;
34
- handleLLMError(error: Error, runId: string): Promise<Run>;
35
- handleChainStart(chain: Serialized, inputs: ChainValues, runId: string, parentRunId?: string, tags?: string[], metadata?: KVMap, runType?: string, name?: string): Promise<Run>;
36
- handleChainEnd(outputs: ChainValues, runId: string, _parentRunId?: string, _tags?: string[], kwargs?: {
37
- inputs?: Record<string, unknown>;
38
- }): Promise<Run>;
39
- handleChainError(error: Error, runId: string, _parentRunId?: string, _tags?: string[], kwargs?: {
40
- inputs?: Record<string, unknown>;
41
- }): Promise<Run>;
42
- handleToolStart(tool: Serialized, input: string, runId: string, parentRunId?: string, tags?: string[], metadata?: KVMap, name?: string): Promise<Run>;
43
- handleToolEnd(output: string, runId: string): Promise<Run>;
44
- handleToolError(error: Error, runId: string): Promise<Run>;
45
- handleAgentAction(action: AgentAction, runId: string): Promise<void>;
46
- handleAgentEnd(action: AgentFinish, runId: string): Promise<void>;
47
- handleRetrieverStart(retriever: Serialized, query: string, runId: string, parentRunId?: string, tags?: string[], metadata?: KVMap, name?: string): Promise<Run>;
48
- handleRetrieverEnd(documents: Document<Record<string, unknown>>[], runId: string): Promise<Run>;
49
- handleRetrieverError(error: Error, runId: string): Promise<Run>;
50
- handleText(text: string, runId: string): Promise<void>;
51
- handleLLMNewToken(token: string, idx: NewTokenIndices, runId: string, _parentRunId?: string, _tags?: string[], fields?: HandleLLMNewTokenCallbackFields): Promise<Run>;
52
- onRunCreate?(run: Run): void | Promise<void>;
53
- onRunUpdate?(run: Run): void | Promise<void>;
54
- onLLMStart?(run: Run): void | Promise<void>;
55
- onLLMEnd?(run: Run): void | Promise<void>;
56
- onLLMError?(run: Run): void | Promise<void>;
57
- onChainStart?(run: Run): void | Promise<void>;
58
- onChainEnd?(run: Run): void | Promise<void>;
59
- onChainError?(run: Run): void | Promise<void>;
60
- onToolStart?(run: Run): void | Promise<void>;
61
- onToolEnd?(run: Run): void | Promise<void>;
62
- onToolError?(run: Run): void | Promise<void>;
63
- onAgentAction?(run: Run): void | Promise<void>;
64
- onAgentEnd?(run: Run): void | Promise<void>;
65
- onRetrieverStart?(run: Run): void | Promise<void>;
66
- onRetrieverEnd?(run: Run): void | Promise<void>;
67
- onRetrieverError?(run: Run): void | Promise<void>;
68
- onText?(run: Run): void | Promise<void>;
69
- onLLMNewToken?(run: Run, token: string): void | Promise<void>;
70
- }
1
+ export * from "langchain-core/callbacks/tracers/base";