@node-llm/core 1.7.0 → 1.9.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 +9 -8
- package/dist/aliases.d.ts +216 -0
- package/dist/aliases.d.ts.map +1 -1
- package/dist/aliases.js +241 -25
- package/dist/chat/Chat.d.ts +8 -4
- package/dist/chat/Chat.d.ts.map +1 -1
- package/dist/chat/Chat.js +33 -5
- package/dist/chat/ChatResponse.d.ts +28 -3
- package/dist/chat/ChatResponse.d.ts.map +1 -1
- package/dist/chat/ChatResponse.js +79 -6
- package/dist/chat/ChatStream.d.ts.map +1 -1
- package/dist/chat/ChatStream.js +13 -1
- package/dist/chat/Content.d.ts +7 -0
- package/dist/chat/Content.d.ts.map +1 -1
- package/dist/config.d.ts +28 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +58 -6
- package/dist/constants.d.ts +6 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +6 -0
- package/dist/errors/index.d.ts +20 -2
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +31 -3
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/llm.d.ts.map +1 -1
- package/dist/llm.js +3 -2
- package/dist/models/ModelRegistry.d.ts.map +1 -1
- package/dist/models/ModelRegistry.js +4 -2
- package/dist/models/PricingRegistry.js +3 -3
- package/dist/models/models.json +16696 -0
- package/dist/providers/Provider.d.ts +5 -0
- package/dist/providers/Provider.d.ts.map +1 -1
- package/dist/providers/anthropic/AnthropicProvider.d.ts.map +1 -1
- package/dist/providers/anthropic/AnthropicProvider.js +2 -1
- package/dist/providers/anthropic/Capabilities.d.ts +1 -0
- package/dist/providers/anthropic/Capabilities.d.ts.map +1 -1
- package/dist/providers/anthropic/Capabilities.js +8 -5
- package/dist/providers/anthropic/Chat.d.ts.map +1 -1
- package/dist/providers/anthropic/Chat.js +2 -1
- package/dist/providers/anthropic/Errors.d.ts.map +1 -1
- package/dist/providers/anthropic/Errors.js +15 -1
- package/dist/providers/anthropic/Streaming.d.ts.map +1 -1
- package/dist/providers/anthropic/Streaming.js +19 -3
- package/dist/providers/bedrock/BedrockProvider.d.ts +53 -0
- package/dist/providers/bedrock/BedrockProvider.d.ts.map +1 -0
- package/dist/providers/bedrock/BedrockProvider.js +107 -0
- package/dist/providers/bedrock/Capabilities.d.ts +50 -0
- package/dist/providers/bedrock/Capabilities.d.ts.map +1 -0
- package/dist/providers/bedrock/Capabilities.js +233 -0
- package/dist/providers/bedrock/Chat.d.ts +26 -0
- package/dist/providers/bedrock/Chat.d.ts.map +1 -0
- package/dist/providers/bedrock/Chat.js +152 -0
- package/dist/providers/bedrock/Embeddings.d.ts +22 -0
- package/dist/providers/bedrock/Embeddings.d.ts.map +1 -0
- package/dist/providers/bedrock/Embeddings.js +100 -0
- package/dist/providers/bedrock/Errors.d.ts +2 -0
- package/dist/providers/bedrock/Errors.d.ts.map +1 -0
- package/dist/providers/bedrock/Errors.js +51 -0
- package/dist/providers/bedrock/Image.d.ts +33 -0
- package/dist/providers/bedrock/Image.d.ts.map +1 -0
- package/dist/providers/bedrock/Image.js +154 -0
- package/dist/providers/bedrock/Models.d.ts +34 -0
- package/dist/providers/bedrock/Models.d.ts.map +1 -0
- package/dist/providers/bedrock/Models.js +131 -0
- package/dist/providers/bedrock/Moderation.d.ts +23 -0
- package/dist/providers/bedrock/Moderation.d.ts.map +1 -0
- package/dist/providers/bedrock/Moderation.js +138 -0
- package/dist/providers/bedrock/Streaming.d.ts +21 -0
- package/dist/providers/bedrock/Streaming.d.ts.map +1 -0
- package/dist/providers/bedrock/Streaming.js +239 -0
- package/dist/providers/bedrock/config.d.ts +57 -0
- package/dist/providers/bedrock/config.d.ts.map +1 -0
- package/dist/providers/bedrock/config.js +33 -0
- package/dist/providers/bedrock/index.d.ts +8 -0
- package/dist/providers/bedrock/index.d.ts.map +1 -0
- package/dist/providers/bedrock/index.js +30 -0
- package/dist/providers/bedrock/mapper.d.ts +37 -0
- package/dist/providers/bedrock/mapper.d.ts.map +1 -0
- package/dist/providers/bedrock/mapper.js +204 -0
- package/dist/providers/bedrock/types.d.ts +179 -0
- package/dist/providers/bedrock/types.d.ts.map +1 -0
- package/dist/providers/bedrock/types.js +7 -0
- package/dist/providers/deepseek/Capabilities.d.ts +3 -2
- package/dist/providers/deepseek/Capabilities.d.ts.map +1 -1
- package/dist/providers/deepseek/Capabilities.js +19 -5
- package/dist/providers/deepseek/Chat.d.ts.map +1 -1
- package/dist/providers/deepseek/Chat.js +2 -2
- package/dist/providers/deepseek/DeepSeekProvider.d.ts.map +1 -1
- package/dist/providers/deepseek/DeepSeekProvider.js +2 -1
- package/dist/providers/deepseek/Errors.d.ts +2 -0
- package/dist/providers/deepseek/Errors.d.ts.map +1 -0
- package/dist/providers/deepseek/Errors.js +45 -0
- package/dist/providers/deepseek/Streaming.d.ts.map +1 -1
- package/dist/providers/deepseek/Streaming.js +13 -2
- package/dist/providers/gemini/Capabilities.d.ts +1 -0
- package/dist/providers/gemini/Capabilities.d.ts.map +1 -1
- package/dist/providers/gemini/Capabilities.js +9 -6
- package/dist/providers/gemini/Chat.d.ts.map +1 -1
- package/dist/providers/gemini/Chat.js +6 -23
- package/dist/providers/gemini/Errors.d.ts.map +1 -1
- package/dist/providers/gemini/Errors.js +13 -1
- package/dist/providers/gemini/GeminiProvider.d.ts.map +1 -1
- package/dist/providers/gemini/GeminiProvider.js +2 -1
- package/dist/providers/ollama/Capabilities.d.ts.map +1 -1
- package/dist/providers/ollama/Capabilities.js +4 -1
- package/dist/providers/ollama/OllamaProvider.d.ts.map +1 -1
- package/dist/providers/ollama/OllamaProvider.js +2 -2
- package/dist/providers/openai/Capabilities.d.ts +1 -0
- package/dist/providers/openai/Capabilities.d.ts.map +1 -1
- package/dist/providers/openai/Capabilities.js +14 -11
- package/dist/providers/openai/Errors.d.ts.map +1 -1
- package/dist/providers/openai/Errors.js +31 -5
- package/dist/providers/openai/OpenAIProvider.d.ts.map +1 -1
- package/dist/providers/openai/OpenAIProvider.js +2 -1
- package/dist/providers/openai/Streaming.d.ts.map +1 -1
- package/dist/providers/openai/Streaming.js +10 -0
- package/dist/providers/openrouter/OpenRouterProvider.d.ts.map +1 -1
- package/dist/providers/openrouter/OpenRouterProvider.js +2 -1
- package/dist/providers/registry.d.ts +5 -1
- package/dist/providers/registry.d.ts.map +1 -1
- package/dist/providers/registry.js +12 -3
- package/dist/utils/AwsSigV4.d.ts +51 -0
- package/dist/utils/AwsSigV4.d.ts.map +1 -0
- package/dist/utils/AwsSigV4.js +209 -0
- package/dist/utils/json.d.ts +6 -0
- package/dist/utils/json.d.ts.map +1 -0
- package/dist/utils/json.js +43 -0
- package/package.json +1 -1
- package/dist/models/models.d.ts +0 -327
- package/dist/models/models.d.ts.map +0 -1
- package/dist/models/models.js +0 -11138
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatResponse.d.ts","sourceRoot":"","sources":["../../src/chat/ChatResponse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatResponse.d.ts","sourceRoot":"","sources":["../../src/chat/ChatResponse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAI7C;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,MAAM;aAM1B,KAAK,EAAE,KAAK;aACZ,KAAK,EAAE,MAAM;aACb,QAAQ,EAAE,MAAM;aAChB,QAAQ,CAAC,EAAE,cAAc;aACzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI;aACzB,UAAU,CAAC,EAAE,QAAQ,EAAE;aACvB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI;aAC7B,MAAM,CAAC,EAAE,MAAM;IAZjC,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,gBAAgB,CAAsB;gBAG5C,OAAO,EAAE,MAAM,EACC,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,cAAc,YAAA,EACzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,YAAA,EACzB,UAAU,CAAC,EAAE,QAAQ,EAAE,YAAA,EACvB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,YAAA,EAC7B,MAAM,CAAC,EAAE,MAAM,YAAA;IAKjC,IAAI,YAAY,8BAEf;IAED,IAAI,YAAY,WAEf;IACD,IAAI,aAAa,WAEhB;IACD,IAAI,YAAY,WAEf;IACD,IAAI,aAAa,uBAEhB;IACD,IAAI,IAAI,uBAEP;IACD,IAAI,UAAU,uBAEb;IACD,IAAI,WAAW,uBAEd;IAGD,IAAI,WAAW,WAEd;IACD,IAAI,YAAY,WAEf;IACD,IAAI,WAAW,WAEd;IACD,IAAI,YAAY,uBAEf;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;;OAGG;IACH,IAAI,IAAI;;;;;;;;MAUP;IAED;;OAEG;IACH,IAAI,GAAG;;;;;;;;MAEN;IAED,QAAQ;IAIR;;OAEG;IACH,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,kBAAkB;IAcnD;;OAEG;IACH,IAAI,MAAM,IAAI,OAAO,CAOpB;IAED;;;;OAIG;IACH,IAAI,IAAI,IAAI,OAAO,CAkBlB;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,OAAO,CAMtB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAQrB;IAED;;OAEG;IACH,IAAI,eAAe,IAAI,KAAK,GAAG,IAAI,CAOlC;CACF"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { extractJson } from "../utils/json.js";
|
|
2
|
+
import { z } from "zod";
|
|
1
3
|
/**
|
|
2
4
|
* Enhanced string that includes token usage metadata.
|
|
3
5
|
* Behaves like a regular string but has .usage and .input_tokens etc.
|
|
@@ -9,7 +11,11 @@ export class ChatResponseString extends String {
|
|
|
9
11
|
thinking;
|
|
10
12
|
reasoning;
|
|
11
13
|
tool_calls;
|
|
12
|
-
|
|
14
|
+
finish_reason;
|
|
15
|
+
schema;
|
|
16
|
+
_cachedData = undefined;
|
|
17
|
+
_validationError = null;
|
|
18
|
+
constructor(content, usage, model, provider, thinking, reasoning, tool_calls, finish_reason, schema) {
|
|
13
19
|
super(content);
|
|
14
20
|
this.usage = usage;
|
|
15
21
|
this.model = model;
|
|
@@ -17,6 +23,11 @@ export class ChatResponseString extends String {
|
|
|
17
23
|
this.thinking = thinking;
|
|
18
24
|
this.reasoning = reasoning;
|
|
19
25
|
this.tool_calls = tool_calls;
|
|
26
|
+
this.finish_reason = finish_reason;
|
|
27
|
+
this.schema = schema;
|
|
28
|
+
}
|
|
29
|
+
get finishReason() {
|
|
30
|
+
return this.finish_reason;
|
|
20
31
|
}
|
|
21
32
|
get input_tokens() {
|
|
22
33
|
return this.usage.input_tokens;
|
|
@@ -69,7 +80,8 @@ export class ChatResponseString extends String {
|
|
|
69
80
|
provider: this.provider,
|
|
70
81
|
thinking: this.thinking,
|
|
71
82
|
reasoning: this.reasoning,
|
|
72
|
-
tool_calls: this.tool_calls
|
|
83
|
+
tool_calls: this.tool_calls,
|
|
84
|
+
finish_reason: this.finish_reason
|
|
73
85
|
};
|
|
74
86
|
}
|
|
75
87
|
/**
|
|
@@ -85,18 +97,79 @@ export class ChatResponseString extends String {
|
|
|
85
97
|
* Return a new ChatResponseString with modified content but preserved metadata.
|
|
86
98
|
*/
|
|
87
99
|
withContent(newContent) {
|
|
88
|
-
return new ChatResponseString(newContent, this.usage, this.model, this.provider, this.thinking, this.reasoning, this.tool_calls);
|
|
100
|
+
return new ChatResponseString(newContent, this.usage, this.model, this.provider, this.thinking, this.reasoning, this.tool_calls, this.finish_reason, this.schema);
|
|
89
101
|
}
|
|
90
102
|
/**
|
|
91
|
-
* Attempt to parse the content as JSON.
|
|
92
|
-
* Returns the parsed object or null if parsing fails.
|
|
103
|
+
* Attempt to extract and parse the content as JSON.
|
|
93
104
|
*/
|
|
94
105
|
get parsed() {
|
|
95
106
|
try {
|
|
96
|
-
|
|
107
|
+
const cleanJson = extractJson(this.valueOf());
|
|
108
|
+
return JSON.parse(cleanJson);
|
|
109
|
+
}
|
|
110
|
+
catch {
|
|
111
|
+
return null;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Access the parsed data.
|
|
116
|
+
* If a Zod schema was provided via .withSchema(), this will validate the data.
|
|
117
|
+
* Throws ZodError if validation fails.
|
|
118
|
+
*/
|
|
119
|
+
get data() {
|
|
120
|
+
if (this._cachedData !== undefined)
|
|
121
|
+
return this._cachedData;
|
|
122
|
+
if (this._validationError)
|
|
123
|
+
throw this._validationError;
|
|
124
|
+
const json = this.parsed;
|
|
125
|
+
if (this.schema && this.schema.definition.schema instanceof z.ZodType) {
|
|
126
|
+
try {
|
|
127
|
+
this._cachedData = this.schema.definition.schema.parse(json);
|
|
128
|
+
return this._cachedData;
|
|
129
|
+
}
|
|
130
|
+
catch (e) {
|
|
131
|
+
this._validationError = e;
|
|
132
|
+
throw e;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
this._cachedData = json;
|
|
136
|
+
return json;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Safe version of .data that returns null instead of throwing on validation error.
|
|
140
|
+
*/
|
|
141
|
+
get safeData() {
|
|
142
|
+
try {
|
|
143
|
+
return this.data;
|
|
97
144
|
}
|
|
98
145
|
catch {
|
|
99
146
|
return null;
|
|
100
147
|
}
|
|
101
148
|
}
|
|
149
|
+
/**
|
|
150
|
+
* Returns true if the content contains valid JSON that matches the schema (if provided).
|
|
151
|
+
*/
|
|
152
|
+
get isValid() {
|
|
153
|
+
if (!this.schema)
|
|
154
|
+
return this.parsed !== null;
|
|
155
|
+
try {
|
|
156
|
+
void this.data;
|
|
157
|
+
return true;
|
|
158
|
+
}
|
|
159
|
+
catch {
|
|
160
|
+
return false;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Returns the validation error if the content doesn't match the schema.
|
|
165
|
+
*/
|
|
166
|
+
get validationError() {
|
|
167
|
+
try {
|
|
168
|
+
void this.data;
|
|
169
|
+
return null;
|
|
170
|
+
}
|
|
171
|
+
catch (e) {
|
|
172
|
+
return e;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
102
175
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatStream.d.ts","sourceRoot":"","sources":["../../src/chat/ChatStream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,WAAW,EAIZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAyB,MAAM,0BAA0B,CAAC;AAEtF,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAGhD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatStream.d.ts","sourceRoot":"","sources":["../../src/chat/ChatStream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,WAAW,EAIZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAyB,MAAM,0BAA0B,CAAC;AAEtF,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAGhD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAUvC;;;GAGG;AACH,qBAAa,UAAU;IAKnB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAN1B,OAAO,CAAC,QAAQ,CAAY;IAC5B,OAAO,CAAC,cAAc,CAAY;gBAGf,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,WAAgB,EAC1C,QAAQ,CAAC,EAAE,OAAO,EAAE,EACpB,cAAc,CAAC,EAAE,OAAO,EAAE;IA6B5B,IAAI,OAAO,IAAI,SAAS,OAAO,EAAE,CAEhC;IAED,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,WAAW,EAAE,EAAE,OAAO,GAAE,UAAe,GAAG,MAAM,CAAC,SAAS,CAAC;CA0RrF"}
|
package/dist/chat/ChatStream.js
CHANGED
|
@@ -8,6 +8,7 @@ import { toJsonSchema } from "../schema/to-json-schema.js";
|
|
|
8
8
|
import { ChatValidator } from "./Validation.js";
|
|
9
9
|
import { ToolHandler } from "./ToolHandler.js";
|
|
10
10
|
import { logger } from "../utils/logger.js";
|
|
11
|
+
import { ModelRegistry } from "../models/ModelRegistry.js";
|
|
11
12
|
/**
|
|
12
13
|
* Internal handler for chat streaming logic.
|
|
13
14
|
* Wraps the provider's stream with side effects like history updates and events.
|
|
@@ -97,12 +98,22 @@ export class ChatStream {
|
|
|
97
98
|
const totalUsage = { input_tokens: 0, output_tokens: 0, total_tokens: 0 };
|
|
98
99
|
const trackUsage = (u) => {
|
|
99
100
|
if (u) {
|
|
101
|
+
// Fallback cost calculation if provider didn't return it
|
|
102
|
+
if (u.cost === undefined) {
|
|
103
|
+
const withCost = ModelRegistry.calculateCost(u, model, provider.id);
|
|
104
|
+
u.cost = withCost.cost;
|
|
105
|
+
u.input_cost = withCost.input_cost;
|
|
106
|
+
u.output_cost = withCost.output_cost;
|
|
107
|
+
}
|
|
100
108
|
totalUsage.input_tokens += u.input_tokens;
|
|
101
109
|
totalUsage.output_tokens += u.output_tokens;
|
|
102
110
|
totalUsage.total_tokens += u.total_tokens;
|
|
103
111
|
if (u.cached_tokens) {
|
|
104
112
|
totalUsage.cached_tokens = (totalUsage.cached_tokens ?? 0) + u.cached_tokens;
|
|
105
113
|
}
|
|
114
|
+
if (u.cost !== undefined) {
|
|
115
|
+
totalUsage.cost = (totalUsage.cost ?? 0) + u.cost;
|
|
116
|
+
}
|
|
106
117
|
}
|
|
107
118
|
};
|
|
108
119
|
while (true) {
|
|
@@ -169,7 +180,8 @@ export class ChatStream {
|
|
|
169
180
|
trackUsage(currentTurnUsage);
|
|
170
181
|
}
|
|
171
182
|
}
|
|
172
|
-
let assistantResponse = new ChatResponseString(fullContent || "", currentTurnUsage || { input_tokens: 0, output_tokens: 0, total_tokens: 0 }, model, provider.id, thinking.text || thinking.signature ? thinking : undefined, fullReasoning || undefined
|
|
183
|
+
let assistantResponse = new ChatResponseString(fullContent || "", currentTurnUsage || { input_tokens: 0, output_tokens: 0, total_tokens: 0 }, model, provider.id, thinking.text || thinking.signature ? thinking : undefined, fullReasoning || undefined, toolCalls, undefined, // finish_reason
|
|
184
|
+
options.schema);
|
|
173
185
|
if (options.onAfterResponse) {
|
|
174
186
|
const result = await options.onAfterResponse(assistantResponse);
|
|
175
187
|
if (result) {
|
package/dist/chat/Content.d.ts
CHANGED
|
@@ -1,22 +1,29 @@
|
|
|
1
|
+
export type CacheControl = {
|
|
2
|
+
type: "ephemeral";
|
|
3
|
+
};
|
|
1
4
|
export type ContentPart = {
|
|
2
5
|
type: "text";
|
|
3
6
|
text: string;
|
|
7
|
+
cache_control?: CacheControl;
|
|
4
8
|
} | {
|
|
5
9
|
type: "image_url";
|
|
6
10
|
image_url: {
|
|
7
11
|
url: string;
|
|
8
12
|
};
|
|
13
|
+
cache_control?: CacheControl;
|
|
9
14
|
} | {
|
|
10
15
|
type: "input_audio";
|
|
11
16
|
input_audio: {
|
|
12
17
|
data: string;
|
|
13
18
|
format: string;
|
|
14
19
|
};
|
|
20
|
+
cache_control?: CacheControl;
|
|
15
21
|
} | {
|
|
16
22
|
type: "video_url";
|
|
17
23
|
video_url: {
|
|
18
24
|
url: string;
|
|
19
25
|
};
|
|
26
|
+
cache_control?: CacheControl;
|
|
20
27
|
};
|
|
21
28
|
export declare const isBinaryContent: (part: ContentPart) => boolean;
|
|
22
29
|
export declare const isTextContent: (part: ContentPart) => boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Content.d.ts","sourceRoot":"","sources":["../../src/chat/Content.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"Content.d.ts","sourceRoot":"","sources":["../../src/chat/Content.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,CAAC;AAEjD,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,YAAY,CAAA;CAAE,GAC5D;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAAC,aAAa,CAAC,EAAE,YAAY,CAAA;CAAE,GAC/E;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,WAAW,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9C,aAAa,CAAC,EAAE,YAAY,CAAC;CAC9B,GACD;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAAC,aAAa,CAAC,EAAE,YAAY,CAAA;CAAE,CAAC;AAEpF,eAAO,MAAM,eAAe,GAAI,MAAM,WAAW,KAAG,OACmC,CAAC;AAExF,eAAO,MAAM,aAAa,GAAI,MAAM,WAAW,KAAG,OAA+B,CAAC;AAElF,eAAO,MAAM,qBAAqB,GAAI,OAAO,WAAW,EAAE;eAEZ;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE;;CAG7E,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,SAAS,MAAM,GAAG,WAAW,EAAE,EAC/B,OAAO,WAAW,EAAE,KACnB,cAwBF,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,WAAW,EAAE,CAAC"}
|
package/dist/config.d.ts
CHANGED
|
@@ -14,6 +14,13 @@ export interface NodeLLMConfig {
|
|
|
14
14
|
ollamaApiBase?: string;
|
|
15
15
|
openrouterApiKey?: string;
|
|
16
16
|
openrouterApiBase?: string;
|
|
17
|
+
bedrockApiKey?: string;
|
|
18
|
+
bedrockAccessKeyId?: string;
|
|
19
|
+
bedrockSecretAccessKey?: string;
|
|
20
|
+
bedrockSessionToken?: string;
|
|
21
|
+
bedrockRegion?: string;
|
|
22
|
+
bedrockGuardrailIdentifier?: string;
|
|
23
|
+
bedrockGuardrailVersion?: string;
|
|
17
24
|
debug?: boolean;
|
|
18
25
|
maxToolCalls?: number;
|
|
19
26
|
maxRetries?: number;
|
|
@@ -35,6 +42,13 @@ export declare class Configuration implements NodeLLMConfig {
|
|
|
35
42
|
private _ollamaApiBase?;
|
|
36
43
|
private _openrouterApiKey?;
|
|
37
44
|
private _openrouterApiBase?;
|
|
45
|
+
private _bedrockApiKey?;
|
|
46
|
+
private _bedrockAccessKeyId?;
|
|
47
|
+
private _bedrockSecretAccessKey?;
|
|
48
|
+
private _bedrockSessionToken?;
|
|
49
|
+
private _bedrockRegion?;
|
|
50
|
+
private _bedrockGuardrailIdentifier?;
|
|
51
|
+
private _bedrockGuardrailVersion?;
|
|
38
52
|
private _debug?;
|
|
39
53
|
private _provider?;
|
|
40
54
|
get openaiApiKey(): string | undefined;
|
|
@@ -59,6 +73,20 @@ export declare class Configuration implements NodeLLMConfig {
|
|
|
59
73
|
set openrouterApiKey(v: string | undefined);
|
|
60
74
|
get openrouterApiBase(): string | undefined;
|
|
61
75
|
set openrouterApiBase(v: string | undefined);
|
|
76
|
+
get bedrockApiKey(): string | undefined;
|
|
77
|
+
set bedrockApiKey(v: string | undefined);
|
|
78
|
+
get bedrockAccessKeyId(): string | undefined;
|
|
79
|
+
set bedrockAccessKeyId(v: string | undefined);
|
|
80
|
+
get bedrockSecretAccessKey(): string | undefined;
|
|
81
|
+
set bedrockSecretAccessKey(v: string | undefined);
|
|
82
|
+
get bedrockSessionToken(): string | undefined;
|
|
83
|
+
set bedrockSessionToken(v: string | undefined);
|
|
84
|
+
get bedrockRegion(): string | undefined;
|
|
85
|
+
set bedrockRegion(v: string | undefined);
|
|
86
|
+
get bedrockGuardrailIdentifier(): string | undefined;
|
|
87
|
+
set bedrockGuardrailIdentifier(v: string | undefined);
|
|
88
|
+
get bedrockGuardrailVersion(): string | undefined;
|
|
89
|
+
set bedrockGuardrailVersion(v: string | undefined);
|
|
62
90
|
get debug(): boolean | undefined;
|
|
63
91
|
set debug(v: boolean | undefined);
|
|
64
92
|
get provider(): 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;
|
|
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_OLLAMA_BASE_URL } from "./constants.js";
|
|
1
|
+
import { DEFAULT_MAX_TOOL_CALLS, DEFAULT_MAX_RETRIES, DEFAULT_REQUEST_TIMEOUT, DEFAULT_MAX_TOKENS, DEFAULT_TOOL_EXECUTION, 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_BEDROCK_REGION } from "./constants.js";
|
|
2
2
|
export class Configuration {
|
|
3
3
|
_openaiApiKey;
|
|
4
4
|
_openaiApiBase;
|
|
@@ -11,6 +11,13 @@ export class Configuration {
|
|
|
11
11
|
_ollamaApiBase;
|
|
12
12
|
_openrouterApiKey;
|
|
13
13
|
_openrouterApiBase;
|
|
14
|
+
_bedrockApiKey;
|
|
15
|
+
_bedrockAccessKeyId;
|
|
16
|
+
_bedrockSecretAccessKey;
|
|
17
|
+
_bedrockSessionToken;
|
|
18
|
+
_bedrockRegion;
|
|
19
|
+
_bedrockGuardrailIdentifier;
|
|
20
|
+
_bedrockGuardrailVersion;
|
|
14
21
|
_debug;
|
|
15
22
|
_provider;
|
|
16
23
|
get openaiApiKey() {
|
|
@@ -20,7 +27,7 @@ export class Configuration {
|
|
|
20
27
|
this._openaiApiKey = v;
|
|
21
28
|
}
|
|
22
29
|
get openaiApiBase() {
|
|
23
|
-
return this._openaiApiBase ?? process.env.OPENAI_API_BASE?.trim();
|
|
30
|
+
return this._openaiApiBase ?? process.env.OPENAI_API_BASE?.trim() ?? DEFAULT_OPENAI_BASE_URL;
|
|
24
31
|
}
|
|
25
32
|
set openaiApiBase(v) {
|
|
26
33
|
this._openaiApiBase = v;
|
|
@@ -32,7 +39,7 @@ export class Configuration {
|
|
|
32
39
|
this._anthropicApiKey = v;
|
|
33
40
|
}
|
|
34
41
|
get anthropicApiBase() {
|
|
35
|
-
return this._anthropicApiBase ?? process.env.ANTHROPIC_API_BASE?.trim();
|
|
42
|
+
return (this._anthropicApiBase ?? process.env.ANTHROPIC_API_BASE?.trim() ?? DEFAULT_ANTHROPIC_BASE_URL);
|
|
36
43
|
}
|
|
37
44
|
set anthropicApiBase(v) {
|
|
38
45
|
this._anthropicApiBase = v;
|
|
@@ -44,7 +51,7 @@ export class Configuration {
|
|
|
44
51
|
this._geminiApiKey = v;
|
|
45
52
|
}
|
|
46
53
|
get geminiApiBase() {
|
|
47
|
-
return this._geminiApiBase ?? process.env.GEMINI_API_BASE?.trim();
|
|
54
|
+
return this._geminiApiBase ?? process.env.GEMINI_API_BASE?.trim() ?? DEFAULT_GEMINI_BASE_URL;
|
|
48
55
|
}
|
|
49
56
|
set geminiApiBase(v) {
|
|
50
57
|
this._geminiApiBase = v;
|
|
@@ -56,7 +63,7 @@ export class Configuration {
|
|
|
56
63
|
this._deepseekApiKey = v;
|
|
57
64
|
}
|
|
58
65
|
get deepseekApiBase() {
|
|
59
|
-
return this._deepseekApiBase ?? process.env.DEEPSEEK_API_BASE?.trim();
|
|
66
|
+
return (this._deepseekApiBase ?? process.env.DEEPSEEK_API_BASE?.trim() ?? DEFAULT_DEEPSEEK_BASE_URL);
|
|
60
67
|
}
|
|
61
68
|
set deepseekApiBase(v) {
|
|
62
69
|
this._deepseekApiBase = v;
|
|
@@ -74,11 +81,56 @@ export class Configuration {
|
|
|
74
81
|
this._openrouterApiKey = v;
|
|
75
82
|
}
|
|
76
83
|
get openrouterApiBase() {
|
|
77
|
-
return this._openrouterApiBase ??
|
|
84
|
+
return (this._openrouterApiBase ??
|
|
85
|
+
process.env.OPENROUTER_API_BASE?.trim() ??
|
|
86
|
+
DEFAULT_OPENROUTER_BASE_URL);
|
|
78
87
|
}
|
|
79
88
|
set openrouterApiBase(v) {
|
|
80
89
|
this._openrouterApiBase = v;
|
|
81
90
|
}
|
|
91
|
+
// AWS Bedrock configuration
|
|
92
|
+
get bedrockApiKey() {
|
|
93
|
+
return this._bedrockApiKey ?? process.env.AWS_BEARER_TOKEN_BEDROCK?.trim();
|
|
94
|
+
}
|
|
95
|
+
set bedrockApiKey(v) {
|
|
96
|
+
this._bedrockApiKey = v;
|
|
97
|
+
}
|
|
98
|
+
get bedrockAccessKeyId() {
|
|
99
|
+
return this._bedrockAccessKeyId ?? process.env.AWS_ACCESS_KEY_ID?.trim();
|
|
100
|
+
}
|
|
101
|
+
set bedrockAccessKeyId(v) {
|
|
102
|
+
this._bedrockAccessKeyId = v;
|
|
103
|
+
}
|
|
104
|
+
get bedrockSecretAccessKey() {
|
|
105
|
+
return this._bedrockSecretAccessKey ?? process.env.AWS_SECRET_ACCESS_KEY?.trim();
|
|
106
|
+
}
|
|
107
|
+
set bedrockSecretAccessKey(v) {
|
|
108
|
+
this._bedrockSecretAccessKey = v;
|
|
109
|
+
}
|
|
110
|
+
get bedrockSessionToken() {
|
|
111
|
+
return this._bedrockSessionToken ?? process.env.AWS_SESSION_TOKEN?.trim();
|
|
112
|
+
}
|
|
113
|
+
set bedrockSessionToken(v) {
|
|
114
|
+
this._bedrockSessionToken = v;
|
|
115
|
+
}
|
|
116
|
+
get bedrockRegion() {
|
|
117
|
+
return this._bedrockRegion ?? process.env.AWS_REGION?.trim() ?? DEFAULT_BEDROCK_REGION;
|
|
118
|
+
}
|
|
119
|
+
set bedrockRegion(v) {
|
|
120
|
+
this._bedrockRegion = v;
|
|
121
|
+
}
|
|
122
|
+
get bedrockGuardrailIdentifier() {
|
|
123
|
+
return this._bedrockGuardrailIdentifier ?? process.env.AWS_GUARDRAIL_ID?.trim();
|
|
124
|
+
}
|
|
125
|
+
set bedrockGuardrailIdentifier(v) {
|
|
126
|
+
this._bedrockGuardrailIdentifier = v;
|
|
127
|
+
}
|
|
128
|
+
get bedrockGuardrailVersion() {
|
|
129
|
+
return this._bedrockGuardrailVersion ?? process.env.AWS_GUARDRAIL_VERSION?.trim();
|
|
130
|
+
}
|
|
131
|
+
set bedrockGuardrailVersion(v) {
|
|
132
|
+
this._bedrockGuardrailVersion = v;
|
|
133
|
+
}
|
|
82
134
|
get debug() {
|
|
83
135
|
return this._debug ?? process.env.NODELLM_DEBUG === "true";
|
|
84
136
|
}
|
package/dist/constants.d.ts
CHANGED
|
@@ -8,6 +8,11 @@ export declare const DEFAULT_MAX_RETRIES = 2;
|
|
|
8
8
|
export declare const DEFAULT_TOOL_EXECUTION = ToolExecutionMode.AUTO;
|
|
9
9
|
export declare const DEFAULT_REQUEST_TIMEOUT = 30000;
|
|
10
10
|
export declare const DEFAULT_MAX_TOKENS = 4096;
|
|
11
|
+
export declare const DEFAULT_OPENAI_BASE_URL = "https://api.openai.com/v1";
|
|
12
|
+
export declare const DEFAULT_ANTHROPIC_BASE_URL = "https://api.anthropic.com/v1";
|
|
13
|
+
export declare const DEFAULT_GEMINI_BASE_URL = "https://generativelanguage.googleapis.com/v1beta";
|
|
14
|
+
export declare const DEFAULT_DEEPSEEK_BASE_URL = "https://api.deepseek.com";
|
|
15
|
+
export declare const DEFAULT_OPENROUTER_BASE_URL = "https://openrouter.ai/api/v1";
|
|
11
16
|
export declare const DEFAULT_OLLAMA_BASE_URL = "http://localhost:11434/v1";
|
|
12
17
|
export declare const DEFAULT_MODELS: {
|
|
13
18
|
readonly TRANSCRIPTION: "whisper-1";
|
|
@@ -15,4 +20,5 @@ export declare const DEFAULT_MODELS: {
|
|
|
15
20
|
readonly EMBEDDING: "text-embedding-3-small";
|
|
16
21
|
readonly IMAGE: "dall-e-3";
|
|
17
22
|
};
|
|
23
|
+
export declare const DEFAULT_BEDROCK_REGION = "us-east-1";
|
|
18
24
|
//# 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;AACxC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,sBAAsB,yBAAyB,CAAC;AAC7D,eAAO,MAAM,uBAAuB,QAAQ,CAAC;AAC7C,eAAO,MAAM,kBAAkB,OAAO,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;AACxC,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,sBAAsB,yBAAyB,CAAC;AAC7D,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;AAEnE,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AAEX,eAAO,MAAM,sBAAsB,cAAc,CAAC"}
|
package/dist/constants.js
CHANGED
|
@@ -9,6 +9,11 @@ export const DEFAULT_MAX_RETRIES = 2;
|
|
|
9
9
|
export const DEFAULT_TOOL_EXECUTION = ToolExecutionMode.AUTO;
|
|
10
10
|
export const DEFAULT_REQUEST_TIMEOUT = 30000; // 30 seconds
|
|
11
11
|
export const DEFAULT_MAX_TOKENS = 4096; // 4K tokens output limit
|
|
12
|
+
export const DEFAULT_OPENAI_BASE_URL = "https://api.openai.com/v1";
|
|
13
|
+
export const DEFAULT_ANTHROPIC_BASE_URL = "https://api.anthropic.com/v1";
|
|
14
|
+
export const DEFAULT_GEMINI_BASE_URL = "https://generativelanguage.googleapis.com/v1beta";
|
|
15
|
+
export const DEFAULT_DEEPSEEK_BASE_URL = "https://api.deepseek.com";
|
|
16
|
+
export const DEFAULT_OPENROUTER_BASE_URL = "https://openrouter.ai/api/v1";
|
|
12
17
|
export const DEFAULT_OLLAMA_BASE_URL = "http://localhost:11434/v1";
|
|
13
18
|
export const DEFAULT_MODELS = {
|
|
14
19
|
TRANSCRIPTION: "whisper-1",
|
|
@@ -16,3 +21,4 @@ export const DEFAULT_MODELS = {
|
|
|
16
21
|
EMBEDDING: "text-embedding-3-small",
|
|
17
22
|
IMAGE: "dall-e-3"
|
|
18
23
|
};
|
|
24
|
+
export const DEFAULT_BEDROCK_REGION = "us-east-1";
|
package/dist/errors/index.d.ts
CHANGED
|
@@ -35,6 +35,12 @@ export declare class APIError extends LLMError {
|
|
|
35
35
|
export declare class BadRequestError extends APIError {
|
|
36
36
|
constructor(message: string, body: unknown, provider?: string, model?: string);
|
|
37
37
|
}
|
|
38
|
+
/**
|
|
39
|
+
* 400 - Specifically for context window/token limit issues
|
|
40
|
+
*/
|
|
41
|
+
export declare class ContextWindowExceededError extends BadRequestError {
|
|
42
|
+
constructor(message: string, body: unknown, provider?: string, model?: string);
|
|
43
|
+
}
|
|
38
44
|
/**
|
|
39
45
|
* 401 - Invalid or missing API key
|
|
40
46
|
*/
|
|
@@ -66,6 +72,12 @@ export declare class AuthenticationError extends APIError {
|
|
|
66
72
|
export declare class RateLimitError extends APIError {
|
|
67
73
|
constructor(message: string, body: unknown, provider?: string, model?: string);
|
|
68
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* 429 - Out of credits or monthly quota exceeded
|
|
77
|
+
*/
|
|
78
|
+
export declare class InsufficientQuotaError extends RateLimitError {
|
|
79
|
+
constructor(message: string, body: unknown, provider?: string, model?: string);
|
|
80
|
+
}
|
|
69
81
|
/**
|
|
70
82
|
* 500+ - Provider server error
|
|
71
83
|
*/
|
|
@@ -87,8 +99,14 @@ export declare class ConfigurationError extends LLMError {
|
|
|
87
99
|
/**
|
|
88
100
|
* Requested model or provider not found
|
|
89
101
|
*/
|
|
90
|
-
export declare class NotFoundError extends
|
|
91
|
-
constructor(message: string);
|
|
102
|
+
export declare class NotFoundError extends APIError {
|
|
103
|
+
constructor(message: string, status?: number, body?: unknown, provider?: string, model?: string);
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Specifically when the requested model ID is invalid/unknown
|
|
107
|
+
*/
|
|
108
|
+
export declare class InvalidModelError extends NotFoundError {
|
|
109
|
+
constructor(message: string, body: unknown, provider?: string, model?: string);
|
|
92
110
|
}
|
|
93
111
|
/**
|
|
94
112
|
* Model does not support requested capability
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH;;GAEG;AACH,qBAAa,QAAS,SAAQ,KAAK;aAGf,IAAI,CAAC,EAAE,MAAM;gBAD7B,OAAO,EAAE,MAAM,EACC,IAAI,CAAC,EAAE,MAAM,YAAA;CAMhC;AAED;;GAEG;AACH,qBAAa,QAAS,SAAQ,QAAQ;aAGlB,MAAM,EAAE,MAAM;aACd,IAAI,EAAE,OAAO;aACb,QAAQ,CAAC,EAAE,MAAM;aACjB,KAAK,CAAC,EAAE,MAAM;gBAJ9B,OAAO,EAAE,MAAM,EACC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,OAAO,EACb,QAAQ,CAAC,EAAE,MAAM,YAAA,EACjB,KAAK,CAAC,EAAE,MAAM,YAAA;CAIjC;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,QAAQ;gBAC/B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;CAI9E;AAED;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,QAAQ;gBACjC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM;CAI9D;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,QAAQ;gBACpC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM;CAI9D;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,QAAQ;gBAC9B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM;CAI9D;AAED;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,QAAQ;gBACnC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM;CAI9E;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,QAAQ;gBAC9B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;CAI9E;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,QAAQ;gBAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;CAI9F;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,WAAW;gBAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;CAI9F;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,QAAQ;gBAClC,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,QAAQ;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"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"}
|
package/dist/errors/index.js
CHANGED
|
@@ -49,6 +49,15 @@ export class BadRequestError extends APIError {
|
|
|
49
49
|
this.name = "BadRequestError";
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
|
+
/**
|
|
53
|
+
* 400 - Specifically for context window/token limit issues
|
|
54
|
+
*/
|
|
55
|
+
export class ContextWindowExceededError extends BadRequestError {
|
|
56
|
+
constructor(message, body, provider, model) {
|
|
57
|
+
super(message, body, provider, model);
|
|
58
|
+
this.name = "ContextWindowExceededError";
|
|
59
|
+
}
|
|
60
|
+
}
|
|
52
61
|
/**
|
|
53
62
|
* 401 - Invalid or missing API key
|
|
54
63
|
*/
|
|
@@ -95,6 +104,15 @@ export class RateLimitError extends APIError {
|
|
|
95
104
|
this.name = "RateLimitError";
|
|
96
105
|
}
|
|
97
106
|
}
|
|
107
|
+
/**
|
|
108
|
+
* 429 - Out of credits or monthly quota exceeded
|
|
109
|
+
*/
|
|
110
|
+
export class InsufficientQuotaError extends RateLimitError {
|
|
111
|
+
constructor(message, body, provider, model) {
|
|
112
|
+
super(message, body, provider, model);
|
|
113
|
+
this.name = "InsufficientQuotaError";
|
|
114
|
+
}
|
|
115
|
+
}
|
|
98
116
|
/**
|
|
99
117
|
* 500+ - Provider server error
|
|
100
118
|
*/
|
|
@@ -124,9 +142,19 @@ export class ConfigurationError extends LLMError {
|
|
|
124
142
|
/**
|
|
125
143
|
* Requested model or provider not found
|
|
126
144
|
*/
|
|
127
|
-
export class NotFoundError extends
|
|
128
|
-
constructor(message) {
|
|
129
|
-
super(message,
|
|
145
|
+
export class NotFoundError extends APIError {
|
|
146
|
+
constructor(message, status = 404, body = null, provider, model) {
|
|
147
|
+
super(message, status, body, provider, model);
|
|
148
|
+
this.name = "NotFoundError";
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Specifically when the requested model ID is invalid/unknown
|
|
153
|
+
*/
|
|
154
|
+
export class InvalidModelError extends NotFoundError {
|
|
155
|
+
constructor(message, body, provider, model) {
|
|
156
|
+
super(message, 404, body, provider, model);
|
|
157
|
+
this.name = "InvalidModelError";
|
|
130
158
|
}
|
|
131
159
|
}
|
|
132
160
|
/**
|
package/dist/index.d.ts
CHANGED
|
@@ -10,10 +10,10 @@ export { z } from "zod";
|
|
|
10
10
|
export { NodeLLM, LegacyNodeLLM, createLLM, NodeLLMCore, Transcription, Moderation, Embedding, ModelRegistry, PricingRegistry } from "./llm.js";
|
|
11
11
|
export { config } from "./config.js";
|
|
12
12
|
export type { NodeLLMConfig } from "./config.js";
|
|
13
|
-
export { providerRegistry } from "./providers/registry.js";
|
|
13
|
+
export { providerRegistry, ProviderInterceptor } from "./providers/registry.js";
|
|
14
14
|
export { Schema } from "./schema/Schema.js";
|
|
15
15
|
export { BaseProvider } from "./providers/BaseProvider.js";
|
|
16
|
-
export { ChatRequest, ChatResponse, ChatChunk, ThinkingConfig, ThinkingResult, Usage } from "./providers/Provider.js";
|
|
16
|
+
export { Provider, ProviderCapabilities, ChatRequest, ChatResponse, ChatChunk, ThinkingConfig, ThinkingResult, Usage, ImageRequest, ImageResponse, TranscriptionRequest, TranscriptionResponse, ModerationRequest, ModerationResponse, ModerationResult, EmbeddingRequest, EmbeddingResponse } from "./providers/Provider.js";
|
|
17
17
|
export { resolveModelAlias } from "./model_aliases.js";
|
|
18
18
|
export { default as MODEL_ALIASES } from "./aliases.js";
|
|
19
19
|
export { ToolExecutionMode, DEFAULT_MAX_TOOL_CALLS, DEFAULT_MAX_RETRIES, DEFAULT_TOOL_EXECUTION, DEFAULT_OLLAMA_BASE_URL, DEFAULT_MODELS } from "./constants.js";
|
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;AAEtC,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,MAAM,yBAAyB,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;AAEtC,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,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,cAAc,CAAC;AACxD,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/llm.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm.d.ts","sourceRoot":"","sources":["../src/llm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"llm.d.ts","sourceRoot":"","sources":["../src/llm.ts"],"names":[],"mappings":"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"}
|
package/dist/llm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Chat } from "./chat/Chat.js";
|
|
2
|
-
import { providerRegistry, ensureOpenAIRegistered, registerAnthropicProvider, registerGeminiProvider, registerDeepSeekProvider, registerOllamaProvider, registerOpenRouterProvider } from "./providers/registry.js";
|
|
2
|
+
import { providerRegistry, ensureOpenAIRegistered, registerAnthropicProvider, registerGeminiProvider, registerDeepSeekProvider, registerOllamaProvider, registerOpenRouterProvider, registerBedrockProvider } from "./providers/registry.js";
|
|
3
3
|
import { GeneratedImage } from "./image/GeneratedImage.js";
|
|
4
4
|
import { ModelRegistry } from "./models/ModelRegistry.js";
|
|
5
5
|
import { PricingRegistry } from "./models/PricingRegistry.js";
|
|
@@ -17,7 +17,8 @@ const PROVIDER_REGISTRARS = {
|
|
|
17
17
|
anthropic: registerAnthropicProvider,
|
|
18
18
|
deepseek: registerDeepSeekProvider,
|
|
19
19
|
ollama: registerOllamaProvider,
|
|
20
|
-
openrouter: registerOpenRouterProvider
|
|
20
|
+
openrouter: registerOpenRouterProvider,
|
|
21
|
+
bedrock: registerBedrockProvider
|
|
21
22
|
};
|
|
22
23
|
export class NodeLLMCore {
|
|
23
24
|
config;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ModelRegistry.d.ts","sourceRoot":"","sources":["../../src/models/ModelRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"ModelRegistry.d.ts","sourceRoot":"","sources":["../../src/models/ModelRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAKnC,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,MAAM,CAA6C;IAElE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAQlE;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,GAAG,KAAK,EAAE,GAAG,IAAI;IAe1C;;OAEG;IACH,MAAM,CAAC,GAAG,IAAI,KAAK,EAAE;IAIrB;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAKhF;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO;IAK/E;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAK9E;;OAEG;IACH,MAAM,CAAC,aAAa,CAClB,KAAK,EAAE;QACL,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,EACD,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM;sBAPA,MAAM;uBACL,MAAM;sBACP,MAAM;wBACJ,MAAM;2BACH,MAAM;;;;;sBAJX,MAAM;uBACL,MAAM;sBACP,MAAM;wBACJ,MAAM;2BACH,MAAM;;CAyC9B"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
// @ts-ignore - Node 20.9 requires 'assert', but TS 5.3+ enforces 'with'
|
|
2
|
+
import modelsData from "./models.json" assert { type: "json" };
|
|
2
3
|
import { PricingRegistry } from "./PricingRegistry.js";
|
|
3
4
|
export class ModelRegistry {
|
|
4
5
|
static models = modelsData;
|
|
5
6
|
static find(modelId, provider) {
|
|
6
|
-
return this.models.find((m) => m.id.toLowerCase() === modelId.toLowerCase() &&
|
|
7
|
+
return this.models.find((m) => m.id.toLowerCase() === modelId.toLowerCase() &&
|
|
8
|
+
(!provider || m.provider.toLowerCase() === provider.toLowerCase()));
|
|
7
9
|
}
|
|
8
10
|
/**
|
|
9
11
|
* Add or update models in the registry.
|