langsmith 0.3.59 → 0.3.61

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.
@@ -4,17 +4,18 @@ exports.wrapAISDK = void 0;
4
4
  /* eslint-disable import/no-extraneous-dependencies */
5
5
  const middleware_js_1 = require("./middleware.cjs");
6
6
  const traceable_js_1 = require("../../traceable.cjs");
7
- const _wrapTools = (tools) => {
7
+ const _wrapTools = (tools, lsConfig) => {
8
8
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
9
9
  const wrappedTools = {};
10
10
  if (tools) {
11
11
  for (const [key, tool] of Object.entries(tools)) {
12
- wrappedTools[key] = tool;
13
- if (tool != null &&
14
- typeof tool === "object" &&
15
- "execute" in tool &&
16
- typeof tool.execute === "function") {
17
- wrappedTools[key].execute = (0, traceable_js_1.traceable)(tool.execute.bind(tool), {
12
+ wrappedTools[key] = { ...tool };
13
+ if (wrappedTools[key] != null &&
14
+ typeof wrappedTools[key] === "object" &&
15
+ "execute" in wrappedTools[key] &&
16
+ typeof wrappedTools[key].execute === "function") {
17
+ wrappedTools[key].execute = (0, traceable_js_1.traceable)(wrappedTools[key].execute.bind(wrappedTools[key]), {
18
+ ...lsConfig,
18
19
  name: key,
19
20
  run_type: "tool",
20
21
  });
@@ -73,6 +74,7 @@ const _formatTracedInputs = (params) => {
73
74
  * @returns returns.streamObject - Wrapped streamObject function that traces calls to LangSmith
74
75
  */
75
76
  const wrapAISDK = ({ wrapLanguageModel, generateText, streamText, streamObject, generateObject, }, lsConfig) => {
77
+ const { id, name, parent_run_id, start_time, end_time, attachments, dotted_order, ...inheritedConfig } = lsConfig ?? {};
76
78
  /**
77
79
  * Wrapped version of AI SDK 5's generateText with LangSmith tracing.
78
80
  *
@@ -98,11 +100,12 @@ const wrapAISDK = ({ wrapLanguageModel, generateText, streamText, streamObject,
98
100
  middleware: (0, middleware_js_1.LangSmithMiddleware)({
99
101
  name: _getModelDisplayName(params.model),
100
102
  modelId: params.model.modelId,
103
+ lsConfig: inheritedConfig,
101
104
  }),
102
105
  });
103
106
  return generateText({
104
107
  ...params,
105
- tools: _wrapTools(params.tools),
108
+ tools: _wrapTools(params.tools, inheritedConfig),
106
109
  model: wrappedModel,
107
110
  });
108
111
  }, {
@@ -161,6 +164,7 @@ const wrapAISDK = ({ wrapLanguageModel, generateText, streamText, streamObject,
161
164
  middleware: (0, middleware_js_1.LangSmithMiddleware)({
162
165
  name: _getModelDisplayName(params.model),
163
166
  modelId: _getModelId(params.model),
167
+ lsConfig: inheritedConfig,
164
168
  }),
165
169
  });
166
170
  return generateObject({
@@ -210,11 +214,12 @@ const wrapAISDK = ({ wrapLanguageModel, generateText, streamText, streamObject,
210
214
  middleware: (0, middleware_js_1.LangSmithMiddleware)({
211
215
  name: _getModelDisplayName(params.model),
212
216
  modelId: _getModelId(params.model),
217
+ lsConfig: inheritedConfig,
213
218
  }),
214
219
  });
215
220
  return streamText({
216
221
  ...params,
217
- tools: _wrapTools(params.tools),
222
+ tools: _wrapTools(params.tools, inheritedConfig),
218
223
  model: wrappedModel,
219
224
  });
220
225
  }, {
@@ -267,6 +272,7 @@ const wrapAISDK = ({ wrapLanguageModel, generateText, streamText, streamObject,
267
272
  middleware: (0, middleware_js_1.LangSmithMiddleware)({
268
273
  name: _getModelDisplayName(params.model),
269
274
  modelId: _getModelId(params.model),
275
+ lsConfig: inheritedConfig,
270
276
  }),
271
277
  });
272
278
  return streamObject({
@@ -21,7 +21,7 @@ declare const wrapAISDK: <WrapLanguageModelType extends (...args: any[]) => any,
21
21
  streamText: StreamTextType;
22
22
  streamObject: StreamObjectType;
23
23
  generateObject: GenerateObjectType;
24
- }, lsConfig?: Partial<Omit<RunTreeConfig, "inputs" | "outputs" | "run_type">>) => {
24
+ }, lsConfig?: Partial<Omit<RunTreeConfig, "inputs" | "outputs" | "run_type" | "child_runs" | "parent_run" | "error" | "serialized">>) => {
25
25
  generateText: (params: Parameters<GenerateTextType>[0]) => Promise<ReturnType<GenerateTextType>>;
26
26
  generateObject: (params: Parameters<GenerateObjectType>[0]) => Promise<ReturnType<GenerateObjectType>>;
27
27
  streamText: (params: Parameters<StreamTextType>[0]) => Promise<ReturnType<StreamTextType>>;
@@ -1,17 +1,18 @@
1
1
  /* eslint-disable import/no-extraneous-dependencies */
2
2
  import { LangSmithMiddleware, populateToolCallsForTracing, } from "./middleware.js";
3
3
  import { traceable } from "../../traceable.js";
4
- const _wrapTools = (tools) => {
4
+ const _wrapTools = (tools, lsConfig) => {
5
5
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
6
6
  const wrappedTools = {};
7
7
  if (tools) {
8
8
  for (const [key, tool] of Object.entries(tools)) {
9
- wrappedTools[key] = tool;
10
- if (tool != null &&
11
- typeof tool === "object" &&
12
- "execute" in tool &&
13
- typeof tool.execute === "function") {
14
- wrappedTools[key].execute = traceable(tool.execute.bind(tool), {
9
+ wrappedTools[key] = { ...tool };
10
+ if (wrappedTools[key] != null &&
11
+ typeof wrappedTools[key] === "object" &&
12
+ "execute" in wrappedTools[key] &&
13
+ typeof wrappedTools[key].execute === "function") {
14
+ wrappedTools[key].execute = traceable(wrappedTools[key].execute.bind(wrappedTools[key]), {
15
+ ...lsConfig,
15
16
  name: key,
16
17
  run_type: "tool",
17
18
  });
@@ -70,6 +71,7 @@ const _formatTracedInputs = (params) => {
70
71
  * @returns returns.streamObject - Wrapped streamObject function that traces calls to LangSmith
71
72
  */
72
73
  const wrapAISDK = ({ wrapLanguageModel, generateText, streamText, streamObject, generateObject, }, lsConfig) => {
74
+ const { id, name, parent_run_id, start_time, end_time, attachments, dotted_order, ...inheritedConfig } = lsConfig ?? {};
73
75
  /**
74
76
  * Wrapped version of AI SDK 5's generateText with LangSmith tracing.
75
77
  *
@@ -95,11 +97,12 @@ const wrapAISDK = ({ wrapLanguageModel, generateText, streamText, streamObject,
95
97
  middleware: LangSmithMiddleware({
96
98
  name: _getModelDisplayName(params.model),
97
99
  modelId: params.model.modelId,
100
+ lsConfig: inheritedConfig,
98
101
  }),
99
102
  });
100
103
  return generateText({
101
104
  ...params,
102
- tools: _wrapTools(params.tools),
105
+ tools: _wrapTools(params.tools, inheritedConfig),
103
106
  model: wrappedModel,
104
107
  });
105
108
  }, {
@@ -158,6 +161,7 @@ const wrapAISDK = ({ wrapLanguageModel, generateText, streamText, streamObject,
158
161
  middleware: LangSmithMiddleware({
159
162
  name: _getModelDisplayName(params.model),
160
163
  modelId: _getModelId(params.model),
164
+ lsConfig: inheritedConfig,
161
165
  }),
162
166
  });
163
167
  return generateObject({
@@ -207,11 +211,12 @@ const wrapAISDK = ({ wrapLanguageModel, generateText, streamText, streamObject,
207
211
  middleware: LangSmithMiddleware({
208
212
  name: _getModelDisplayName(params.model),
209
213
  modelId: _getModelId(params.model),
214
+ lsConfig: inheritedConfig,
210
215
  }),
211
216
  });
212
217
  return streamText({
213
218
  ...params,
214
- tools: _wrapTools(params.tools),
219
+ tools: _wrapTools(params.tools, inheritedConfig),
215
220
  model: wrappedModel,
216
221
  });
217
222
  }, {
@@ -264,6 +269,7 @@ const wrapAISDK = ({ wrapLanguageModel, generateText, streamText, streamObject,
264
269
  middleware: LangSmithMiddleware({
265
270
  name: _getModelDisplayName(params.model),
266
271
  modelId: _getModelId(params.model),
272
+ lsConfig: inheritedConfig,
267
273
  }),
268
274
  });
269
275
  return streamObject({
package/dist/index.cjs CHANGED
@@ -10,4 +10,4 @@ Object.defineProperty(exports, "overrideFetchImplementation", { enumerable: true
10
10
  var project_js_1 = require("./utils/project.cjs");
11
11
  Object.defineProperty(exports, "getDefaultProjectName", { enumerable: true, get: function () { return project_js_1.getDefaultProjectName; } });
12
12
  // Update using yarn bump-version
13
- exports.__version__ = "0.3.59";
13
+ exports.__version__ = "0.3.61";
package/dist/index.d.ts CHANGED
@@ -3,4 +3,4 @@ export type { Dataset, Example, TracerSession, Run, Feedback, RetrieverOutput, }
3
3
  export { RunTree, type RunTreeConfig } from "./run_trees.js";
4
4
  export { overrideFetchImplementation } from "./singletons/fetch.js";
5
5
  export { getDefaultProjectName } from "./utils/project.js";
6
- export declare const __version__ = "0.3.59";
6
+ export declare const __version__ = "0.3.61";
package/dist/index.js CHANGED
@@ -3,4 +3,4 @@ export { RunTree } from "./run_trees.js";
3
3
  export { overrideFetchImplementation } from "./singletons/fetch.js";
4
4
  export { getDefaultProjectName } from "./utils/project.js";
5
5
  // Update using yarn bump-version
6
- export const __version__ = "0.3.59";
6
+ export const __version__ = "0.3.61";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "langsmith",
3
- "version": "0.3.59",
3
+ "version": "0.3.61",
4
4
  "description": "Client library to connect to the LangSmith LLM Tracing and Evaluation Platform.",
5
5
  "packageManager": "yarn@1.22.19",
6
6
  "files": [