langsmith 0.3.54 → 0.3.55
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/experimental/otel/constants.cjs +2 -1
- package/dist/experimental/otel/constants.d.ts +1 -0
- package/dist/experimental/otel/constants.js +1 -0
- package/dist/experimental/otel/processor.cjs +2 -0
- package/dist/experimental/otel/processor.js +3 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/vercel.cjs +9 -0
- package/dist/vercel.js +9 -0
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AI_SDK_TOOL_OPERATIONS = exports.AI_SDK_LLM_OPERATIONS = exports.GEN_AI_CHOICE = exports.GEN_AI_ASSISTANT_MESSAGE = exports.GEN_AI_USER_MESSAGE = exports.GEN_AI_SYSTEM_MESSAGE = exports.LANGSMITH_IS_ROOT = exports.LANGSMITH_TRACEABLE = exports.LANGSMITH_REFERENCE_EXAMPLE_ID = exports.LANGSMITH_USAGE_METADATA = exports.LANGSMITH_PARENT_RUN_ID = exports.LANGSMITH_DOTTED_ORDER = exports.LANGSMITH_TRACE_ID = exports.LANGSMITH_RUN_ID = exports.LANGSMITH_REQUEST_HEADERS = exports.LANGSMITH_REQUEST_STREAMING = exports.LANGSMITH_RUNTIME = exports.LANGSMITH_TAGS = exports.LANGSMITH_METADATA = exports.LANGSMITH_NAME = exports.LANGSMITH_RUN_TYPE = exports.LANGSMITH_SESSION_NAME = exports.LANGSMITH_SESSION_ID = exports.GEN_AI_USAGE_OUTPUT_TOKEN_DETAILS = exports.GEN_AI_USAGE_INPUT_TOKEN_DETAILS = exports.GEN_AI_RESPONSE_SYSTEM_FINGERPRINT = exports.GEN_AI_RESPONSE_SERVICE_TIER = exports.GEN_AI_RESPONSE_ID = exports.GEN_AI_SERIALIZED_DOC = exports.GEN_AI_SERIALIZED_SIGNATURE = exports.GEN_AI_SERIALIZED_NAME = exports.GEN_AI_REQUEST_EXTRA_BODY = exports.GEN_AI_REQUEST_EXTRA_QUERY = exports.GENAI_COMPLETION = exports.GENAI_PROMPT = exports.GEN_AI_RESPONSE_FINISH_REASONS = exports.GEN_AI_REQUEST_PRESENCE_PENALTY = exports.GEN_AI_REQUEST_FREQUENCY_PENALTY = exports.GEN_AI_REQUEST_TOP_P = exports.GEN_AI_REQUEST_TEMPERATURE = exports.GEN_AI_REQUEST_MAX_TOKENS = exports.GEN_AI_USAGE_TOTAL_TOKENS = exports.GEN_AI_USAGE_OUTPUT_TOKENS = exports.GEN_AI_USAGE_INPUT_TOKENS = exports.GEN_AI_RESPONSE_MODEL = exports.GEN_AI_REQUEST_MODEL = exports.GEN_AI_SYSTEM = exports.GEN_AI_OPERATION_NAME = void 0;
|
|
3
|
+
exports.AI_SDK_TOOL_OPERATIONS = exports.AI_SDK_LLM_OPERATIONS = exports.GEN_AI_CHOICE = exports.GEN_AI_ASSISTANT_MESSAGE = exports.GEN_AI_USER_MESSAGE = exports.GEN_AI_SYSTEM_MESSAGE = exports.LANGSMITH_TRACEABLE_PARENT_OTEL_SPAN_ID = exports.LANGSMITH_IS_ROOT = exports.LANGSMITH_TRACEABLE = exports.LANGSMITH_REFERENCE_EXAMPLE_ID = exports.LANGSMITH_USAGE_METADATA = exports.LANGSMITH_PARENT_RUN_ID = exports.LANGSMITH_DOTTED_ORDER = exports.LANGSMITH_TRACE_ID = exports.LANGSMITH_RUN_ID = exports.LANGSMITH_REQUEST_HEADERS = exports.LANGSMITH_REQUEST_STREAMING = exports.LANGSMITH_RUNTIME = exports.LANGSMITH_TAGS = exports.LANGSMITH_METADATA = exports.LANGSMITH_NAME = exports.LANGSMITH_RUN_TYPE = exports.LANGSMITH_SESSION_NAME = exports.LANGSMITH_SESSION_ID = exports.GEN_AI_USAGE_OUTPUT_TOKEN_DETAILS = exports.GEN_AI_USAGE_INPUT_TOKEN_DETAILS = exports.GEN_AI_RESPONSE_SYSTEM_FINGERPRINT = exports.GEN_AI_RESPONSE_SERVICE_TIER = exports.GEN_AI_RESPONSE_ID = exports.GEN_AI_SERIALIZED_DOC = exports.GEN_AI_SERIALIZED_SIGNATURE = exports.GEN_AI_SERIALIZED_NAME = exports.GEN_AI_REQUEST_EXTRA_BODY = exports.GEN_AI_REQUEST_EXTRA_QUERY = exports.GENAI_COMPLETION = exports.GENAI_PROMPT = exports.GEN_AI_RESPONSE_FINISH_REASONS = exports.GEN_AI_REQUEST_PRESENCE_PENALTY = exports.GEN_AI_REQUEST_FREQUENCY_PENALTY = exports.GEN_AI_REQUEST_TOP_P = exports.GEN_AI_REQUEST_TEMPERATURE = exports.GEN_AI_REQUEST_MAX_TOKENS = exports.GEN_AI_USAGE_TOTAL_TOKENS = exports.GEN_AI_USAGE_OUTPUT_TOKENS = exports.GEN_AI_USAGE_INPUT_TOKENS = exports.GEN_AI_RESPONSE_MODEL = exports.GEN_AI_REQUEST_MODEL = exports.GEN_AI_SYSTEM = exports.GEN_AI_OPERATION_NAME = void 0;
|
|
4
4
|
// OpenTelemetry GenAI semantic convention attribute names
|
|
5
5
|
exports.GEN_AI_OPERATION_NAME = "gen_ai.operation.name";
|
|
6
6
|
exports.GEN_AI_SYSTEM = "gen_ai.system";
|
|
@@ -45,6 +45,7 @@ exports.LANGSMITH_USAGE_METADATA = "langsmith.usage_metadata";
|
|
|
45
45
|
exports.LANGSMITH_REFERENCE_EXAMPLE_ID = "langsmith.reference_example_id";
|
|
46
46
|
exports.LANGSMITH_TRACEABLE = "langsmith.traceable";
|
|
47
47
|
exports.LANGSMITH_IS_ROOT = "langsmith.is_root";
|
|
48
|
+
exports.LANGSMITH_TRACEABLE_PARENT_OTEL_SPAN_ID = "langsmith.traceable_parent_otel_span_id";
|
|
48
49
|
// GenAI event names
|
|
49
50
|
exports.GEN_AI_SYSTEM_MESSAGE = "gen_ai.system.message";
|
|
50
51
|
exports.GEN_AI_USER_MESSAGE = "gen_ai.user.message";
|
|
@@ -40,6 +40,7 @@ export declare const LANGSMITH_USAGE_METADATA = "langsmith.usage_metadata";
|
|
|
40
40
|
export declare const LANGSMITH_REFERENCE_EXAMPLE_ID = "langsmith.reference_example_id";
|
|
41
41
|
export declare const LANGSMITH_TRACEABLE = "langsmith.traceable";
|
|
42
42
|
export declare const LANGSMITH_IS_ROOT = "langsmith.is_root";
|
|
43
|
+
export declare const LANGSMITH_TRACEABLE_PARENT_OTEL_SPAN_ID = "langsmith.traceable_parent_otel_span_id";
|
|
43
44
|
export declare const GEN_AI_SYSTEM_MESSAGE = "gen_ai.system.message";
|
|
44
45
|
export declare const GEN_AI_USER_MESSAGE = "gen_ai.user.message";
|
|
45
46
|
export declare const GEN_AI_ASSISTANT_MESSAGE = "gen_ai.assistant.message";
|
|
@@ -42,6 +42,7 @@ export const LANGSMITH_USAGE_METADATA = "langsmith.usage_metadata";
|
|
|
42
42
|
export const LANGSMITH_REFERENCE_EXAMPLE_ID = "langsmith.reference_example_id";
|
|
43
43
|
export const LANGSMITH_TRACEABLE = "langsmith.traceable";
|
|
44
44
|
export const LANGSMITH_IS_ROOT = "langsmith.is_root";
|
|
45
|
+
export const LANGSMITH_TRACEABLE_PARENT_OTEL_SPAN_ID = "langsmith.traceable_parent_otel_span_id";
|
|
45
46
|
// GenAI event names
|
|
46
47
|
export const GEN_AI_SYSTEM_MESSAGE = "gen_ai.system.message";
|
|
47
48
|
export const GEN_AI_USER_MESSAGE = "gen_ai.user.message";
|
|
@@ -59,6 +59,8 @@ class LangSmithOTLPSpanProcessor extends sdk_trace_base_1.BatchSpanProcessor {
|
|
|
59
59
|
else {
|
|
60
60
|
span.attributes[constants_js_1.LANGSMITH_PARENT_RUN_ID] =
|
|
61
61
|
(0, utils_js_1.getUuidFromOtelSpanId)(traceableParentId);
|
|
62
|
+
span.attributes[constants_js_1.LANGSMITH_TRACEABLE_PARENT_OTEL_SPAN_ID] =
|
|
63
|
+
traceableParentId;
|
|
62
64
|
}
|
|
63
65
|
if (isTraceable) {
|
|
64
66
|
super.onStart(span, parentContext);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BatchSpanProcessor, } from "@opentelemetry/sdk-trace-base";
|
|
2
|
-
import { LANGSMITH_IS_ROOT, LANGSMITH_PARENT_RUN_ID, LANGSMITH_TRACEABLE, } from "./constants.js";
|
|
2
|
+
import { LANGSMITH_IS_ROOT, LANGSMITH_PARENT_RUN_ID, LANGSMITH_TRACEABLE, LANGSMITH_TRACEABLE_PARENT_OTEL_SPAN_ID, } from "./constants.js";
|
|
3
3
|
import { getUuidFromOtelSpanId } from "./utils.js";
|
|
4
4
|
import { RunTree } from "../../run_trees.js";
|
|
5
5
|
export function isTraceableSpan(span) {
|
|
@@ -55,6 +55,8 @@ export class LangSmithOTLPSpanProcessor extends BatchSpanProcessor {
|
|
|
55
55
|
else {
|
|
56
56
|
span.attributes[LANGSMITH_PARENT_RUN_ID] =
|
|
57
57
|
getUuidFromOtelSpanId(traceableParentId);
|
|
58
|
+
span.attributes[LANGSMITH_TRACEABLE_PARENT_OTEL_SPAN_ID] =
|
|
59
|
+
traceableParentId;
|
|
58
60
|
}
|
|
59
61
|
if (isTraceable) {
|
|
60
62
|
super.onStart(span, parentContext);
|
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.
|
|
13
|
+
exports.__version__ = "0.3.55";
|
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.
|
|
6
|
+
export declare const __version__ = "0.3.55";
|
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.
|
|
6
|
+
export const __version__ = "0.3.55";
|
package/dist/vercel.cjs
CHANGED
|
@@ -7,6 +7,7 @@ const uuid_1 = require("uuid");
|
|
|
7
7
|
const traceable_js_1 = require("./singletons/traceable.cjs");
|
|
8
8
|
const env_js_1 = require("./utils/env.cjs");
|
|
9
9
|
const env_js_2 = require("./env.cjs");
|
|
10
|
+
const constants_js_1 = require("./experimental/otel/constants.cjs");
|
|
10
11
|
// Attempt to convert CoreMessage to a LangChain-compatible format
|
|
11
12
|
// which allows us to render messages more nicely in LangSmith
|
|
12
13
|
function convertCoreToSmith(message) {
|
|
@@ -692,6 +693,14 @@ class AISDKExporter {
|
|
|
692
693
|
const { traceId, spanId } = span.spanContext();
|
|
693
694
|
const runId = (0, uuid_1.v5)(spanId, RUN_ID_NAMESPACE);
|
|
694
695
|
let parentId = getParentSpanId(span);
|
|
696
|
+
if (constants_js_1.LANGSMITH_IS_ROOT in span.attributes) {
|
|
697
|
+
parentId = undefined;
|
|
698
|
+
}
|
|
699
|
+
else if (constants_js_1.LANGSMITH_TRACEABLE_PARENT_OTEL_SPAN_ID in span.attributes &&
|
|
700
|
+
typeof span.attributes[constants_js_1.LANGSMITH_TRACEABLE_PARENT_OTEL_SPAN_ID] ===
|
|
701
|
+
"string") {
|
|
702
|
+
parentId = span.attributes[constants_js_1.LANGSMITH_TRACEABLE_PARENT_OTEL_SPAN_ID];
|
|
703
|
+
}
|
|
695
704
|
let parentRunId = parentId
|
|
696
705
|
? (0, uuid_1.v5)(parentId, RUN_ID_NAMESPACE)
|
|
697
706
|
: undefined;
|
package/dist/vercel.js
CHANGED
|
@@ -4,6 +4,7 @@ import { v5 as uuid5 } from "uuid";
|
|
|
4
4
|
import { getCurrentRunTree } from "./singletons/traceable.js";
|
|
5
5
|
import { getLangSmithEnvironmentVariable, getEnvironmentVariable, } from "./utils/env.js";
|
|
6
6
|
import { isTracingEnabled } from "./env.js";
|
|
7
|
+
import { LANGSMITH_IS_ROOT, LANGSMITH_TRACEABLE_PARENT_OTEL_SPAN_ID, } from "./experimental/otel/constants.js";
|
|
7
8
|
// Attempt to convert CoreMessage to a LangChain-compatible format
|
|
8
9
|
// which allows us to render messages more nicely in LangSmith
|
|
9
10
|
function convertCoreToSmith(message) {
|
|
@@ -688,6 +689,14 @@ export class AISDKExporter {
|
|
|
688
689
|
const { traceId, spanId } = span.spanContext();
|
|
689
690
|
const runId = uuid5(spanId, RUN_ID_NAMESPACE);
|
|
690
691
|
let parentId = getParentSpanId(span);
|
|
692
|
+
if (LANGSMITH_IS_ROOT in span.attributes) {
|
|
693
|
+
parentId = undefined;
|
|
694
|
+
}
|
|
695
|
+
else if (LANGSMITH_TRACEABLE_PARENT_OTEL_SPAN_ID in span.attributes &&
|
|
696
|
+
typeof span.attributes[LANGSMITH_TRACEABLE_PARENT_OTEL_SPAN_ID] ===
|
|
697
|
+
"string") {
|
|
698
|
+
parentId = span.attributes[LANGSMITH_TRACEABLE_PARENT_OTEL_SPAN_ID];
|
|
699
|
+
}
|
|
691
700
|
let parentRunId = parentId
|
|
692
701
|
? uuid5(parentId, RUN_ID_NAMESPACE)
|
|
693
702
|
: undefined;
|