langwatch 0.2.0 → 0.3.0-prerelease.2
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/LICENSE +7 -0
- package/README.md +268 -1
- package/dist/chunk-4BZATFKJ.mjs +181 -0
- package/dist/chunk-4BZATFKJ.mjs.map +1 -0
- package/dist/chunk-CSC3CMIT.mjs +118 -0
- package/dist/chunk-CSC3CMIT.mjs.map +1 -0
- package/dist/chunk-F63YKTXA.mjs +47 -0
- package/dist/chunk-F63YKTXA.mjs.map +1 -0
- package/dist/chunk-G3AUABT7.js +4 -0
- package/dist/chunk-G3AUABT7.js.map +1 -0
- package/dist/chunk-HPC6Z7J4.js +118 -0
- package/dist/chunk-HPC6Z7J4.js.map +1 -0
- package/dist/chunk-KGDAENGD.js +50 -0
- package/dist/chunk-KGDAENGD.js.map +1 -0
- package/dist/chunk-LD74LVRU.js +47 -0
- package/dist/chunk-LD74LVRU.js.map +1 -0
- package/dist/chunk-OM7VY3XT.mjs +4 -0
- package/dist/chunk-PCQVQ7SB.js +45 -0
- package/dist/chunk-PCQVQ7SB.js.map +1 -0
- package/dist/chunk-PMBEK6YE.mjs +424 -0
- package/dist/chunk-PMBEK6YE.mjs.map +1 -0
- package/dist/chunk-PR3JDWC3.mjs +50 -0
- package/dist/chunk-PR3JDWC3.mjs.map +1 -0
- package/dist/chunk-PTJ6AAI7.js +360 -0
- package/dist/chunk-PTJ6AAI7.js.map +1 -0
- package/dist/chunk-QEWDG5QE.mjs +45 -0
- package/dist/chunk-QEWDG5QE.mjs.map +1 -0
- package/dist/chunk-REUCVT7A.mjs +39 -0
- package/dist/chunk-REUCVT7A.mjs.map +1 -0
- package/dist/chunk-SVJ7SCGB.js +424 -0
- package/dist/chunk-SVJ7SCGB.js.map +1 -0
- package/dist/chunk-VJSOCNPA.js +181 -0
- package/dist/chunk-VJSOCNPA.js.map +1 -0
- package/dist/chunk-WM2GRSRW.js +39 -0
- package/dist/chunk-WM2GRSRW.js.map +1 -0
- package/dist/chunk-Z5J5UI5E.mjs +360 -0
- package/dist/chunk-Z5J5UI5E.mjs.map +1 -0
- package/dist/client-B2HqIKg6.d.ts +51 -0
- package/dist/client-XyCqclCi.d.mts +51 -0
- package/dist/client-browser.d.mts +8 -0
- package/dist/client-browser.d.ts +8 -0
- package/dist/client-browser.js +83 -0
- package/dist/client-browser.js.map +1 -0
- package/dist/client-browser.mjs +83 -0
- package/dist/client-browser.mjs.map +1 -0
- package/dist/client-node.d.mts +8 -0
- package/dist/client-node.d.ts +8 -0
- package/dist/client-node.js +90 -0
- package/dist/client-node.js.map +1 -0
- package/dist/client-node.mjs +90 -0
- package/dist/client-node.mjs.map +1 -0
- package/dist/evaluation/index.d.mts +897 -0
- package/dist/evaluation/index.d.ts +897 -0
- package/dist/evaluation/index.js +13 -0
- package/dist/evaluation/index.js.map +1 -0
- package/dist/evaluation/index.mjs +13 -0
- package/dist/evaluation/index.mjs.map +1 -0
- package/dist/filterable-batch-span-processor-zO5kcjBY.d.mts +64 -0
- package/dist/filterable-batch-span-processor-zO5kcjBY.d.ts +64 -0
- package/dist/index.d.mts +45 -1027
- package/dist/index.d.ts +45 -1027
- package/dist/index.js +11 -27291
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +23 -956
- package/dist/index.mjs.map +1 -1
- package/dist/observability/index.d.mts +260 -0
- package/dist/observability/index.d.ts +260 -0
- package/dist/observability/index.js +20 -0
- package/dist/observability/index.js.map +1 -0
- package/dist/observability/index.mjs +20 -0
- package/dist/observability/index.mjs.map +1 -0
- package/dist/observability/instrumentation/langchain/index.d.mts +40 -0
- package/dist/observability/instrumentation/langchain/index.d.ts +40 -0
- package/dist/observability/instrumentation/langchain/index.js +666 -0
- package/dist/observability/instrumentation/langchain/index.js.map +1 -0
- package/dist/observability/instrumentation/langchain/index.mjs +666 -0
- package/dist/observability/instrumentation/langchain/index.mjs.map +1 -0
- package/dist/prompt/index.d.mts +10 -0
- package/dist/prompt/index.d.ts +10 -0
- package/dist/prompt/index.js +18 -0
- package/dist/prompt/index.js.map +1 -0
- package/dist/prompt/index.mjs +18 -0
- package/dist/prompt/index.mjs.map +1 -0
- package/dist/prompt-BXJWdbQp.d.mts +1967 -0
- package/dist/prompt-BXJWdbQp.d.ts +1967 -0
- package/dist/record-evaluation-CmxMXa-3.d.mts +25 -0
- package/dist/record-evaluation-CmxMXa-3.d.ts +25 -0
- package/dist/trace-D-bZOuqb.d.mts +622 -0
- package/dist/trace-G2312klE.d.ts +622 -0
- package/package.json +86 -37
- package/.eslintrc.cjs +0 -37
- package/copy-types.sh +0 -17
- package/dist/chunk-LKD2K67J.mjs +0 -717
- package/dist/chunk-LKD2K67J.mjs.map +0 -1
- package/dist/utils-Cv-rUjJ1.d.mts +0 -313
- package/dist/utils-Cv-rUjJ1.d.ts +0 -313
- package/dist/utils.d.mts +0 -2
- package/dist/utils.d.ts +0 -2
- package/dist/utils.js +0 -709
- package/dist/utils.js.map +0 -1
- package/dist/utils.mjs +0 -11
- package/example/.env.example +0 -12
- package/example/.eslintrc.json +0 -26
- package/example/LICENSE +0 -13
- package/example/README.md +0 -12
- package/example/app/(chat)/chat/[id]/page.tsx +0 -60
- package/example/app/(chat)/layout.tsx +0 -14
- package/example/app/(chat)/page.tsx +0 -27
- package/example/app/actions.ts +0 -156
- package/example/app/globals.css +0 -76
- package/example/app/guardrails/page.tsx +0 -26
- package/example/app/langchain/page.tsx +0 -27
- package/example/app/langchain-rag/page.tsx +0 -28
- package/example/app/late-update/page.tsx +0 -27
- package/example/app/layout.tsx +0 -64
- package/example/app/login/actions.ts +0 -71
- package/example/app/login/page.tsx +0 -18
- package/example/app/manual/page.tsx +0 -27
- package/example/app/new/page.tsx +0 -5
- package/example/app/opengraph-image.png +0 -0
- package/example/app/share/[id]/page.tsx +0 -58
- package/example/app/signup/actions.ts +0 -111
- package/example/app/signup/page.tsx +0 -18
- package/example/app/twitter-image.png +0 -0
- package/example/auth.config.ts +0 -42
- package/example/auth.ts +0 -45
- package/example/components/button-scroll-to-bottom.tsx +0 -36
- package/example/components/chat-history.tsx +0 -49
- package/example/components/chat-list.tsx +0 -52
- package/example/components/chat-message-actions.tsx +0 -40
- package/example/components/chat-message.tsx +0 -80
- package/example/components/chat-panel.tsx +0 -139
- package/example/components/chat-share-dialog.tsx +0 -95
- package/example/components/chat.tsx +0 -84
- package/example/components/clear-history.tsx +0 -75
- package/example/components/empty-screen.tsx +0 -38
- package/example/components/external-link.tsx +0 -29
- package/example/components/footer.tsx +0 -19
- package/example/components/header.tsx +0 -114
- package/example/components/login-button.tsx +0 -42
- package/example/components/login-form.tsx +0 -97
- package/example/components/markdown.tsx +0 -9
- package/example/components/prompt-form.tsx +0 -115
- package/example/components/providers.tsx +0 -17
- package/example/components/sidebar-actions.tsx +0 -125
- package/example/components/sidebar-desktop.tsx +0 -19
- package/example/components/sidebar-footer.tsx +0 -16
- package/example/components/sidebar-item.tsx +0 -124
- package/example/components/sidebar-items.tsx +0 -42
- package/example/components/sidebar-list.tsx +0 -38
- package/example/components/sidebar-mobile.tsx +0 -31
- package/example/components/sidebar-toggle.tsx +0 -24
- package/example/components/sidebar.tsx +0 -21
- package/example/components/signup-form.tsx +0 -95
- package/example/components/stocks/events-skeleton.tsx +0 -31
- package/example/components/stocks/events.tsx +0 -30
- package/example/components/stocks/index.tsx +0 -36
- package/example/components/stocks/message.tsx +0 -134
- package/example/components/stocks/spinner.tsx +0 -16
- package/example/components/stocks/stock-purchase.tsx +0 -146
- package/example/components/stocks/stock-skeleton.tsx +0 -22
- package/example/components/stocks/stock.tsx +0 -210
- package/example/components/stocks/stocks-skeleton.tsx +0 -9
- package/example/components/stocks/stocks.tsx +0 -67
- package/example/components/tailwind-indicator.tsx +0 -14
- package/example/components/theme-toggle.tsx +0 -31
- package/example/components/ui/alert-dialog.tsx +0 -141
- package/example/components/ui/badge.tsx +0 -36
- package/example/components/ui/button.tsx +0 -57
- package/example/components/ui/codeblock.tsx +0 -148
- package/example/components/ui/dialog.tsx +0 -122
- package/example/components/ui/dropdown-menu.tsx +0 -205
- package/example/components/ui/icons.tsx +0 -507
- package/example/components/ui/input.tsx +0 -25
- package/example/components/ui/label.tsx +0 -26
- package/example/components/ui/select.tsx +0 -164
- package/example/components/ui/separator.tsx +0 -31
- package/example/components/ui/sheet.tsx +0 -140
- package/example/components/ui/sonner.tsx +0 -31
- package/example/components/ui/switch.tsx +0 -29
- package/example/components/ui/textarea.tsx +0 -24
- package/example/components/ui/tooltip.tsx +0 -30
- package/example/components/user-menu.tsx +0 -53
- package/example/components.json +0 -17
- package/example/instrumentation.ts +0 -11
- package/example/lib/chat/guardrails.tsx +0 -181
- package/example/lib/chat/langchain-rag.tsx +0 -191
- package/example/lib/chat/langchain.tsx +0 -112
- package/example/lib/chat/late-update.tsx +0 -208
- package/example/lib/chat/manual.tsx +0 -605
- package/example/lib/chat/vercel-ai.tsx +0 -576
- package/example/lib/hooks/use-copy-to-clipboard.tsx +0 -33
- package/example/lib/hooks/use-enter-submit.tsx +0 -23
- package/example/lib/hooks/use-local-storage.ts +0 -24
- package/example/lib/hooks/use-scroll-anchor.tsx +0 -86
- package/example/lib/hooks/use-sidebar.tsx +0 -60
- package/example/lib/hooks/use-streamable-text.ts +0 -25
- package/example/lib/types.ts +0 -41
- package/example/lib/utils.ts +0 -89
- package/example/middleware.ts +0 -8
- package/example/next-env.d.ts +0 -5
- package/example/next.config.js +0 -16
- package/example/package-lock.json +0 -10917
- package/example/package.json +0 -84
- package/example/pnpm-lock.yaml +0 -5712
- package/example/postcss.config.js +0 -6
- package/example/prettier.config.cjs +0 -34
- package/example/public/apple-touch-icon.png +0 -0
- package/example/public/favicon-16x16.png +0 -0
- package/example/public/favicon.ico +0 -0
- package/example/public/next.svg +0 -1
- package/example/public/thirteen.svg +0 -1
- package/example/public/vercel.svg +0 -1
- package/example/tailwind.config.ts +0 -81
- package/example/tsconfig.json +0 -35
- package/src/LangWatchExporter.ts +0 -96
- package/src/evaluations.ts +0 -219
- package/src/index.test.ts +0 -402
- package/src/index.ts +0 -596
- package/src/langchain.ts +0 -557
- package/src/server/types/.gitkeep +0 -0
- package/src/typeUtils.ts +0 -89
- package/src/types.ts +0 -82
- package/src/utils.ts +0 -205
- package/ts-to-zod.config.js +0 -24
- package/tsconfig.json +0 -32
- package/tsup.config.ts +0 -10
- package/vitest.config.ts +0 -8
- /package/dist/{utils.mjs.map → chunk-OM7VY3XT.mjs.map} +0 -0
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
+
|
|
3
|
+
var _chunkHPC6Z7J4js = require('../chunk-HPC6Z7J4.js');
|
|
4
|
+
require('../chunk-PCQVQ7SB.js');
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
var _chunkSVJ7SCGBjs = require('../chunk-SVJ7SCGB.js');
|
|
8
|
+
require('../chunk-VJSOCNPA.js');
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
exports.recordEvaluation = _chunkSVJ7SCGBjs.recordEvaluation; exports.runEvaluation = _chunkHPC6Z7J4js.runEvaluation;
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/evaluation/index.js"],"names":[],"mappings":"AAAA;AACE;AACF,uDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACF,uDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACF,qHAAC","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/evaluation/index.js"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import {
|
|
2
|
+
runEvaluation
|
|
3
|
+
} from "../chunk-CSC3CMIT.mjs";
|
|
4
|
+
import "../chunk-QEWDG5QE.mjs";
|
|
5
|
+
import {
|
|
6
|
+
recordEvaluation
|
|
7
|
+
} from "../chunk-PMBEK6YE.mjs";
|
|
8
|
+
import "../chunk-4BZATFKJ.mjs";
|
|
9
|
+
export {
|
|
10
|
+
recordEvaluation,
|
|
11
|
+
runEvaluation
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { BatchSpanProcessor, SpanExporter, ReadableSpan } from '@opentelemetry/sdk-trace-base';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Filterable Batch Span Exporter for OpenTelemetry
|
|
5
|
+
*
|
|
6
|
+
* This module provides a BatchSpanProcessor subclass that allows filtering of spans before export
|
|
7
|
+
* based on configurable rules. Spans matching any exclude rule are dropped and not exported.
|
|
8
|
+
*
|
|
9
|
+
* @module filterable-batch-span-exporter
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* A rule for excluding spans from export based on their name or instrumentation scope name.
|
|
14
|
+
*
|
|
15
|
+
* @property fieldName - The span field to match against ('span_name' or 'instrumentation_scope_name').
|
|
16
|
+
* @property matchValue - The value to match against the field.
|
|
17
|
+
* @property matchOperation - The operation to use for matching ('includes', 'exact_match', 'starts_with', 'ends_with').
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* const rule: SpanProcessingExcludeRule = {
|
|
21
|
+
* fieldName: 'span_name',
|
|
22
|
+
* matchValue: 'heartbeat',
|
|
23
|
+
* matchOperation: 'exact_match',
|
|
24
|
+
* };
|
|
25
|
+
*/
|
|
26
|
+
interface SpanProcessingExcludeRule {
|
|
27
|
+
fieldName: "span_name" | "instrumentation_scope_name";
|
|
28
|
+
matchValue: string;
|
|
29
|
+
matchOperation: "includes" | "exact_match" | "starts_with" | "ends_with";
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* A BatchSpanProcessor that filters out spans matching any of the provided exclude rules before export.
|
|
33
|
+
*
|
|
34
|
+
* This is useful for dropping noisy or irrelevant spans (e.g., health checks, heartbeats) from being exported to your tracing backend.
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* import { FilterableBatchSpanProcessor } from './filterable-batch-span-exporter';
|
|
38
|
+
* import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';
|
|
39
|
+
*
|
|
40
|
+
* const exporter = new OTLPTraceExporter({ url: '...' });
|
|
41
|
+
* const filters = [
|
|
42
|
+
* { fieldName: 'span_name', matchValue: 'heartbeat', matchOperation: 'exact_match' },
|
|
43
|
+
* { fieldName: 'instrumentation_scope_name', matchValue: 'internal', matchOperation: 'starts_with' },
|
|
44
|
+
* ];
|
|
45
|
+
* provider.addSpanProcessor(new FilterableBatchSpanProcessor(exporter, filters));
|
|
46
|
+
*/
|
|
47
|
+
declare class FilterableBatchSpanProcessor extends BatchSpanProcessor {
|
|
48
|
+
private readonly _filters;
|
|
49
|
+
/**
|
|
50
|
+
* Create a new FilterableBatchSpanProcessor.
|
|
51
|
+
*
|
|
52
|
+
* @param exporter - The underlying SpanExporter to use for exporting spans.
|
|
53
|
+
* @param filters - An array of rules for excluding spans from export.
|
|
54
|
+
*/
|
|
55
|
+
constructor(exporter: SpanExporter, filters: SpanProcessingExcludeRule[]);
|
|
56
|
+
/**
|
|
57
|
+
* Called when a span ends. If the span matches any exclude rule, it is dropped and not exported.
|
|
58
|
+
*
|
|
59
|
+
* @param span - The ReadableSpan that has ended.
|
|
60
|
+
*/
|
|
61
|
+
onEnd(span: ReadableSpan): void;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export { FilterableBatchSpanProcessor as F, type SpanProcessingExcludeRule as S };
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { BatchSpanProcessor, SpanExporter, ReadableSpan } from '@opentelemetry/sdk-trace-base';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Filterable Batch Span Exporter for OpenTelemetry
|
|
5
|
+
*
|
|
6
|
+
* This module provides a BatchSpanProcessor subclass that allows filtering of spans before export
|
|
7
|
+
* based on configurable rules. Spans matching any exclude rule are dropped and not exported.
|
|
8
|
+
*
|
|
9
|
+
* @module filterable-batch-span-exporter
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* A rule for excluding spans from export based on their name or instrumentation scope name.
|
|
14
|
+
*
|
|
15
|
+
* @property fieldName - The span field to match against ('span_name' or 'instrumentation_scope_name').
|
|
16
|
+
* @property matchValue - The value to match against the field.
|
|
17
|
+
* @property matchOperation - The operation to use for matching ('includes', 'exact_match', 'starts_with', 'ends_with').
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* const rule: SpanProcessingExcludeRule = {
|
|
21
|
+
* fieldName: 'span_name',
|
|
22
|
+
* matchValue: 'heartbeat',
|
|
23
|
+
* matchOperation: 'exact_match',
|
|
24
|
+
* };
|
|
25
|
+
*/
|
|
26
|
+
interface SpanProcessingExcludeRule {
|
|
27
|
+
fieldName: "span_name" | "instrumentation_scope_name";
|
|
28
|
+
matchValue: string;
|
|
29
|
+
matchOperation: "includes" | "exact_match" | "starts_with" | "ends_with";
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* A BatchSpanProcessor that filters out spans matching any of the provided exclude rules before export.
|
|
33
|
+
*
|
|
34
|
+
* This is useful for dropping noisy or irrelevant spans (e.g., health checks, heartbeats) from being exported to your tracing backend.
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* import { FilterableBatchSpanProcessor } from './filterable-batch-span-exporter';
|
|
38
|
+
* import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';
|
|
39
|
+
*
|
|
40
|
+
* const exporter = new OTLPTraceExporter({ url: '...' });
|
|
41
|
+
* const filters = [
|
|
42
|
+
* { fieldName: 'span_name', matchValue: 'heartbeat', matchOperation: 'exact_match' },
|
|
43
|
+
* { fieldName: 'instrumentation_scope_name', matchValue: 'internal', matchOperation: 'starts_with' },
|
|
44
|
+
* ];
|
|
45
|
+
* provider.addSpanProcessor(new FilterableBatchSpanProcessor(exporter, filters));
|
|
46
|
+
*/
|
|
47
|
+
declare class FilterableBatchSpanProcessor extends BatchSpanProcessor {
|
|
48
|
+
private readonly _filters;
|
|
49
|
+
/**
|
|
50
|
+
* Create a new FilterableBatchSpanProcessor.
|
|
51
|
+
*
|
|
52
|
+
* @param exporter - The underlying SpanExporter to use for exporting spans.
|
|
53
|
+
* @param filters - An array of rules for excluding spans from export.
|
|
54
|
+
*/
|
|
55
|
+
constructor(exporter: SpanExporter, filters: SpanProcessingExcludeRule[]);
|
|
56
|
+
/**
|
|
57
|
+
* Called when a span ends. If the span matches any exclude rule, it is dropped and not exported.
|
|
58
|
+
*
|
|
59
|
+
* @param span - The ReadableSpan that has ended.
|
|
60
|
+
*/
|
|
61
|
+
onEnd(span: ReadableSpan): void;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export { FilterableBatchSpanProcessor as F, type SpanProcessingExcludeRule as S };
|