@llm4ts/core 2.54.0 → 3.0.0
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/README.md +1 -1
- package/dist/Capability.d.ts +0 -9
- package/dist/Capability.d.ts.map +1 -1
- package/dist/Capability.js +0 -38
- package/dist/Capability.js.map +1 -1
- package/dist/Connector.d.ts +2 -3
- package/dist/Connector.d.ts.map +1 -1
- package/dist/Connector.js +0 -5
- package/dist/Connector.js.map +1 -1
- package/dist/ConnectorRegistry.d.ts +0 -3
- package/dist/ConnectorRegistry.d.ts.map +1 -1
- package/dist/ConnectorRegistry.js +0 -3
- package/dist/ConnectorRegistry.js.map +1 -1
- package/dist/HttpClient.d.ts +0 -2
- package/dist/HttpClient.d.ts.map +1 -1
- package/dist/HttpClient.js +0 -2
- package/dist/HttpClient.js.map +1 -1
- package/dist/LlmService.d.ts +1 -2
- package/dist/LlmService.d.ts.map +1 -1
- package/dist/LlmService.js.map +1 -1
- package/dist/Models.d.ts +0 -21
- package/dist/Models.d.ts.map +1 -1
- package/dist/Models.js +0 -19
- package/dist/Models.js.map +1 -1
- package/dist/Streaming.d.ts +4 -11
- package/dist/Streaming.d.ts.map +1 -1
- package/dist/Streaming.js +2 -29
- package/dist/Streaming.js.map +1 -1
- package/dist/providers/AnthropicModels.d.ts +0 -43
- package/dist/providers/AnthropicModels.d.ts.map +1 -1
- package/dist/providers/AnthropicModels.js +0 -39
- package/dist/providers/AnthropicModels.js.map +1 -1
- package/dist/providers/AnthropicProvider.d.ts +2 -3
- package/dist/providers/AnthropicProvider.d.ts.map +1 -1
- package/dist/providers/AnthropicProvider.js +2 -49
- package/dist/providers/AnthropicProvider.js.map +1 -1
- package/dist/providers/GeminiApiProvider.d.ts +2 -3
- package/dist/providers/GeminiApiProvider.d.ts.map +1 -1
- package/dist/providers/GeminiApiProvider.js +2 -44
- package/dist/providers/GeminiApiProvider.js.map +1 -1
- package/dist/providers/GeminiModels.d.ts +0 -48
- package/dist/providers/GeminiModels.d.ts.map +1 -1
- package/dist/providers/GeminiModels.js +0 -40
- package/dist/providers/GeminiModels.js.map +1 -1
- package/dist/providers/LmStudioProvider.d.ts.map +1 -1
- package/dist/providers/LmStudioProvider.js +1 -4
- package/dist/providers/LmStudioProvider.js.map +1 -1
- package/dist/providers/MlxLmProvider.d.ts.map +1 -1
- package/dist/providers/MlxLmProvider.js +1 -2
- package/dist/providers/MlxLmProvider.js.map +1 -1
- package/dist/providers/MockProvider.d.ts.map +1 -1
- package/dist/providers/MockProvider.js +1 -6
- package/dist/providers/MockProvider.js.map +1 -1
- package/dist/providers/OllamaProvider.d.ts.map +1 -1
- package/dist/providers/OllamaProvider.js +1 -4
- package/dist/providers/OllamaProvider.js.map +1 -1
- package/dist/providers/OpenAIModels.d.ts +0 -58
- package/dist/providers/OpenAIModels.d.ts.map +1 -1
- package/dist/providers/OpenAIModels.js +0 -51
- package/dist/providers/OpenAIModels.js.map +1 -1
- package/dist/providers/OpenAIProvider.d.ts +2 -3
- package/dist/providers/OpenAIProvider.d.ts.map +1 -1
- package/dist/providers/OpenAIProvider.js +2 -46
- package/dist/providers/OpenAIProvider.js.map +1 -1
- package/package.json +2 -14
- package/src/Capability.ts +0 -50
- package/src/Connector.ts +2 -20
- package/src/ConnectorRegistry.ts +0 -15
- package/src/HttpClient.ts +0 -15
- package/src/LlmService.ts +1 -13
- package/src/Models.ts +0 -22
- package/src/Streaming.ts +3 -99
- package/src/providers/AnthropicModels.ts +0 -47
- package/src/providers/AnthropicProvider.ts +1 -87
- package/src/providers/GeminiApiProvider.ts +2 -83
- package/src/providers/GeminiModels.ts +0 -46
- package/src/providers/LmStudioProvider.ts +1 -7
- package/src/providers/MlxLmProvider.ts +1 -3
- package/src/providers/MockProvider.ts +0 -9
- package/src/providers/OllamaProvider.ts +1 -7
- package/src/providers/OpenAIModels.ts +0 -64
- package/src/providers/OpenAIProvider.ts +2 -83
- package/dist/ContextManagement.d.ts +0 -78
- package/dist/ContextManagement.d.ts.map +0 -1
- package/dist/ContextManagement.js +0 -222
- package/dist/ContextManagement.js.map +0 -1
- package/dist/Conversation.d.ts +0 -18
- package/dist/Conversation.d.ts.map +0 -1
- package/dist/Conversation.js +0 -17
- package/dist/Conversation.js.map +0 -1
- package/dist/RateLimiter.d.ts +0 -44
- package/dist/RateLimiter.d.ts.map +0 -1
- package/dist/RateLimiter.js +0 -155
- package/dist/RateLimiter.js.map +0 -1
- package/dist/observability/MeteredLlmService.d.ts +0 -16
- package/dist/observability/MeteredLlmService.d.ts.map +0 -1
- package/dist/observability/MeteredLlmService.js +0 -72
- package/dist/observability/MeteredLlmService.js.map +0 -1
- package/dist/observability/Metrics.d.ts +0 -76
- package/dist/observability/Metrics.d.ts.map +0 -1
- package/dist/observability/Metrics.js +0 -152
- package/dist/observability/Metrics.js.map +0 -1
- package/dist/observability/StructuredLogger.d.ts +0 -31
- package/dist/observability/StructuredLogger.d.ts.map +0 -1
- package/dist/observability/StructuredLogger.js +0 -39
- package/dist/observability/StructuredLogger.js.map +0 -1
- package/dist/observability/Tracing.d.ts +0 -38
- package/dist/observability/Tracing.d.ts.map +0 -1
- package/dist/observability/Tracing.js +0 -80
- package/dist/observability/Tracing.js.map +0 -1
- package/dist/providers/OpenCodeModels.d.ts +0 -61
- package/dist/providers/OpenCodeModels.d.ts.map +0 -1
- package/dist/providers/OpenCodeModels.js +0 -53
- package/dist/providers/OpenCodeModels.js.map +0 -1
- package/dist/providers/OpenCodeProvider.d.ts +0 -10
- package/dist/providers/OpenCodeProvider.d.ts.map +0 -1
- package/dist/providers/OpenCodeProvider.js +0 -154
- package/dist/providers/OpenCodeProvider.js.map +0 -1
- package/dist/tools/Tool.d.ts +0 -83
- package/dist/tools/Tool.d.ts.map +0 -1
- package/dist/tools/Tool.js +0 -278
- package/dist/tools/Tool.js.map +0 -1
- package/dist/tools/ToolCallingExecutor.d.ts +0 -18
- package/dist/tools/ToolCallingExecutor.d.ts.map +0 -1
- package/dist/tools/ToolCallingExecutor.js +0 -64
- package/dist/tools/ToolCallingExecutor.js.map +0 -1
- package/dist/tools/ToolRegistry.d.ts +0 -45
- package/dist/tools/ToolRegistry.d.ts.map +0 -1
- package/dist/tools/ToolRegistry.js +0 -133
- package/dist/tools/ToolRegistry.js.map +0 -1
- package/src/ContextManagement.ts +0 -367
- package/src/Conversation.ts +0 -21
- package/src/RateLimiter.ts +0 -238
- package/src/observability/MeteredLlmService.ts +0 -168
- package/src/observability/Metrics.ts +0 -200
- package/src/observability/StructuredLogger.ts +0 -67
- package/src/observability/Tracing.ts +0 -146
- package/src/providers/OpenCodeModels.ts +0 -60
- package/src/providers/OpenCodeProvider.ts +0 -278
- package/src/tools/Tool.ts +0 -376
- package/src/tools/ToolCallingExecutor.ts +0 -106
- package/src/tools/ToolRegistry.ts +0 -224
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @deprecated Since 2.30.0 (ADR 0026): llm4ts exports OpenTelemetry spans and
|
|
3
|
-
* metrics over OTLP from `@llm4ts/runner/Otel`; this in-memory module is not
|
|
4
|
-
* used by flow or runner and will be removed in the next major.
|
|
5
|
-
*/
|
|
6
|
-
import * as Context from "effect/Context";
|
|
7
|
-
import * as Effect from "effect/Effect";
|
|
8
|
-
import * as Layer from "effect/Layer";
|
|
9
|
-
import * as Schema from "effect/Schema";
|
|
10
|
-
import { TokenUsage } from "../Models.ts";
|
|
11
|
-
declare const RequestLabels_base: Schema.Class<RequestLabels, Schema.Struct<{
|
|
12
|
-
readonly provider: Schema.String;
|
|
13
|
-
readonly model: Schema.String;
|
|
14
|
-
readonly agent: Schema.optionalKey<Schema.String>;
|
|
15
|
-
readonly runId: Schema.optionalKey<Schema.String>;
|
|
16
|
-
readonly workflowStep: Schema.optionalKey<Schema.String>;
|
|
17
|
-
}>, {}>;
|
|
18
|
-
export declare class RequestLabels extends RequestLabels_base {
|
|
19
|
-
}
|
|
20
|
-
declare const RequestMetrics_base: Schema.Class<RequestMetrics, Schema.Struct<{
|
|
21
|
-
readonly labels: typeof RequestLabels;
|
|
22
|
-
readonly tokenUsage: Schema.optionalKey<typeof TokenUsage>;
|
|
23
|
-
readonly latencyMs: Schema.Number;
|
|
24
|
-
readonly success: Schema.Boolean;
|
|
25
|
-
readonly errorType: Schema.optionalKey<Schema.String>;
|
|
26
|
-
readonly estimatedCostUsd: Schema.optionalKey<Schema.Number>;
|
|
27
|
-
}>, {}>;
|
|
28
|
-
export declare class RequestMetrics extends RequestMetrics_base {
|
|
29
|
-
}
|
|
30
|
-
declare const ProviderHealth_base: Schema.Class<ProviderHealth, Schema.Struct<{
|
|
31
|
-
readonly provider: Schema.String;
|
|
32
|
-
readonly requestCount: Schema.Int;
|
|
33
|
-
readonly successRate: Schema.Number;
|
|
34
|
-
readonly avgLatencyMs: Schema.Number;
|
|
35
|
-
readonly p95LatencyMs: Schema.Number;
|
|
36
|
-
readonly estimatedCostUsd: Schema.Number;
|
|
37
|
-
}>, {}>;
|
|
38
|
-
export declare class ProviderHealth extends ProviderHealth_base {
|
|
39
|
-
}
|
|
40
|
-
declare const ObservabilitySnapshot_base: Schema.Class<ObservabilitySnapshot, Schema.Struct<{
|
|
41
|
-
readonly totalRequests: Schema.Int;
|
|
42
|
-
readonly totalErrors: Schema.Int;
|
|
43
|
-
readonly activeRequests: Schema.Int;
|
|
44
|
-
readonly promptTokens: Schema.Int;
|
|
45
|
-
readonly completionTokens: Schema.Int;
|
|
46
|
-
readonly totalTokens: Schema.Int;
|
|
47
|
-
readonly estimatedCostUsd: Schema.Number;
|
|
48
|
-
readonly p50LatencyMs: Schema.Number;
|
|
49
|
-
readonly p95LatencyMs: Schema.Number;
|
|
50
|
-
readonly byProvider: Schema.$Array<typeof ProviderHealth>;
|
|
51
|
-
readonly byAgentRequests: Schema.$Record<Schema.String, Schema.Int>;
|
|
52
|
-
}>, {}>;
|
|
53
|
-
export declare class ObservabilitySnapshot extends ObservabilitySnapshot_base {
|
|
54
|
-
}
|
|
55
|
-
declare const DashboardMetricsSnapshot_base: Schema.Class<DashboardMetricsSnapshot, Schema.Struct<{
|
|
56
|
-
readonly providerHealth: Schema.$Array<typeof ProviderHealth>;
|
|
57
|
-
readonly totalTokens: Schema.Int;
|
|
58
|
-
readonly totalCostUsd: Schema.Number;
|
|
59
|
-
readonly totalRequests: Schema.Int;
|
|
60
|
-
readonly errorRate: Schema.Number;
|
|
61
|
-
}>, {}>;
|
|
62
|
-
export declare class DashboardMetricsSnapshot extends DashboardMetricsSnapshot_base {
|
|
63
|
-
}
|
|
64
|
-
export interface MetricsCollectorShape {
|
|
65
|
-
readonly markRequestStarted: (labels: RequestLabels) => Effect.Effect<void>;
|
|
66
|
-
readonly recordCompleted: (metrics: RequestMetrics) => Effect.Effect<void>;
|
|
67
|
-
readonly snapshot: Effect.Effect<ObservabilitySnapshot>;
|
|
68
|
-
readonly dashboardSnapshot: Effect.Effect<DashboardMetricsSnapshot>;
|
|
69
|
-
}
|
|
70
|
-
declare const MetricsCollector_base: Context.ServiceClass<MetricsCollector, "@llm4ts/core/observability/MetricsCollector", MetricsCollectorShape>;
|
|
71
|
-
export declare class MetricsCollector extends MetricsCollector_base {
|
|
72
|
-
}
|
|
73
|
-
export declare const makeMetricsCollector: () => Effect.Effect<MetricsCollectorShape, never, never>;
|
|
74
|
-
export declare const MetricsCollectorLive: Layer.Layer<MetricsCollector, never, never>;
|
|
75
|
-
export {};
|
|
76
|
-
//# sourceMappingURL=Metrics.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Metrics.d.ts","sourceRoot":"","sources":["../../src/observability/Metrics.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;;;;;;;;AAEzC,qBAAa,aAAc,SAAQ,kBAMjC;CAAG;;;;;;;;;AAEL,qBAAa,cAAe,SAAQ,mBAOlC;CAAG;;;;;;;;;AAEL,qBAAa,cAAe,SAAQ,mBAOlC;CAAG;;;;;;;;;;;;;;AAEL,qBAAa,qBAAsB,SAAQ,0BAczC;CAAG;;;;;;;;AAEL,qBAAa,wBAAyB,SAAQ,6BAQ5C;CAAG;AAEL,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAC3E,QAAQ,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAC1E,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAA;IACvD,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAA;CACpE;;AAED,qBAAa,gBAAiB,SAAQ,qBAErC;CAAG;AA0EJ,eAAO,MAAM,oBAAoB,0DAkDhC,CAAA;AAED,eAAO,MAAM,oBAAoB,6CAAyD,CAAA"}
|
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @deprecated Since 2.30.0 (ADR 0026): llm4ts exports OpenTelemetry spans and
|
|
3
|
-
* metrics over OTLP from `@llm4ts/runner/Otel`; this in-memory module is not
|
|
4
|
-
* used by flow or runner and will be removed in the next major.
|
|
5
|
-
*/
|
|
6
|
-
import * as Context from "effect/Context";
|
|
7
|
-
import * as Effect from "effect/Effect";
|
|
8
|
-
import * as Layer from "effect/Layer";
|
|
9
|
-
import * as Ref from "effect/Ref";
|
|
10
|
-
import * as Schema from "effect/Schema";
|
|
11
|
-
import { TokenUsage } from "../Models.js";
|
|
12
|
-
export class RequestLabels extends Schema.Class("RequestLabels")({
|
|
13
|
-
provider: Schema.String,
|
|
14
|
-
model: Schema.String,
|
|
15
|
-
agent: Schema.optionalKey(Schema.String),
|
|
16
|
-
runId: Schema.optionalKey(Schema.String),
|
|
17
|
-
workflowStep: Schema.optionalKey(Schema.String)
|
|
18
|
-
}) {
|
|
19
|
-
}
|
|
20
|
-
export class RequestMetrics extends Schema.Class("RequestMetrics")({
|
|
21
|
-
labels: RequestLabels,
|
|
22
|
-
tokenUsage: Schema.optionalKey(TokenUsage),
|
|
23
|
-
latencyMs: Schema.Number,
|
|
24
|
-
success: Schema.Boolean,
|
|
25
|
-
errorType: Schema.optionalKey(Schema.String),
|
|
26
|
-
estimatedCostUsd: Schema.optionalKey(Schema.Number)
|
|
27
|
-
}) {
|
|
28
|
-
}
|
|
29
|
-
export class ProviderHealth extends Schema.Class("ProviderHealth")({
|
|
30
|
-
provider: Schema.String,
|
|
31
|
-
requestCount: Schema.Int,
|
|
32
|
-
successRate: Schema.Number,
|
|
33
|
-
avgLatencyMs: Schema.Number,
|
|
34
|
-
p95LatencyMs: Schema.Number,
|
|
35
|
-
estimatedCostUsd: Schema.Number
|
|
36
|
-
}) {
|
|
37
|
-
}
|
|
38
|
-
export class ObservabilitySnapshot extends Schema.Class("ObservabilitySnapshot")({
|
|
39
|
-
totalRequests: Schema.Int,
|
|
40
|
-
totalErrors: Schema.Int,
|
|
41
|
-
activeRequests: Schema.Int,
|
|
42
|
-
promptTokens: Schema.Int,
|
|
43
|
-
completionTokens: Schema.Int,
|
|
44
|
-
totalTokens: Schema.Int,
|
|
45
|
-
estimatedCostUsd: Schema.Number,
|
|
46
|
-
p50LatencyMs: Schema.Number,
|
|
47
|
-
p95LatencyMs: Schema.Number,
|
|
48
|
-
byProvider: Schema.Array(ProviderHealth),
|
|
49
|
-
byAgentRequests: Schema.Record(Schema.String, Schema.Int)
|
|
50
|
-
}) {
|
|
51
|
-
}
|
|
52
|
-
export class DashboardMetricsSnapshot extends Schema.Class("DashboardMetricsSnapshot")({
|
|
53
|
-
providerHealth: Schema.Array(ProviderHealth),
|
|
54
|
-
totalTokens: Schema.Int,
|
|
55
|
-
totalCostUsd: Schema.Number,
|
|
56
|
-
totalRequests: Schema.Int,
|
|
57
|
-
errorRate: Schema.Number
|
|
58
|
-
}) {
|
|
59
|
-
}
|
|
60
|
-
export class MetricsCollector extends Context.Service()("@llm4ts/core/observability/MetricsCollector") {
|
|
61
|
-
}
|
|
62
|
-
const percentile = (values, quantile) => {
|
|
63
|
-
if (values.length === 0) {
|
|
64
|
-
return 0;
|
|
65
|
-
}
|
|
66
|
-
const sorted = [...values].sort((left, right) => left - right);
|
|
67
|
-
const index = Math.max(0, Math.ceil(quantile * sorted.length) - 1);
|
|
68
|
-
return sorted[index] ?? 0;
|
|
69
|
-
};
|
|
70
|
-
const providerHealth = (completed) => {
|
|
71
|
-
const providers = new Map();
|
|
72
|
-
for (const metric of completed) {
|
|
73
|
-
const current = providers.get(metric.labels.provider) ?? [];
|
|
74
|
-
current.push(metric);
|
|
75
|
-
providers.set(metric.labels.provider, current);
|
|
76
|
-
}
|
|
77
|
-
return [...providers.entries()]
|
|
78
|
-
.sort(([left], [right]) => left.localeCompare(right))
|
|
79
|
-
.map(([provider, metrics]) => {
|
|
80
|
-
const latencies = metrics.map((metric) => metric.latencyMs);
|
|
81
|
-
const successes = metrics.filter((metric) => metric.success).length;
|
|
82
|
-
return ProviderHealth.make({
|
|
83
|
-
provider,
|
|
84
|
-
requestCount: metrics.length,
|
|
85
|
-
successRate: metrics.length === 0 ? 1 : successes / metrics.length,
|
|
86
|
-
avgLatencyMs: metrics.length === 0
|
|
87
|
-
? 0
|
|
88
|
-
: latencies.reduce((sum, latency) => sum + latency, 0) / metrics.length,
|
|
89
|
-
p95LatencyMs: percentile(latencies, 0.95),
|
|
90
|
-
estimatedCostUsd: metrics.reduce((sum, metric) => sum + (metric.estimatedCostUsd ?? 0), 0)
|
|
91
|
-
});
|
|
92
|
-
});
|
|
93
|
-
};
|
|
94
|
-
const toSnapshot = (state) => {
|
|
95
|
-
const completed = state.completed;
|
|
96
|
-
const promptTokens = completed.reduce((sum, metric) => sum + (metric.tokenUsage?.prompt ?? 0), 0);
|
|
97
|
-
const completionTokens = completed.reduce((sum, metric) => sum + (metric.tokenUsage?.completion ?? 0), 0);
|
|
98
|
-
return ObservabilitySnapshot.make({
|
|
99
|
-
totalRequests: state.totalRequests,
|
|
100
|
-
totalErrors: completed.filter((metric) => !metric.success).length,
|
|
101
|
-
activeRequests: state.activeRequests,
|
|
102
|
-
promptTokens,
|
|
103
|
-
completionTokens,
|
|
104
|
-
totalTokens: promptTokens + completionTokens,
|
|
105
|
-
estimatedCostUsd: completed.reduce((sum, metric) => sum + (metric.estimatedCostUsd ?? 0), 0),
|
|
106
|
-
p50LatencyMs: percentile(completed.map((metric) => metric.latencyMs), 0.5),
|
|
107
|
-
p95LatencyMs: percentile(completed.map((metric) => metric.latencyMs), 0.95),
|
|
108
|
-
byProvider: providerHealth(completed),
|
|
109
|
-
byAgentRequests: Object.fromEntries(state.byAgentRequests)
|
|
110
|
-
});
|
|
111
|
-
};
|
|
112
|
-
export const makeMetricsCollector = Effect.fn("@llm4ts/core/observability/MetricsCollector.make")(function* () {
|
|
113
|
-
const state = yield* Ref.make({
|
|
114
|
-
totalRequests: 0,
|
|
115
|
-
activeRequests: 0,
|
|
116
|
-
completed: [],
|
|
117
|
-
byAgentRequests: new Map()
|
|
118
|
-
});
|
|
119
|
-
const markRequestStarted = (labels) => Ref.update(state, (current) => {
|
|
120
|
-
const agents = new Map(current.byAgentRequests);
|
|
121
|
-
if (labels.agent !== undefined) {
|
|
122
|
-
agents.set(labels.agent, (agents.get(labels.agent) ?? 0) + 1);
|
|
123
|
-
}
|
|
124
|
-
return {
|
|
125
|
-
totalRequests: current.totalRequests + 1,
|
|
126
|
-
activeRequests: current.activeRequests + 1,
|
|
127
|
-
completed: current.completed,
|
|
128
|
-
byAgentRequests: agents
|
|
129
|
-
};
|
|
130
|
-
});
|
|
131
|
-
const recordCompleted = (metrics) => Ref.update(state, (current) => ({
|
|
132
|
-
...current,
|
|
133
|
-
activeRequests: Math.max(0, current.activeRequests - 1),
|
|
134
|
-
completed: [...current.completed, metrics]
|
|
135
|
-
}));
|
|
136
|
-
const snapshot = Ref.get(state).pipe(Effect.map(toSnapshot));
|
|
137
|
-
const dashboardSnapshot = snapshot.pipe(Effect.map((current) => DashboardMetricsSnapshot.make({
|
|
138
|
-
providerHealth: current.byProvider,
|
|
139
|
-
totalTokens: current.totalTokens,
|
|
140
|
-
totalCostUsd: current.estimatedCostUsd,
|
|
141
|
-
totalRequests: current.totalRequests,
|
|
142
|
-
errorRate: current.totalRequests === 0 ? 0 : current.totalErrors / current.totalRequests
|
|
143
|
-
})));
|
|
144
|
-
return {
|
|
145
|
-
markRequestStarted,
|
|
146
|
-
recordCompleted,
|
|
147
|
-
snapshot,
|
|
148
|
-
dashboardSnapshot
|
|
149
|
-
};
|
|
150
|
-
});
|
|
151
|
-
export const MetricsCollectorLive = Layer.effect(MetricsCollector, makeMetricsCollector());
|
|
152
|
-
//# sourceMappingURL=Metrics.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Metrics.js","sourceRoot":"","sources":["../../src/observability/Metrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import * as Context from "effect/Context";
|
|
2
|
-
import * as Effect from "effect/Effect";
|
|
3
|
-
import * as Layer from "effect/Layer";
|
|
4
|
-
import * as Schema from "effect/Schema";
|
|
5
|
-
import type { JsonValue } from "../providers/CliSupport.ts";
|
|
6
|
-
import { type RedactionOptions } from "./Redaction.ts";
|
|
7
|
-
import type { TracingServiceShape } from "./Tracing.ts";
|
|
8
|
-
export declare const LogLevel: Schema.Literals<readonly ["Debug", "Info", "Warning", "Error"]>;
|
|
9
|
-
export type LogLevel = typeof LogLevel.Type;
|
|
10
|
-
declare const StructuredLogEvent_base: Schema.Class<StructuredLogEvent, Schema.Struct<{
|
|
11
|
-
readonly level: Schema.Literals<readonly ["Debug", "Info", "Warning", "Error"]>;
|
|
12
|
-
readonly message: Schema.String;
|
|
13
|
-
readonly correlationId: Schema.String;
|
|
14
|
-
readonly timestamp: Schema.Number;
|
|
15
|
-
readonly fields: Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>;
|
|
16
|
-
}>, {}>;
|
|
17
|
-
export declare class StructuredLogEvent extends StructuredLogEvent_base {
|
|
18
|
-
}
|
|
19
|
-
export interface StructuredLoggerShape {
|
|
20
|
-
readonly log: (level: LogLevel, message: string, fields?: Readonly<Record<string, JsonValue>>) => Effect.Effect<void>;
|
|
21
|
-
}
|
|
22
|
-
declare const StructuredLogger_base: Context.ServiceClass<StructuredLogger, "@llm4ts/core/observability/StructuredLogger", StructuredLoggerShape>;
|
|
23
|
-
export declare class StructuredLogger extends StructuredLogger_base {
|
|
24
|
-
}
|
|
25
|
-
export interface StructuredLoggerOptions extends RedactionOptions {
|
|
26
|
-
readonly sink: (event: StructuredLogEvent) => Effect.Effect<void>;
|
|
27
|
-
}
|
|
28
|
-
export declare const makeStructuredLogger: (tracing: TracingServiceShape, options: StructuredLoggerOptions) => StructuredLoggerShape;
|
|
29
|
-
export declare const StructuredLoggerNoop: Layer.Layer<StructuredLogger, never, never>;
|
|
30
|
-
export {};
|
|
31
|
-
//# sourceMappingURL=StructuredLogger.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"StructuredLogger.d.ts","sourceRoot":"","sources":["../../src/observability/StructuredLogger.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAC3D,OAAO,EAA8B,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAClF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAEvD,eAAO,MAAM,QAAQ,iEAAyD,CAAA;AAC9E,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAC,IAAI,CAAA;;;;;;;;AAE3C,qBAAa,kBAAmB,SAAQ,uBAMtC;CAAG;AAEL,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,GAAG,EAAE,CACZ,KAAK,EAAE,QAAQ,EACf,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,KACzC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;CACzB;;AAED,qBAAa,gBAAiB,SAAQ,qBAErC;CAAG;AAEJ,MAAM,WAAW,uBAAwB,SAAQ,gBAAgB;IAC/D,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;CAClE;AAED,eAAO,MAAM,oBAAoB,GAC/B,SAAS,mBAAmB,EAC5B,SAAS,uBAAuB,KAC/B,qBAkBD,CAAA;AAEF,eAAO,MAAM,oBAAoB,6CAE/B,CAAA"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @deprecated Since 2.30.0 (ADR 0026): llm4ts exports OpenTelemetry spans and
|
|
3
|
-
* metrics over OTLP from `@llm4ts/runner/Otel`; this in-memory module is not
|
|
4
|
-
* used by flow or runner and will be removed in the next major.
|
|
5
|
-
*/
|
|
6
|
-
import * as Clock from "effect/Clock";
|
|
7
|
-
import * as Context from "effect/Context";
|
|
8
|
-
import * as Effect from "effect/Effect";
|
|
9
|
-
import * as Layer from "effect/Layer";
|
|
10
|
-
import * as Schema from "effect/Schema";
|
|
11
|
-
import { redactText, sanitizeFields } from "./Redaction.js";
|
|
12
|
-
export const LogLevel = Schema.Literals(["Debug", "Info", "Warning", "Error"]);
|
|
13
|
-
export class StructuredLogEvent extends Schema.Class("StructuredLogEvent")({
|
|
14
|
-
level: LogLevel,
|
|
15
|
-
message: Schema.String,
|
|
16
|
-
correlationId: Schema.String,
|
|
17
|
-
timestamp: Schema.Number,
|
|
18
|
-
fields: Schema.Record(Schema.String, Schema.Json)
|
|
19
|
-
}) {
|
|
20
|
-
}
|
|
21
|
-
export class StructuredLogger extends Context.Service()("@llm4ts/core/observability/StructuredLogger") {
|
|
22
|
-
}
|
|
23
|
-
export const makeStructuredLogger = (tracing, options) => ({
|
|
24
|
-
log: Effect.fn("@llm4ts/core/observability/StructuredLogger.log")(function* (level, message, fields = {}) {
|
|
25
|
-
const correlationId = yield* tracing.correlationId;
|
|
26
|
-
const timestamp = yield* Clock.currentTimeMillis;
|
|
27
|
-
yield* options.sink(StructuredLogEvent.make({
|
|
28
|
-
level,
|
|
29
|
-
message: redactText(message, options),
|
|
30
|
-
correlationId,
|
|
31
|
-
timestamp,
|
|
32
|
-
fields: sanitizeFields(fields, options)
|
|
33
|
-
}));
|
|
34
|
-
})
|
|
35
|
-
});
|
|
36
|
-
export const StructuredLoggerNoop = Layer.succeed(StructuredLogger)({
|
|
37
|
-
log: (_level, _message, _fields) => Effect.void
|
|
38
|
-
});
|
|
39
|
-
//# sourceMappingURL=StructuredLogger.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"StructuredLogger.js","sourceRoot":"","sources":["../../src/observability/StructuredLogger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAyB,MAAM,gBAAgB,CAAA;AAGlF,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAA;AAG9E,MAAM,OAAO,kBAAmB,SAAQ,MAAM,CAAC,KAAK,CAAqB,oBAAoB,CAAC,CAAC;IAC7F,KAAK,EAAE,QAAQ;IACf,OAAO,EAAE,MAAM,CAAC,MAAM;IACtB,aAAa,EAAE,MAAM,CAAC,MAAM;IAC5B,SAAS,EAAE,MAAM,CAAC,MAAM;IACxB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC;CAClD,CAAC;CAAG;AAUL,MAAM,OAAO,gBAAiB,SAAQ,OAAO,CAAC,OAAO,EAA2C,CAC9F,6CAA6C,CAC9C;CAAG;AAMJ,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,OAA4B,EAC5B,OAAgC,EACT,EAAE,CAAC,CAAC;IAC3B,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,iDAAiD,CAAC,CAAC,QAAQ,CAAC,EACzE,KAAe,EACf,OAAe,EACf,SAA8C,EAAE;QAEhD,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,aAAa,CAAA;QAClD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAA;QAChD,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CACjB,kBAAkB,CAAC,IAAI,CAAC;YACtB,KAAK;YACL,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC;YACrC,aAAa;YACb,SAAS;YACT,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC;SACxC,CAAC,CACH,CAAA;IACH,CAAC,CAAC;CACH,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAClE,GAAG,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI;CAChD,CAAC,CAAA"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import * as Context from "effect/Context";
|
|
2
|
-
import * as Effect from "effect/Effect";
|
|
3
|
-
import * as Layer from "effect/Layer";
|
|
4
|
-
import * as Schema from "effect/Schema";
|
|
5
|
-
import type { JsonValue } from "../providers/CliSupport.ts";
|
|
6
|
-
import { type RedactionOptions } from "./Redaction.ts";
|
|
7
|
-
export declare const TraceStatus: Schema.Literals<readonly ["Ok", "Error"]>;
|
|
8
|
-
export type TraceStatus = typeof TraceStatus.Type;
|
|
9
|
-
declare const TraceSpan_base: Schema.Class<TraceSpan, Schema.Struct<{
|
|
10
|
-
readonly traceId: Schema.String;
|
|
11
|
-
readonly spanId: Schema.String;
|
|
12
|
-
readonly parentSpanId: Schema.optionalKey<Schema.String>;
|
|
13
|
-
readonly correlationId: Schema.String;
|
|
14
|
-
readonly name: Schema.String;
|
|
15
|
-
readonly status: Schema.Literals<readonly ["Ok", "Error"]>;
|
|
16
|
-
readonly startedAt: Schema.Number;
|
|
17
|
-
readonly endedAt: Schema.Number;
|
|
18
|
-
readonly attributes: Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>;
|
|
19
|
-
readonly errorMessage: Schema.optionalKey<Schema.String>;
|
|
20
|
-
}>, {}>;
|
|
21
|
-
export declare class TraceSpan extends TraceSpan_base {
|
|
22
|
-
}
|
|
23
|
-
export interface TracingServiceShape {
|
|
24
|
-
readonly withCorrelationId: <A, E, R>(id: string, effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
25
|
-
readonly correlationId: Effect.Effect<string>;
|
|
26
|
-
readonly inSpan: <A, E, R>(name: string, attributes: Readonly<Record<string, JsonValue>>, effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
|
|
27
|
-
readonly recordedSpans: Effect.Effect<ReadonlyArray<TraceSpan>>;
|
|
28
|
-
}
|
|
29
|
-
declare const TracingService_base: Context.ServiceClass<TracingService, "@llm4ts/core/observability/TracingService", TracingServiceShape>;
|
|
30
|
-
export declare class TracingService extends TracingService_base {
|
|
31
|
-
}
|
|
32
|
-
export interface TracingOptions extends RedactionOptions {
|
|
33
|
-
readonly makeId?: Effect.Effect<string>;
|
|
34
|
-
}
|
|
35
|
-
export declare const makeTracingService: (options?: TracingOptions | undefined) => Effect.Effect<TracingServiceShape, never, never>;
|
|
36
|
-
export declare const TracingServiceLive: Layer.Layer<TracingService, never, never>;
|
|
37
|
-
export {};
|
|
38
|
-
//# sourceMappingURL=Tracing.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Tracing.d.ts","sourceRoot":"","sources":["../../src/observability/Tracing.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAC3D,OAAO,EAA8B,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAElF,eAAO,MAAM,WAAW,2CAAmC,CAAA;AAC3D,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAA;;;;;;;;;;;;;AAEjD,qBAAa,SAAU,SAAQ,cAW7B;CAAG;AAaL,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAClC,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAC7C,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EACvB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,EAC/C,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAA;CAChE;;AAED,qBAAa,cAAe,SAAQ,mBAEnC;CAAG;AAEJ,MAAM,WAAW,cAAe,SAAQ,gBAAgB;IACtD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;CACxC;AAID,eAAO,MAAM,kBAAkB,4FA6E9B,CAAA;AAED,eAAO,MAAM,kBAAkB,2CAAqD,CAAA"}
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @deprecated Since 2.30.0 (ADR 0026): llm4ts exports OpenTelemetry spans and
|
|
3
|
-
* metrics over OTLP from `@llm4ts/runner/Otel`; this in-memory module is not
|
|
4
|
-
* used by flow or runner and will be removed in the next major.
|
|
5
|
-
*/
|
|
6
|
-
import * as Clock from "effect/Clock";
|
|
7
|
-
import * as Context from "effect/Context";
|
|
8
|
-
import * as Effect from "effect/Effect";
|
|
9
|
-
import * as Exit from "effect/Exit";
|
|
10
|
-
import * as Layer from "effect/Layer";
|
|
11
|
-
import * as Ref from "effect/Ref";
|
|
12
|
-
import * as Schema from "effect/Schema";
|
|
13
|
-
import { redactText, sanitizeFields } from "./Redaction.js";
|
|
14
|
-
export const TraceStatus = Schema.Literals(["Ok", "Error"]);
|
|
15
|
-
export class TraceSpan extends Schema.Class("TraceSpan")({
|
|
16
|
-
traceId: Schema.String,
|
|
17
|
-
spanId: Schema.String,
|
|
18
|
-
parentSpanId: Schema.optionalKey(Schema.String),
|
|
19
|
-
correlationId: Schema.String,
|
|
20
|
-
name: Schema.String,
|
|
21
|
-
status: TraceStatus,
|
|
22
|
-
startedAt: Schema.Number,
|
|
23
|
-
endedAt: Schema.Number,
|
|
24
|
-
attributes: Schema.Record(Schema.String, Schema.Json),
|
|
25
|
-
errorMessage: Schema.optionalKey(Schema.String)
|
|
26
|
-
}) {
|
|
27
|
-
}
|
|
28
|
-
const CurrentTraceContext = Context.Reference("@llm4ts/core/observability/CurrentTraceContext", { defaultValue: () => undefined });
|
|
29
|
-
export class TracingService extends Context.Service()("@llm4ts/core/observability/TracingService") {
|
|
30
|
-
}
|
|
31
|
-
const defaultId = Effect.sync(() => globalThis.crypto.randomUUID());
|
|
32
|
-
export const makeTracingService = Effect.fn("@llm4ts/core/observability/TracingService.make")(function* (options = {}) {
|
|
33
|
-
const spans = yield* Ref.make([]);
|
|
34
|
-
const makeId = options.makeId ?? defaultId;
|
|
35
|
-
const correlationId = Effect.flatMap(CurrentTraceContext, (current) => current === undefined ? makeId : Effect.succeed(current.correlationId));
|
|
36
|
-
const withCorrelationId = (id, effect) => Effect.flatMap(CurrentTraceContext, (current) => Effect.provideService(effect, CurrentTraceContext, {
|
|
37
|
-
traceId: current?.traceId ?? id,
|
|
38
|
-
spanId: current?.spanId ?? id,
|
|
39
|
-
correlationId: id
|
|
40
|
-
}));
|
|
41
|
-
const inSpan = (name, attributes, effect) => Effect.gen(function* () {
|
|
42
|
-
const parent = yield* CurrentTraceContext;
|
|
43
|
-
const correlation = yield* correlationId;
|
|
44
|
-
const traceId = parent?.traceId ?? (yield* makeId);
|
|
45
|
-
const spanId = yield* makeId;
|
|
46
|
-
const startedAt = yield* Clock.currentTimeMillis;
|
|
47
|
-
const next = {
|
|
48
|
-
traceId,
|
|
49
|
-
spanId,
|
|
50
|
-
correlationId: correlation
|
|
51
|
-
};
|
|
52
|
-
return yield* Effect.provideService(effect.pipe(Effect.onExit((exit) => Clock.currentTimeMillis.pipe(Effect.flatMap((endedAt) => Ref.update(spans, (current) => [
|
|
53
|
-
...current,
|
|
54
|
-
TraceSpan.make({
|
|
55
|
-
traceId,
|
|
56
|
-
spanId,
|
|
57
|
-
...(parent === undefined ? {} : { parentSpanId: parent.spanId }),
|
|
58
|
-
correlationId: correlation,
|
|
59
|
-
name,
|
|
60
|
-
status: Exit.isSuccess(exit) ? "Ok" : "Error",
|
|
61
|
-
startedAt,
|
|
62
|
-
endedAt,
|
|
63
|
-
attributes: sanitizeFields(attributes, options),
|
|
64
|
-
...(Exit.isFailure(exit)
|
|
65
|
-
? {
|
|
66
|
-
errorMessage: redactText(String(exit.cause), options)
|
|
67
|
-
}
|
|
68
|
-
: {})
|
|
69
|
-
})
|
|
70
|
-
]))))), CurrentTraceContext, next);
|
|
71
|
-
});
|
|
72
|
-
return {
|
|
73
|
-
withCorrelationId,
|
|
74
|
-
correlationId,
|
|
75
|
-
inSpan,
|
|
76
|
-
recordedSpans: Ref.get(spans)
|
|
77
|
-
};
|
|
78
|
-
});
|
|
79
|
-
export const TracingServiceLive = Layer.effect(TracingService, makeTracingService());
|
|
80
|
-
//# sourceMappingURL=Tracing.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Tracing.js","sourceRoot":"","sources":["../../src/observability/Tracing.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import * as Schema from "effect/Schema";
|
|
2
|
-
declare const OpenCodeMessage_base: Schema.Class<OpenCodeMessage, Schema.Struct<{
|
|
3
|
-
readonly role: Schema.String;
|
|
4
|
-
readonly content: Schema.String;
|
|
5
|
-
}>, {}>;
|
|
6
|
-
export declare class OpenCodeMessage extends OpenCodeMessage_base {
|
|
7
|
-
}
|
|
8
|
-
declare const OpenCodeJsonSchemaSpec_base: Schema.Class<OpenCodeJsonSchemaSpec, Schema.Struct<{
|
|
9
|
-
readonly name: Schema.String;
|
|
10
|
-
readonly schema: Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>;
|
|
11
|
-
}>, {}>;
|
|
12
|
-
export declare class OpenCodeJsonSchemaSpec extends OpenCodeJsonSchemaSpec_base {
|
|
13
|
-
}
|
|
14
|
-
declare const OpenCodeResponseFormat_base: Schema.Class<OpenCodeResponseFormat, Schema.Struct<{
|
|
15
|
-
readonly type: Schema.String;
|
|
16
|
-
readonly json_schema: Schema.optionalKey<typeof OpenCodeJsonSchemaSpec>;
|
|
17
|
-
}>, {}>;
|
|
18
|
-
export declare class OpenCodeResponseFormat extends OpenCodeResponseFormat_base {
|
|
19
|
-
}
|
|
20
|
-
declare const OpenCodeCompletionRequest_base: Schema.Class<OpenCodeCompletionRequest, Schema.Struct<{
|
|
21
|
-
readonly model: Schema.String;
|
|
22
|
-
readonly messages: Schema.$Array<typeof OpenCodeMessage>;
|
|
23
|
-
readonly temperature: Schema.optionalKey<Schema.Number>;
|
|
24
|
-
readonly max_tokens: Schema.optionalKey<Schema.Int>;
|
|
25
|
-
readonly max_completion_tokens: Schema.optionalKey<Schema.Int>;
|
|
26
|
-
readonly stream: Schema.optionalKey<Schema.Boolean>;
|
|
27
|
-
readonly response_format: Schema.optionalKey<typeof OpenCodeResponseFormat>;
|
|
28
|
-
}>, {}>;
|
|
29
|
-
export declare class OpenCodeCompletionRequest extends OpenCodeCompletionRequest_base {
|
|
30
|
-
}
|
|
31
|
-
declare const OpenCodeDelta_base: Schema.Class<OpenCodeDelta, Schema.Struct<{
|
|
32
|
-
readonly content: Schema.optionalKey<Schema.NullOr<Schema.String>>;
|
|
33
|
-
}>, {}>;
|
|
34
|
-
export declare class OpenCodeDelta extends OpenCodeDelta_base {
|
|
35
|
-
}
|
|
36
|
-
declare const OpenCodeChoice_base: Schema.Class<OpenCodeChoice, Schema.Struct<{
|
|
37
|
-
readonly index: Schema.optionalKey<Schema.Int>;
|
|
38
|
-
readonly message: Schema.optionalKey<typeof OpenCodeMessage>;
|
|
39
|
-
readonly delta: Schema.optionalKey<typeof OpenCodeDelta>;
|
|
40
|
-
readonly text: Schema.optionalKey<Schema.NullOr<Schema.String>>;
|
|
41
|
-
readonly finish_reason: Schema.optionalKey<Schema.NullOr<Schema.String>>;
|
|
42
|
-
}>, {}>;
|
|
43
|
-
export declare class OpenCodeChoice extends OpenCodeChoice_base {
|
|
44
|
-
}
|
|
45
|
-
declare const OpenCodeTokenUsage_base: Schema.Class<OpenCodeTokenUsage, Schema.Struct<{
|
|
46
|
-
readonly prompt_tokens: Schema.optionalKey<Schema.Int>;
|
|
47
|
-
readonly completion_tokens: Schema.optionalKey<Schema.Int>;
|
|
48
|
-
readonly total_tokens: Schema.optionalKey<Schema.Int>;
|
|
49
|
-
}>, {}>;
|
|
50
|
-
export declare class OpenCodeTokenUsage extends OpenCodeTokenUsage_base {
|
|
51
|
-
}
|
|
52
|
-
declare const OpenCodeCompletionResponse_base: Schema.Class<OpenCodeCompletionResponse, Schema.Struct<{
|
|
53
|
-
readonly id: Schema.optionalKey<Schema.String>;
|
|
54
|
-
readonly choices: Schema.$Array<typeof OpenCodeChoice>;
|
|
55
|
-
readonly usage: Schema.optionalKey<typeof OpenCodeTokenUsage>;
|
|
56
|
-
readonly model: Schema.optionalKey<Schema.String>;
|
|
57
|
-
}>, {}>;
|
|
58
|
-
export declare class OpenCodeCompletionResponse extends OpenCodeCompletionResponse_base {
|
|
59
|
-
}
|
|
60
|
-
export {};
|
|
61
|
-
//# sourceMappingURL=OpenCodeModels.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OpenCodeModels.d.ts","sourceRoot":"","sources":["../../src/providers/OpenCodeModels.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;;;;;AAGvC,qBAAa,eAAgB,SAAQ,oBAGnC;CAAG;;;;;AAEL,qBAAa,sBAAuB,SAAQ,2BAK1C;CAAG;;;;;AAEL,qBAAa,sBAAuB,SAAQ,2BAK1C;CAAG;;;;;;;;;;AAEL,qBAAa,yBAA0B,SAAQ,8BAU7C;CAAG;;;;AAEL,qBAAa,aAAc,SAAQ,kBAEjC;CAAG;;;;;;;;AAEL,qBAAa,cAAe,SAAQ,mBAMlC;CAAG;;;;;;AAEL,qBAAa,kBAAmB,SAAQ,uBAItC;CAAG;;;;;;;AAEL,qBAAa,0BAA2B,SAAQ,+BAO9C;CAAG"}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import * as Schema from "effect/Schema";
|
|
2
|
-
import { JsonSchema } from "../Models.js";
|
|
3
|
-
export class OpenCodeMessage extends Schema.Class("OpenCodeMessage")({
|
|
4
|
-
role: Schema.String,
|
|
5
|
-
content: Schema.String
|
|
6
|
-
}) {
|
|
7
|
-
}
|
|
8
|
-
export class OpenCodeJsonSchemaSpec extends Schema.Class("OpenCodeJsonSchemaSpec")({
|
|
9
|
-
name: Schema.String,
|
|
10
|
-
schema: JsonSchema
|
|
11
|
-
}) {
|
|
12
|
-
}
|
|
13
|
-
export class OpenCodeResponseFormat extends Schema.Class("OpenCodeResponseFormat")({
|
|
14
|
-
type: Schema.String,
|
|
15
|
-
json_schema: Schema.optionalKey(OpenCodeJsonSchemaSpec)
|
|
16
|
-
}) {
|
|
17
|
-
}
|
|
18
|
-
export class OpenCodeCompletionRequest extends Schema.Class("OpenCodeCompletionRequest")({
|
|
19
|
-
model: Schema.String,
|
|
20
|
-
messages: Schema.Array(OpenCodeMessage),
|
|
21
|
-
temperature: Schema.optionalKey(Schema.Number),
|
|
22
|
-
max_tokens: Schema.optionalKey(Schema.Int),
|
|
23
|
-
max_completion_tokens: Schema.optionalKey(Schema.Int),
|
|
24
|
-
stream: Schema.optionalKey(Schema.Boolean),
|
|
25
|
-
response_format: Schema.optionalKey(OpenCodeResponseFormat)
|
|
26
|
-
}) {
|
|
27
|
-
}
|
|
28
|
-
export class OpenCodeDelta extends Schema.Class("OpenCodeDelta")({
|
|
29
|
-
content: Schema.optionalKey(Schema.NullOr(Schema.String))
|
|
30
|
-
}) {
|
|
31
|
-
}
|
|
32
|
-
export class OpenCodeChoice extends Schema.Class("OpenCodeChoice")({
|
|
33
|
-
index: Schema.optionalKey(Schema.Int),
|
|
34
|
-
message: Schema.optionalKey(OpenCodeMessage),
|
|
35
|
-
delta: Schema.optionalKey(OpenCodeDelta),
|
|
36
|
-
text: Schema.optionalKey(Schema.NullOr(Schema.String)),
|
|
37
|
-
finish_reason: Schema.optionalKey(Schema.NullOr(Schema.String))
|
|
38
|
-
}) {
|
|
39
|
-
}
|
|
40
|
-
export class OpenCodeTokenUsage extends Schema.Class("OpenCodeTokenUsage")({
|
|
41
|
-
prompt_tokens: Schema.optionalKey(Schema.Int),
|
|
42
|
-
completion_tokens: Schema.optionalKey(Schema.Int),
|
|
43
|
-
total_tokens: Schema.optionalKey(Schema.Int)
|
|
44
|
-
}) {
|
|
45
|
-
}
|
|
46
|
-
export class OpenCodeCompletionResponse extends Schema.Class("OpenCodeCompletionResponse")({
|
|
47
|
-
id: Schema.optionalKey(Schema.String),
|
|
48
|
-
choices: Schema.Array(OpenCodeChoice),
|
|
49
|
-
usage: Schema.optionalKey(OpenCodeTokenUsage),
|
|
50
|
-
model: Schema.optionalKey(Schema.String)
|
|
51
|
-
}) {
|
|
52
|
-
}
|
|
53
|
-
//# sourceMappingURL=OpenCodeModels.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OpenCodeModels.js","sourceRoot":"","sources":["../../src/providers/OpenCodeModels.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import * as Effect from "effect/Effect";
|
|
2
|
-
import { type ApiConnectorShape } from "../Connector.ts";
|
|
3
|
-
import { AuthenticationError, ConfigError, InvalidRequestError, ParseError } from "../Errors.ts";
|
|
4
|
-
import type { HttpClientShape } from "../HttpClient.ts";
|
|
5
|
-
import { LlmChunk, type LlmConfig, type Message } from "../Models.ts";
|
|
6
|
-
import { OpenCodeMessage } from "./OpenCodeModels.ts";
|
|
7
|
-
export declare const openCodeHistory: (messages: ReadonlyArray<Message>) => ReadonlyArray<OpenCodeMessage>;
|
|
8
|
-
export declare const parseOpenCodeSseBody: (config: LlmConfig, raw: string) => Effect.Effect<readonly LlmChunk[], import("../Errors.ts").ProviderError | import("../Errors.ts").UsageLimitError | AuthenticationError | InvalidRequestError | ParseError | import("../Errors.ts").ToolError | ConfigError | import("../Errors.ts").RateLimitError | import("../Errors.ts").TimeoutError | import("../Errors.ts").TurnLimitError, never>;
|
|
9
|
-
export declare const makeOpenCodeProvider: (config: LlmConfig, httpClient: HttpClientShape) => ApiConnectorShape;
|
|
10
|
-
//# sourceMappingURL=OpenCodeProvider.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OpenCodeProvider.d.ts","sourceRoot":"","sources":["../../src/providers/OpenCodeProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAIvC,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAC1E,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,mBAAmB,EACnB,UAAU,EAEX,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAEvD,OAAO,EAEL,QAAQ,EAGR,KAAK,SAAS,EACd,KAAK,OAAO,EAEb,MAAM,cAAc,CAAA;AAErB,OAAO,EAIL,eAAe,EAEhB,MAAM,qBAAqB,CAAA;AAoB5B,eAAO,MAAM,eAAe,GAAI,UAAU,aAAa,CAAC,OAAO,CAAC,KAAG,aAAa,CAAC,eAAe,CAM7F,CAAA;AA+CH,eAAO,MAAM,oBAAoB,8XAsBhC,CAAA;AAED,eAAO,MAAM,oBAAoB,GAC/B,QAAQ,SAAS,EACjB,YAAY,eAAe,KAC1B,iBAmJF,CAAA"}
|