@node-llm/core 1.17.1 → 1.18.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 -0
- package/dist/agent/Agent.d.ts +24 -11
- package/dist/agent/Agent.d.ts.map +1 -1
- package/dist/agent/Agent.js +1 -3
- package/dist/aliases.d.ts +341 -172
- package/dist/aliases.d.ts.map +1 -1
- package/dist/aliases.js +409 -240
- package/dist/chat/Chat.d.ts +13 -10
- package/dist/chat/Chat.d.ts.map +1 -1
- package/dist/chat/Chat.js +15 -4
- package/dist/chat/ChatOptions.d.ts +11 -11
- package/dist/chat/ChatOptions.d.ts.map +1 -1
- package/dist/chat/Tool.d.ts +26 -5
- package/dist/chat/Tool.d.ts.map +1 -1
- package/dist/chat/Tool.js +25 -3
- package/dist/chat/ToolCallOutcome.d.ts +6 -6
- package/dist/chat/ToolCallOutcome.d.ts.map +1 -1
- package/dist/chat/ToolHandler.d.ts +2 -2
- package/dist/chat/ToolHandler.d.ts.map +1 -1
- package/dist/config.d.ts +12 -2
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +18 -1
- package/dist/constants.d.ts +7 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +3 -1
- package/dist/index.d.ts +9 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/judge/Judge.d.ts +107 -0
- package/dist/judge/Judge.d.ts.map +1 -0
- package/dist/judge/Judge.js +104 -0
- package/dist/judge/Judgment.d.ts +116 -0
- package/dist/judge/Judgment.d.ts.map +1 -0
- package/dist/judge/Judgment.js +159 -0
- package/dist/judge/Question.d.ts +91 -0
- package/dist/judge/Question.d.ts.map +1 -0
- package/dist/judge/Question.js +180 -0
- package/dist/llm.d.ts +46 -0
- package/dist/llm.d.ts.map +1 -1
- package/dist/llm.js +105 -5
- package/dist/models/ModelRegistry.d.ts +11 -18
- package/dist/models/ModelRegistry.d.ts.map +1 -1
- package/dist/models/ModelRegistry.js +6 -0
- package/dist/models/models.json +5181 -2145
- package/dist/providers/BaseProvider.d.ts +2 -1
- package/dist/providers/BaseProvider.d.ts.map +1 -1
- package/dist/providers/BaseProvider.js +3 -0
- package/dist/providers/Provider.d.ts +37 -0
- package/dist/providers/Provider.d.ts.map +1 -1
- package/dist/providers/registry.d.ts +2 -1
- package/dist/providers/registry.d.ts.map +1 -1
- package/dist/providers/registry.js +2 -1
- package/dist/providers/typesafe/SystemOne.d.ts +11 -0
- package/dist/providers/typesafe/SystemOne.d.ts.map +1 -0
- package/dist/providers/typesafe/SystemOne.js +171 -0
- package/dist/providers/typesafe/TypeSafeProvider.d.ts +27 -0
- package/dist/providers/typesafe/TypeSafeProvider.d.ts.map +1 -0
- package/dist/providers/typesafe/TypeSafeProvider.js +76 -0
- package/dist/providers/typesafe/index.d.ts +4 -0
- package/dist/providers/typesafe/index.d.ts.map +1 -0
- package/dist/providers/typesafe/index.js +19 -0
- package/dist/types/Middleware.d.ts +9 -0
- package/dist/types/Middleware.d.ts.map +1 -1
- package/package.json +13 -10
package/dist/chat/Chat.d.ts
CHANGED
|
@@ -3,10 +3,10 @@ import { ContentPart, MessageContent } from "./Content.js";
|
|
|
3
3
|
import { ChatOptions } from "./ChatOptions.js";
|
|
4
4
|
import { Provider, Usage, ChatChunk, ThinkingConfig, ToolChoice } from "../providers/Provider.js";
|
|
5
5
|
import { Stream } from "../streaming/Stream.js";
|
|
6
|
-
import { ToolResolvable } from "./Tool.js";
|
|
6
|
+
import { ToolResolvable, ToolCall } from "./Tool.js";
|
|
7
7
|
import { Schema } from "../schema/Schema.js";
|
|
8
8
|
import { z } from "zod";
|
|
9
|
-
import {
|
|
9
|
+
import { ToolExecutionModeInput } from "../constants.js";
|
|
10
10
|
export interface AskOptions {
|
|
11
11
|
images?: string[];
|
|
12
12
|
files?: string[];
|
|
@@ -134,7 +134,8 @@ export declare class Chat<S = unknown> {
|
|
|
134
134
|
* Enforce a specific schema for the output.
|
|
135
135
|
* Can accept a Schema object or a Zod schema/JSON Schema directly.
|
|
136
136
|
*/
|
|
137
|
-
withSchema<T>(schema:
|
|
137
|
+
withSchema<T>(schema: z.ZodType<T>): Chat<T>;
|
|
138
|
+
withSchema<T = unknown>(schema: Schema | z.ZodType<T> | Record<string, unknown> | null): Chat<T>;
|
|
138
139
|
/**
|
|
139
140
|
* Provide a prediction of the expected output to reduce latency.
|
|
140
141
|
* Particularly useful for code-editing agents modifying existing text.
|
|
@@ -150,26 +151,26 @@ export declare class Chat<S = unknown> {
|
|
|
150
151
|
withEffort(effort: "low" | "medium" | "high" | "none"): this;
|
|
151
152
|
onNewMessage(handler: () => void): this;
|
|
152
153
|
onEndMessage(handler: (message: ChatResponseString) => void): this;
|
|
153
|
-
onToolCall(handler: (toolCall:
|
|
154
|
+
onToolCall(handler: (toolCall: ToolCall) => void): this;
|
|
154
155
|
onToolResult(handler: (result: unknown) => void): this;
|
|
155
156
|
/**
|
|
156
157
|
* Called when a tool call starts. Calling this more than once registers
|
|
157
158
|
* additional handlers rather than replacing the previous one.
|
|
158
159
|
*/
|
|
159
|
-
onToolCallStart(handler: (toolCall:
|
|
160
|
+
onToolCallStart(handler: (toolCall: ToolCall) => void): this;
|
|
160
161
|
/**
|
|
161
162
|
* Called when a tool call ends successfully. Calling this more than once
|
|
162
163
|
* registers additional handlers rather than replacing the previous one.
|
|
163
164
|
*/
|
|
164
|
-
onToolCallEnd(handler: (toolCall:
|
|
165
|
-
onToolCallError(handler: (toolCall:
|
|
165
|
+
onToolCallEnd(handler: (toolCall: ToolCall, result: unknown) => void): this;
|
|
166
|
+
onToolCallError(handler: (toolCall: ToolCall, error: Error) => "STOP" | "CONTINUE" | "RETRY" | void | Promise<"STOP" | "CONTINUE" | "RETRY" | void>): this;
|
|
166
167
|
/**
|
|
167
168
|
* Set the tool execution mode.
|
|
168
169
|
* - "auto": (Default) Automatically execute all tool calls.
|
|
169
170
|
* - "confirm": Call onConfirmToolCall before executing each tool.
|
|
170
171
|
* - "dry-run": Propose tool calls but do not execute them.
|
|
171
172
|
*/
|
|
172
|
-
withToolExecution(mode:
|
|
173
|
+
withToolExecution(mode: ToolExecutionModeInput): this;
|
|
173
174
|
/**
|
|
174
175
|
* Enable or disable concurrent execution of independent tool calls
|
|
175
176
|
* returned in the same turn. Disabled ("confirm" mode always runs
|
|
@@ -181,7 +182,7 @@ export declare class Chat<S = unknown> {
|
|
|
181
182
|
* Return true to proceed, false to cancel the specific call. When multiple
|
|
182
183
|
* handlers are registered, every one of them must approve.
|
|
183
184
|
*/
|
|
184
|
-
onConfirmToolCall(handler: (toolCall:
|
|
185
|
+
onConfirmToolCall(handler: (toolCall: ToolCall) => Promise<boolean> | boolean): this;
|
|
185
186
|
/**
|
|
186
187
|
* Add a hook to process messages before sending to the LLM.
|
|
187
188
|
* Useful for PII detection, redaction, and input moderation. Multiple
|
|
@@ -197,7 +198,9 @@ export declare class Chat<S = unknown> {
|
|
|
197
198
|
/**
|
|
198
199
|
* Ask the model a question
|
|
199
200
|
*/
|
|
200
|
-
ask(content: string | ContentPart[], options?: AskOptions): Promise<ChatResponseString
|
|
201
|
+
ask(content: string | ContentPart[], options?: AskOptions): Promise<ChatResponseString & {
|
|
202
|
+
data: S;
|
|
203
|
+
}>;
|
|
201
204
|
/**
|
|
202
205
|
* Streams the model's response to a user question.
|
|
203
206
|
*/
|
package/dist/chat/Chat.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chat.d.ts","sourceRoot":"","sources":["../../src/chat/Chat.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,WAAW,EAGX,cAAc,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACL,QAAQ,EACR,KAAK,EACL,SAAS,EAET,cAAc,EACd,UAAU,EACX,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAEhD,OAAO,EAAkB,cAAc,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"Chat.d.ts","sourceRoot":"","sources":["../../src/chat/Chat.ts"],"names":[],"mappings":"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"}
|
package/dist/chat/Chat.js
CHANGED
|
@@ -31,6 +31,19 @@ export class Chat {
|
|
|
31
31
|
this.options = options;
|
|
32
32
|
this.middlewares = options.middlewares || [];
|
|
33
33
|
this.executor = new Executor(provider, retryConfig);
|
|
34
|
+
// A Zod object or plain JSON Schema passed as the `schema` option was stored
|
|
35
|
+
// as-is, and the request builders then read `.definition` off it and
|
|
36
|
+
// crashed. Convert those the way withSchema() does. Anything already shaped
|
|
37
|
+
// like a Schema - an instance, or an object carrying `definition` - is left
|
|
38
|
+
// exactly as it was.
|
|
39
|
+
const rawSchema = options.schema;
|
|
40
|
+
if (rawSchema instanceof z.ZodType ||
|
|
41
|
+
(rawSchema &&
|
|
42
|
+
typeof rawSchema === "object" &&
|
|
43
|
+
!(rawSchema instanceof Schema) &&
|
|
44
|
+
!("definition" in rawSchema))) {
|
|
45
|
+
this.withSchema(rawSchema);
|
|
46
|
+
}
|
|
34
47
|
if (options.systemPrompt) {
|
|
35
48
|
this.withInstructions(options.systemPrompt);
|
|
36
49
|
}
|
|
@@ -242,10 +255,6 @@ export class Chat {
|
|
|
242
255
|
this.options.params = { ...this.options.params, ...params };
|
|
243
256
|
return this;
|
|
244
257
|
}
|
|
245
|
-
/**
|
|
246
|
-
* Enforce a specific schema for the output.
|
|
247
|
-
* Can accept a Schema object or a Zod schema/JSON Schema directly.
|
|
248
|
-
*/
|
|
249
258
|
withSchema(schema) {
|
|
250
259
|
if (schema === null) {
|
|
251
260
|
this.options.schema = undefined;
|
|
@@ -387,6 +396,8 @@ export class Chat {
|
|
|
387
396
|
/**
|
|
388
397
|
* Ask the model a question
|
|
389
398
|
*/
|
|
399
|
+
// Typed by the chat's schema: response.data is the schema's type after
|
|
400
|
+
// withSchema(), and unknown (as before) when no schema is set.
|
|
390
401
|
async ask(content, options) {
|
|
391
402
|
const requestId = randomUUID();
|
|
392
403
|
const state = {};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { Middleware } from "../types/Middleware.js";
|
|
2
2
|
import { Message } from "./Message.js";
|
|
3
|
-
import { ToolResolvable } from "./Tool.js";
|
|
3
|
+
import { ToolResolvable, ToolCall } from "./Tool.js";
|
|
4
4
|
import { ContentPart } from "./Content.js";
|
|
5
5
|
import { Schema } from "../schema/Schema.js";
|
|
6
6
|
import { ChatResponseString } from "./ChatResponse.js";
|
|
7
|
-
import {
|
|
7
|
+
import { ToolExecutionModeInput } from "../constants.js";
|
|
8
8
|
import { ResponseFormat, ThinkingConfig, ToolChoice } from "../providers/Provider.js";
|
|
9
9
|
export interface ChatOptions {
|
|
10
10
|
systemPrompt?: string;
|
|
@@ -15,9 +15,9 @@ export interface ChatOptions {
|
|
|
15
15
|
maxTokens?: number;
|
|
16
16
|
onNewMessage?: () => void;
|
|
17
17
|
onEndMessage?: (message: ChatResponseString) => void;
|
|
18
|
-
onToolCallStart?: (toolCall:
|
|
19
|
-
onToolCallEnd?: (toolCall:
|
|
20
|
-
onToolCallError?: (toolCall:
|
|
18
|
+
onToolCallStart?: (toolCall: ToolCall) => void;
|
|
19
|
+
onToolCallEnd?: (toolCall: ToolCall, result: unknown) => void;
|
|
20
|
+
onToolCallError?: (toolCall: ToolCall, error: Error) => "STOP" | "CONTINUE" | "RETRY" | void | Promise<"STOP" | "CONTINUE" | "RETRY" | void>;
|
|
21
21
|
/**
|
|
22
22
|
* Additional handlers registered via the fluent on*() methods. Each on*()
|
|
23
23
|
* call appends here instead of overwriting the single onX field above, so
|
|
@@ -26,9 +26,9 @@ export interface ChatOptions {
|
|
|
26
26
|
*/
|
|
27
27
|
onNewMessageHandlers?: Array<() => void>;
|
|
28
28
|
onEndMessageHandlers?: Array<(message: ChatResponseString) => void>;
|
|
29
|
-
onToolCallStartHandlers?: Array<(toolCall:
|
|
30
|
-
onToolCallEndHandlers?: Array<(toolCall:
|
|
31
|
-
onToolCallErrorHandlers?: Array<(toolCall:
|
|
29
|
+
onToolCallStartHandlers?: Array<(toolCall: ToolCall) => void>;
|
|
30
|
+
onToolCallEndHandlers?: Array<(toolCall: ToolCall, result: unknown) => void>;
|
|
31
|
+
onToolCallErrorHandlers?: Array<(toolCall: ToolCall, error: Error) => "STOP" | "CONTINUE" | "RETRY" | void | Promise<"STOP" | "CONTINUE" | "RETRY" | void>>;
|
|
32
32
|
headers?: Record<string, string>;
|
|
33
33
|
responseFormat?: ResponseFormat;
|
|
34
34
|
thinking?: ThinkingConfig;
|
|
@@ -40,7 +40,7 @@ export interface ChatOptions {
|
|
|
40
40
|
maxToolCalls?: number;
|
|
41
41
|
maxCorrections?: number;
|
|
42
42
|
requestTimeout?: number;
|
|
43
|
-
toolExecution?:
|
|
43
|
+
toolExecution?: ToolExecutionModeInput;
|
|
44
44
|
/**
|
|
45
45
|
* When true, independent tool calls returned in the same turn are executed
|
|
46
46
|
* concurrently instead of one at a time. Defaults to `config.toolConcurrency`.
|
|
@@ -48,10 +48,10 @@ export interface ChatOptions {
|
|
|
48
48
|
toolConcurrency?: boolean;
|
|
49
49
|
toolChoice?: ToolChoice;
|
|
50
50
|
toolCalls?: "one" | "many" | number;
|
|
51
|
-
onConfirmToolCall?: (toolCall:
|
|
51
|
+
onConfirmToolCall?: (toolCall: ToolCall) => Promise<boolean> | boolean;
|
|
52
52
|
onBeforeRequest?: (messages: Message[]) => Promise<Message[] | void>;
|
|
53
53
|
onAfterResponse?: (response: ChatResponseString) => Promise<ChatResponseString | void>;
|
|
54
|
-
onConfirmToolCallHandlers?: Array<(toolCall:
|
|
54
|
+
onConfirmToolCallHandlers?: Array<(toolCall: ToolCall) => Promise<boolean> | boolean>;
|
|
55
55
|
onBeforeRequestHandlers?: Array<(messages: Message[]) => Promise<Message[] | void>>;
|
|
56
56
|
onAfterResponseHandlers?: Array<(response: ChatResponseString) => Promise<ChatResponseString | void>>;
|
|
57
57
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatOptions.d.ts","sourceRoot":"","sources":["../../src/chat/ChatOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatOptions.d.ts","sourceRoot":"","sources":["../../src/chat/ChatOptions.ts"],"names":[],"mappings":"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"}
|
package/dist/chat/Tool.d.ts
CHANGED
|
@@ -15,7 +15,7 @@ export interface ToolDefinition {
|
|
|
15
15
|
strict?: boolean;
|
|
16
16
|
parameters: Record<string, unknown>;
|
|
17
17
|
};
|
|
18
|
-
handler?: (args:
|
|
18
|
+
handler?: (args: any) => Promise<string | ToolHalt>;
|
|
19
19
|
}
|
|
20
20
|
/**
|
|
21
21
|
* Stops the agentic tool execution loop and returns the content as the final response.
|
|
@@ -23,8 +23,8 @@ export interface ToolDefinition {
|
|
|
23
23
|
*
|
|
24
24
|
* @example
|
|
25
25
|
* ```typescript
|
|
26
|
-
* class PaymentTool extends Tool {
|
|
27
|
-
* async execute({ amount }) {
|
|
26
|
+
* class PaymentTool extends Tool<{ amount: number }> {
|
|
27
|
+
* async execute({ amount }: { amount: number }) {
|
|
28
28
|
* if (amount > 10000) {
|
|
29
29
|
* return this.halt("Payment requires manager approval. Please contact support.");
|
|
30
30
|
* }
|
|
@@ -50,8 +50,29 @@ export type ToolResolvable = Tool | {
|
|
|
50
50
|
} | ToolDefinition;
|
|
51
51
|
/**
|
|
52
52
|
* Subclass this to create tools with auto-generated schemas and type safety.
|
|
53
|
+
*
|
|
54
|
+
* Pass the argument type for a fully typed `execute`:
|
|
55
|
+
*
|
|
56
|
+
* ```typescript
|
|
57
|
+
* const schema = z.object({ location: z.string() });
|
|
58
|
+
*
|
|
59
|
+
* class WeatherTool extends Tool<z.infer<typeof schema>> {
|
|
60
|
+
* name = "get_weather";
|
|
61
|
+
* description = "Get the current weather for a location";
|
|
62
|
+
* schema = schema;
|
|
63
|
+
*
|
|
64
|
+
* async execute({ location }: z.infer<typeof schema>) {
|
|
65
|
+
* return `Sunny in ${location}`;
|
|
66
|
+
* }
|
|
67
|
+
* }
|
|
68
|
+
* ```
|
|
69
|
+
*
|
|
70
|
+
* Without it, the arguments default to `Record<string, any>`, so a subclass can
|
|
71
|
+
* declare `execute` with its own argument shape. (With `Record<string, unknown>`
|
|
72
|
+
* an `execute({ location })` override was not assignable to the base method,
|
|
73
|
+
* and the class was then rejected by `withTool`.)
|
|
53
74
|
*/
|
|
54
|
-
export declare abstract class Tool<T = Record<string,
|
|
75
|
+
export declare abstract class Tool<T = Record<string, any>> {
|
|
55
76
|
/**
|
|
56
77
|
* The name of the tool (must match [a-zA-Z0-9_-]+).
|
|
57
78
|
*/
|
|
@@ -81,7 +102,7 @@ export declare abstract class Tool<T = Record<string, unknown>> {
|
|
|
81
102
|
*
|
|
82
103
|
* @example
|
|
83
104
|
* ```typescript
|
|
84
|
-
* async execute({ amount }) {
|
|
105
|
+
* async execute({ amount }: { amount: number }) {
|
|
85
106
|
* if (amount > 10000) {
|
|
86
107
|
* return this.halt("Payment requires manager approval.");
|
|
87
108
|
* }
|
package/dist/chat/Tool.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tool.d.ts","sourceRoot":"","sources":["../../src/chat/Tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACrC,CAAC;
|
|
1
|
+
{"version":3,"file":"Tool.d.ts","sourceRoot":"","sources":["../../src/chat/Tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACrC,CAAC;IAIF,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC;CACrD;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,QAAQ;aACS,OAAO,EAAE,MAAM;gBAAf,OAAO,EAAE,MAAM;IAE3C,QAAQ,IAAI,MAAM;IAIlB,MAAM,IAAI;QAAE,IAAI,EAAE,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;CAG1C;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG;IAAE,QAAQ,IAAI,CAAA;CAAE,GAAG,cAAc,CAAC;AAEtE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,8BAAsB,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAChD;;OAEG;IACH,SAAgB,IAAI,EAAE,MAAM,CAAC;IAE7B;;OAEG;IACH,SAAgB,WAAW,EAAE,MAAM,CAAC;IAEpC;;;OAGG;IACH,SAAgB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE7E;;;OAGG;IACI,MAAM,CAAC,EAAE,OAAO,CAAC;IAExB;;;OAGG;aACa,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IAElD;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ;IAIzC;;;;OAIG;IACU,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC;IA0BzD;;;OAGG;IACI,SAAS,IAAI,cAAc;CAwBnC"}
|
package/dist/chat/Tool.js
CHANGED
|
@@ -6,8 +6,8 @@ import { toJsonSchema } from "../schema/to-json-schema.js";
|
|
|
6
6
|
*
|
|
7
7
|
* @example
|
|
8
8
|
* ```typescript
|
|
9
|
-
* class PaymentTool extends Tool {
|
|
10
|
-
* async execute({ amount }) {
|
|
9
|
+
* class PaymentTool extends Tool<{ amount: number }> {
|
|
10
|
+
* async execute({ amount }: { amount: number }) {
|
|
11
11
|
* if (amount > 10000) {
|
|
12
12
|
* return this.halt("Payment requires manager approval. Please contact support.");
|
|
13
13
|
* }
|
|
@@ -30,7 +30,29 @@ export class ToolHalt {
|
|
|
30
30
|
}
|
|
31
31
|
/**
|
|
32
32
|
* Subclass this to create tools with auto-generated schemas and type safety.
|
|
33
|
+
*
|
|
34
|
+
* Pass the argument type for a fully typed `execute`:
|
|
35
|
+
*
|
|
36
|
+
* ```typescript
|
|
37
|
+
* const schema = z.object({ location: z.string() });
|
|
38
|
+
*
|
|
39
|
+
* class WeatherTool extends Tool<z.infer<typeof schema>> {
|
|
40
|
+
* name = "get_weather";
|
|
41
|
+
* description = "Get the current weather for a location";
|
|
42
|
+
* schema = schema;
|
|
43
|
+
*
|
|
44
|
+
* async execute({ location }: z.infer<typeof schema>) {
|
|
45
|
+
* return `Sunny in ${location}`;
|
|
46
|
+
* }
|
|
47
|
+
* }
|
|
48
|
+
* ```
|
|
49
|
+
*
|
|
50
|
+
* Without it, the arguments default to `Record<string, any>`, so a subclass can
|
|
51
|
+
* declare `execute` with its own argument shape. (With `Record<string, unknown>`
|
|
52
|
+
* an `execute({ location })` override was not assignable to the base method,
|
|
53
|
+
* and the class was then rejected by `withTool`.)
|
|
33
54
|
*/
|
|
55
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- see the note above
|
|
34
56
|
export class Tool {
|
|
35
57
|
/**
|
|
36
58
|
* Whether to enforce strict JSON schema constraints for OpenAI and similar providers.
|
|
@@ -43,7 +65,7 @@ export class Tool {
|
|
|
43
65
|
*
|
|
44
66
|
* @example
|
|
45
67
|
* ```typescript
|
|
46
|
-
* async execute({ amount }) {
|
|
68
|
+
* async execute({ amount }: { amount: number }) {
|
|
47
69
|
* if (amount > 10000) {
|
|
48
70
|
* return this.halt("Payment requires manager approval.");
|
|
49
71
|
* }
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ToolCall, ToolDefinition } from "./Tool.js";
|
|
2
|
-
import {
|
|
2
|
+
import { ToolExecutionModeInput } from "../constants.js";
|
|
3
3
|
import { ToolExecutionResult } from "./ToolHandler.js";
|
|
4
4
|
import { Middleware, MiddlewareContext } from "../types/Middleware.js";
|
|
5
5
|
export type ToolCallOutcome = {
|
|
@@ -16,15 +16,15 @@ export type ToolCallOutcome = {
|
|
|
16
16
|
};
|
|
17
17
|
export interface ToolCallExecutionOptions {
|
|
18
18
|
tools?: ToolDefinition[];
|
|
19
|
-
toolExecution?:
|
|
20
|
-
onConfirmToolCall?: (toolCall:
|
|
21
|
-
onToolCallStart?: (toolCall:
|
|
22
|
-
onToolCallEnd?: (toolCall:
|
|
19
|
+
toolExecution?: ToolExecutionModeInput;
|
|
20
|
+
onConfirmToolCall?: (toolCall: ToolCall) => Promise<boolean> | boolean;
|
|
21
|
+
onToolCallStart?: (toolCall: ToolCall) => void;
|
|
22
|
+
onToolCallEnd?: (toolCall: ToolCall, result: unknown) => void;
|
|
23
23
|
}
|
|
24
24
|
/**
|
|
25
25
|
* Confirm mode stays sequential since approval is interactive; concurrency
|
|
26
26
|
* only kicks in for AUTO/DRY_RUN turns with more than one independent call.
|
|
27
27
|
*/
|
|
28
|
-
export declare function shouldRunToolCallsConcurrently(toolConcurrency: boolean | undefined, toolExecution:
|
|
28
|
+
export declare function shouldRunToolCallsConcurrently(toolConcurrency: boolean | undefined, toolExecution: ToolExecutionModeInput | undefined, callCount: number): boolean;
|
|
29
29
|
export declare function executeToolCallOutcomes(toolCalls: ToolCall[], options: ToolCallExecutionOptions, middlewares: Middleware[], context: MiddlewareContext, concurrent: boolean): Promise<ToolCallOutcome[]>;
|
|
30
30
|
//# sourceMappingURL=ToolCallOutcome.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolCallOutcome.d.ts","sourceRoot":"","sources":["../../src/chat/ToolCallOutcome.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,
|
|
1
|
+
{"version":3,"file":"ToolCallOutcome.d.ts","sourceRoot":"","sources":["../../src/chat/ToolCallOutcome.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAqB,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAe,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAGvE,MAAM,MAAM,eAAe,GACvB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,UAAU,EAAE,mBAAmB,CAAA;CAAE,GACxE;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAAC;AAE1D,MAAM,WAAW,wBAAwB;IACvC,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,aAAa,CAAC,EAAE,sBAAsB,CAAC;IACvC,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IACvE,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC/C,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CAC/D;AAuCD;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,eAAe,EAAE,OAAO,GAAG,SAAS,EACpC,aAAa,EAAE,sBAAsB,GAAG,SAAS,EACjD,SAAS,EAAE,MAAM,GAChB,OAAO,CAET;AAED,wBAAsB,uBAAuB,CAC3C,SAAS,EAAE,QAAQ,EAAE,EACrB,OAAO,EAAE,wBAAwB,EACjC,WAAW,EAAE,UAAU,EAAE,EACzB,OAAO,EAAE,iBAAiB,EAC1B,UAAU,EAAE,OAAO,GAClB,OAAO,CAAC,eAAe,EAAE,CAAC,CAY5B"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ToolExecutionModeInput } from "../constants.js";
|
|
2
2
|
import { ToolCall, ToolDefinition } from "./Tool.js";
|
|
3
3
|
/**
|
|
4
4
|
* Result of a tool execution, including halt status
|
|
@@ -10,7 +10,7 @@ export interface ToolExecutionResult {
|
|
|
10
10
|
halted: boolean;
|
|
11
11
|
}
|
|
12
12
|
export declare class ToolHandler {
|
|
13
|
-
static shouldExecuteTools(toolCalls: ToolCall[] | undefined, mode?:
|
|
13
|
+
static shouldExecuteTools(toolCalls: ToolCall[] | undefined, mode?: ToolExecutionModeInput): boolean;
|
|
14
14
|
static requestToolConfirmation(toolCall: ToolCall, onConfirm?: (call: ToolCall) => Promise<boolean> | boolean): Promise<boolean>;
|
|
15
15
|
static execute(toolCall: ToolCall, tools: ToolDefinition[] | undefined, onStart?: (call: ToolCall) => void, onEnd?: (call: ToolCall, result: unknown) => void): Promise<ToolExecutionResult>;
|
|
16
16
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolHandler.d.ts","sourceRoot":"","sources":["../../src/chat/ToolHandler.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"ToolHandler.d.ts","sourceRoot":"","sources":["../../src/chat/ToolHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAE5E,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAY,MAAM,WAAW,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,qBAAa,WAAW;IACtB,MAAM,CAAC,kBAAkB,CACvB,SAAS,EAAE,QAAQ,EAAE,GAAG,SAAS,EACjC,IAAI,CAAC,EAAE,sBAAsB,GAC5B,OAAO;WAMG,uBAAuB,CAClC,QAAQ,EAAE,QAAQ,EAClB,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,GACzD,OAAO,CAAC,OAAO,CAAC;WAMN,OAAO,CAClB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,cAAc,EAAE,GAAG,SAAS,EACnC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,EAClC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,GAChD,OAAO,CAAC,mBAAmB,CAAC;CAmDhC"}
|
package/dist/config.d.ts
CHANGED
|
@@ -18,6 +18,10 @@ export interface NodeLLMConfig {
|
|
|
18
18
|
xaiApiBase?: string;
|
|
19
19
|
mistralApiKey?: string;
|
|
20
20
|
mistralApiBase?: string;
|
|
21
|
+
/** TypeSafe (System One / Jev) key for judgments. */
|
|
22
|
+
typesafeApiKey?: string;
|
|
23
|
+
/** System One endpoint; point it at any Jev-compatible server. */
|
|
24
|
+
typesafeApiBase?: string;
|
|
21
25
|
bedrockApiKey?: string;
|
|
22
26
|
bedrockAccessKeyId?: string;
|
|
23
27
|
bedrockSecretAccessKey?: string;
|
|
@@ -31,7 +35,7 @@ export interface NodeLLMConfig {
|
|
|
31
35
|
maxRetries?: number;
|
|
32
36
|
requestTimeout?: number;
|
|
33
37
|
maxTokens?: number;
|
|
34
|
-
toolExecution?:
|
|
38
|
+
toolExecution?: ToolExecutionModeInput;
|
|
35
39
|
/**
|
|
36
40
|
* When true, independent tool calls returned in the same turn are executed
|
|
37
41
|
* concurrently instead of one at a time. Opt-in, overridable per-chat via
|
|
@@ -40,7 +44,7 @@ export interface NodeLLMConfig {
|
|
|
40
44
|
toolConcurrency?: boolean;
|
|
41
45
|
provider?: string;
|
|
42
46
|
}
|
|
43
|
-
import { ToolExecutionMode } from "./constants.js";
|
|
47
|
+
import { ToolExecutionMode, ToolExecutionModeInput } from "./constants.js";
|
|
44
48
|
export declare class Configuration implements NodeLLMConfig {
|
|
45
49
|
private _openaiApiKey?;
|
|
46
50
|
private _openaiApiBase?;
|
|
@@ -57,6 +61,8 @@ export declare class Configuration implements NodeLLMConfig {
|
|
|
57
61
|
private _xaiApiBase?;
|
|
58
62
|
private _mistralApiKey?;
|
|
59
63
|
private _mistralApiBase?;
|
|
64
|
+
private _typesafeApiKey?;
|
|
65
|
+
private _typesafeApiBase?;
|
|
60
66
|
private _bedrockApiKey?;
|
|
61
67
|
private _bedrockAccessKeyId?;
|
|
62
68
|
private _bedrockSecretAccessKey?;
|
|
@@ -97,6 +103,10 @@ export declare class Configuration implements NodeLLMConfig {
|
|
|
97
103
|
set mistralApiKey(v: string | undefined);
|
|
98
104
|
get mistralApiBase(): string | undefined;
|
|
99
105
|
set mistralApiBase(v: string | undefined);
|
|
106
|
+
get typesafeApiKey(): string | undefined;
|
|
107
|
+
set typesafeApiKey(v: string | undefined);
|
|
108
|
+
get typesafeApiBase(): string | undefined;
|
|
109
|
+
set typesafeApiBase(v: string | undefined);
|
|
100
110
|
get bedrockApiKey(): string | undefined;
|
|
101
111
|
set bedrockApiKey(v: string | undefined);
|
|
102
112
|
get bedrockAccessKeyId(): string | undefined;
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/config.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DEFAULT_MAX_TOOL_CALLS, DEFAULT_MAX_RETRIES, DEFAULT_REQUEST_TIMEOUT, DEFAULT_MAX_TOKENS, DEFAULT_TOOL_EXECUTION, DEFAULT_TOOL_CONCURRENCY, DEFAULT_OPENAI_BASE_URL, DEFAULT_ANTHROPIC_BASE_URL, DEFAULT_GEMINI_BASE_URL, DEFAULT_DEEPSEEK_BASE_URL, DEFAULT_OPENROUTER_BASE_URL, DEFAULT_OLLAMA_BASE_URL, DEFAULT_XAI_BASE_URL, DEFAULT_MISTRAL_BASE_URL, DEFAULT_BEDROCK_REGION } from "./constants.js";
|
|
1
|
+
import { DEFAULT_MAX_TOOL_CALLS, DEFAULT_MAX_RETRIES, DEFAULT_REQUEST_TIMEOUT, DEFAULT_MAX_TOKENS, DEFAULT_TOOL_EXECUTION, DEFAULT_TOOL_CONCURRENCY, DEFAULT_OPENAI_BASE_URL, DEFAULT_ANTHROPIC_BASE_URL, DEFAULT_GEMINI_BASE_URL, DEFAULT_DEEPSEEK_BASE_URL, DEFAULT_OPENROUTER_BASE_URL, DEFAULT_OLLAMA_BASE_URL, DEFAULT_XAI_BASE_URL, DEFAULT_MISTRAL_BASE_URL, DEFAULT_TYPESAFE_BASE_URL, DEFAULT_BEDROCK_REGION } from "./constants.js";
|
|
2
2
|
export class Configuration {
|
|
3
3
|
_openaiApiKey;
|
|
4
4
|
_openaiApiBase;
|
|
@@ -15,6 +15,8 @@ export class Configuration {
|
|
|
15
15
|
_xaiApiBase;
|
|
16
16
|
_mistralApiKey;
|
|
17
17
|
_mistralApiBase;
|
|
18
|
+
_typesafeApiKey;
|
|
19
|
+
_typesafeApiBase;
|
|
18
20
|
_bedrockApiKey;
|
|
19
21
|
_bedrockAccessKeyId;
|
|
20
22
|
_bedrockSecretAccessKey;
|
|
@@ -117,6 +119,21 @@ export class Configuration {
|
|
|
117
119
|
set mistralApiBase(v) {
|
|
118
120
|
this._mistralApiBase = v;
|
|
119
121
|
}
|
|
122
|
+
get typesafeApiKey() {
|
|
123
|
+
// TYPESAFE_API_KEY matches the provider's name; JEV_API_KEY is accepted too.
|
|
124
|
+
return (this._typesafeApiKey ??
|
|
125
|
+
process.env.TYPESAFE_API_KEY?.trim() ??
|
|
126
|
+
process.env.JEV_API_KEY?.trim());
|
|
127
|
+
}
|
|
128
|
+
set typesafeApiKey(v) {
|
|
129
|
+
this._typesafeApiKey = v;
|
|
130
|
+
}
|
|
131
|
+
get typesafeApiBase() {
|
|
132
|
+
return (this._typesafeApiBase ?? process.env.TYPESAFE_API_BASE?.trim() ?? DEFAULT_TYPESAFE_BASE_URL);
|
|
133
|
+
}
|
|
134
|
+
set typesafeApiBase(v) {
|
|
135
|
+
this._typesafeApiBase = v;
|
|
136
|
+
}
|
|
120
137
|
// AWS Bedrock configuration
|
|
121
138
|
get bedrockApiKey() {
|
|
122
139
|
return this._bedrockApiKey ?? process.env.AWS_BEARER_TOKEN_BEDROCK?.trim();
|
package/dist/constants.d.ts
CHANGED
|
@@ -6,6 +6,11 @@ export declare enum ToolExecutionMode {
|
|
|
6
6
|
export declare const DEFAULT_MAX_TOOL_CALLS = 5;
|
|
7
7
|
export declare const DEFAULT_MAX_CORRECTIONS = 5;
|
|
8
8
|
export declare const DEFAULT_MAX_RETRIES = 2;
|
|
9
|
+
/**
|
|
10
|
+
* A tool execution mode as callers may pass it: the enum member or its string
|
|
11
|
+
* value, so `withToolExecution("confirm")` compiles as the docs write it.
|
|
12
|
+
*/
|
|
13
|
+
export type ToolExecutionModeInput = ToolExecutionMode | `${ToolExecutionMode}`;
|
|
9
14
|
export declare const DEFAULT_TOOL_EXECUTION = ToolExecutionMode.AUTO;
|
|
10
15
|
export declare const DEFAULT_TOOL_CONCURRENCY = false;
|
|
11
16
|
export declare const DEFAULT_REQUEST_TIMEOUT = 30000;
|
|
@@ -18,11 +23,13 @@ export declare const DEFAULT_OPENROUTER_BASE_URL = "https://openrouter.ai/api/v1
|
|
|
18
23
|
export declare const DEFAULT_OLLAMA_BASE_URL = "http://localhost:11434/v1";
|
|
19
24
|
export declare const DEFAULT_XAI_BASE_URL = "https://api.x.ai/v1";
|
|
20
25
|
export declare const DEFAULT_MISTRAL_BASE_URL = "https://api.mistral.ai/v1";
|
|
26
|
+
export declare const DEFAULT_TYPESAFE_BASE_URL = "https://api.typesafe.ai";
|
|
21
27
|
export declare const DEFAULT_MODELS: {
|
|
22
28
|
readonly TRANSCRIPTION: "whisper-1";
|
|
23
29
|
readonly MODERATION: "omni-moderation-latest";
|
|
24
30
|
readonly EMBEDDING: "text-embedding-3-small";
|
|
25
31
|
readonly IMAGE: "dall-e-3";
|
|
32
|
+
readonly JUDGMENT: "jev-latest";
|
|
26
33
|
};
|
|
27
34
|
export declare const DEFAULT_BEDROCK_REGION = "us-east-1";
|
|
28
35
|
//# sourceMappingURL=constants.d.ts.map
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,oBAAY,iBAAiB;IAC3B,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAGxC,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,sBAAsB,yBAAyB,CAAC;AAC7D,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAC9C,eAAO,MAAM,uBAAuB,QAAQ,CAAC;AAC7C,eAAO,MAAM,kBAAkB,OAAO,CAAC;AAEvC,eAAO,MAAM,uBAAuB,8BAA8B,CAAC;AACnE,eAAO,MAAM,0BAA0B,iCAAiC,CAAC;AACzE,eAAO,MAAM,uBAAuB,qDAAqD,CAAC;AAC1F,eAAO,MAAM,yBAAyB,6BAA6B,CAAC;AACpE,eAAO,MAAM,2BAA2B,iCAAiC,CAAC;AAC1E,eAAO,MAAM,uBAAuB,8BAA8B,CAAC;AACnE,eAAO,MAAM,oBAAoB,wBAAwB,CAAC;AAC1D,eAAO,MAAM,wBAAwB,8BAA8B,CAAC;AAEpE,eAAO,MAAM,cAAc
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,oBAAY,iBAAiB;IAC3B,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAGxC,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG,iBAAiB,GAAG,GAAG,iBAAiB,EAAE,CAAC;AAEhF,eAAO,MAAM,sBAAsB,yBAAyB,CAAC;AAC7D,eAAO,MAAM,wBAAwB,QAAQ,CAAC;AAC9C,eAAO,MAAM,uBAAuB,QAAQ,CAAC;AAC7C,eAAO,MAAM,kBAAkB,OAAO,CAAC;AAEvC,eAAO,MAAM,uBAAuB,8BAA8B,CAAC;AACnE,eAAO,MAAM,0BAA0B,iCAAiC,CAAC;AACzE,eAAO,MAAM,uBAAuB,qDAAqD,CAAC;AAC1F,eAAO,MAAM,yBAAyB,6BAA6B,CAAC;AACpE,eAAO,MAAM,2BAA2B,iCAAiC,CAAC;AAC1E,eAAO,MAAM,uBAAuB,8BAA8B,CAAC;AACnE,eAAO,MAAM,oBAAoB,wBAAwB,CAAC;AAC1D,eAAO,MAAM,wBAAwB,8BAA8B,CAAC;AAEpE,eAAO,MAAM,yBAAyB,4BAA4B,CAAC;AAEnE,eAAO,MAAM,cAAc;;;;;;CAMjB,CAAC;AAEX,eAAO,MAAM,sBAAsB,cAAc,CAAC"}
|
package/dist/constants.js
CHANGED
|
@@ -21,10 +21,12 @@ export const DEFAULT_OPENROUTER_BASE_URL = "https://openrouter.ai/api/v1";
|
|
|
21
21
|
export const DEFAULT_OLLAMA_BASE_URL = "http://localhost:11434/v1";
|
|
22
22
|
export const DEFAULT_XAI_BASE_URL = "https://api.x.ai/v1";
|
|
23
23
|
export const DEFAULT_MISTRAL_BASE_URL = "https://api.mistral.ai/v1";
|
|
24
|
+
export const DEFAULT_TYPESAFE_BASE_URL = "https://api.typesafe.ai";
|
|
24
25
|
export const DEFAULT_MODELS = {
|
|
25
26
|
TRANSCRIPTION: "whisper-1",
|
|
26
27
|
MODERATION: "omni-moderation-latest",
|
|
27
28
|
EMBEDDING: "text-embedding-3-small",
|
|
28
|
-
IMAGE: "dall-e-3"
|
|
29
|
+
IMAGE: "dall-e-3",
|
|
30
|
+
JUDGMENT: "jev-latest"
|
|
29
31
|
};
|
|
30
32
|
export const DEFAULT_BEDROCK_REGION = "us-east-1";
|
package/dist/index.d.ts
CHANGED
|
@@ -8,7 +8,13 @@ export * from "./chat/ChatStream.js";
|
|
|
8
8
|
export * from "./streaming/Stream.js";
|
|
9
9
|
export * from "./errors/index.js";
|
|
10
10
|
export { Agent, defineAgent } from "./agent/Agent.js";
|
|
11
|
-
export
|
|
11
|
+
export { Judge, defineJudge } from "./judge/Judge.js";
|
|
12
|
+
export type { JudgeCallOptions, QuestionsOf } from "./judge/Judge.js";
|
|
13
|
+
export { probability, choice, score } from "./judge/Question.js";
|
|
14
|
+
export type { Description, JsonValue, ProbabilityCriteria, ProbabilityQuestion, ChoiceQuestion, ScoreQuestion, QuestionDefinition, QuestionMap } from "./judge/Question.js";
|
|
15
|
+
export { Judgment, ProbabilityAnswer, ChoiceAnswer, ScoreAnswer } from "./judge/Judgment.js";
|
|
16
|
+
export type { Answer, AnswerFor, AnswersOf, JudgmentResult } from "./judge/Judgment.js";
|
|
17
|
+
export type { AgentConfig, DefinedAgent } from "./agent/Agent.js";
|
|
12
18
|
export type { Middleware, MiddlewareContext } from "./types/Middleware.js";
|
|
13
19
|
export * from "./middlewares/index.js";
|
|
14
20
|
export { z } from "zod";
|
|
@@ -18,9 +24,10 @@ export type { NodeLLMConfig } from "./config.js";
|
|
|
18
24
|
export { providerRegistry, ProviderInterceptor } from "./providers/registry.js";
|
|
19
25
|
export { Schema } from "./schema/Schema.js";
|
|
20
26
|
export { BaseProvider } from "./providers/BaseProvider.js";
|
|
21
|
-
export { Provider, ProviderCapabilities, ChatRequest, ChatResponse, ChatChunk, ThinkingConfig, ThinkingResult, Usage, ImageRequest, ImageResponse, TranscriptionRequest, TranscriptionResponse, TranscriptionSegment, TranscriptionWord, ModerationRequest, ModerationResponse, ModerationResult, EmbeddingRequest, EmbeddingResponse, ToolChoice } from "./providers/Provider.js";
|
|
27
|
+
export { Provider, ProviderCapabilities, ChatRequest, ChatResponse, ChatChunk, ThinkingConfig, ThinkingResult, Usage, ImageRequest, ImageResponse, TranscriptionRequest, TranscriptionResponse, TranscriptionSegment, TranscriptionWord, ModerationRequest, ModerationResponse, ModerationResult, EmbeddingRequest, EmbeddingResponse, JudgmentRequest, JudgmentResponse, JudgmentInput, JudgmentAnswerData, ToolChoice } from "./providers/Provider.js";
|
|
22
28
|
export { resolveModelAlias } from "./model_aliases.js";
|
|
23
29
|
export { default as MODEL_ALIASES } from "./aliases.js";
|
|
30
|
+
export type { ToolExecutionModeInput } from "./constants.js";
|
|
24
31
|
export { ToolExecutionMode, DEFAULT_MAX_TOOL_CALLS, DEFAULT_MAX_RETRIES, DEFAULT_TOOL_EXECUTION, DEFAULT_OLLAMA_BASE_URL, DEFAULT_MODELS } from "./constants.js";
|
|
25
32
|
export { fetchWithTimeout } from "./utils/fetch.js";
|
|
26
33
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACtD,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACtD,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AACjE,YAAY,EACV,WAAW,EACX,SAAS,EACT,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,WAAW,EACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC7F,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACxF,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAClE,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC3E,cAAc,wBAAwB,CAAC;AAEvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,OAAO,EACP,aAAa,EACb,SAAS,EACT,WAAW,EACX,aAAa,EACb,UAAU,EACV,SAAS,EACT,aAAa,EACb,eAAe,EAChB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EACL,QAAQ,EACR,oBAAoB,EACpB,WAAW,EACX,YAAY,EACZ,SAAS,EACT,cAAc,EACd,cAAc,EACd,KAAK,EACL,YAAY,EACZ,aAAa,EACb,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,UAAU,EACX,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,cAAc,CAAC;AACxD,YAAY,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACvB,cAAc,EACf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -8,6 +8,9 @@ export * from "./chat/ChatStream.js";
|
|
|
8
8
|
export * from "./streaming/Stream.js";
|
|
9
9
|
export * from "./errors/index.js";
|
|
10
10
|
export { Agent, defineAgent } from "./agent/Agent.js";
|
|
11
|
+
export { Judge, defineJudge } from "./judge/Judge.js";
|
|
12
|
+
export { probability, choice, score } from "./judge/Question.js";
|
|
13
|
+
export { Judgment, ProbabilityAnswer, ChoiceAnswer, ScoreAnswer } from "./judge/Judgment.js";
|
|
11
14
|
export * from "./middlewares/index.js";
|
|
12
15
|
export { z } from "zod";
|
|
13
16
|
export { NodeLLM, LegacyNodeLLM, createLLM, NodeLLMCore, Transcription, Moderation, Embedding, ModelRegistry, PricingRegistry } from "./llm.js";
|