@easbot/local-model-sdk 0.1.3 → 0.1.11
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.en.md +7 -7
- package/README.md +6 -6
- package/dist/index.cjs +118 -28
- package/dist/index.d.cts +164 -42
- package/dist/index.d.ts +164 -42
- package/dist/index.mjs +118 -28
- package/package.json +33 -32
package/dist/index.d.cts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { LanguageModel, EmbeddingModel, RerankingModel, Provider } from 'ai';
|
|
2
|
+
import { LanguageModelV3StreamPart, LanguageModelV3GenerateResult, LanguageModelV3, LanguageModelV3FinishReason, LanguageModelV3CallOptions, EmbeddingModelV3, EmbeddingModelV3CallOptions, EmbeddingModelV3Result, RerankingModelV3 } from '@ai-sdk/provider';
|
|
2
3
|
|
|
3
4
|
declare enum ErrorCode {
|
|
4
5
|
MODEL_NOT_FOUND = "MODEL_NOT_FOUND",
|
|
@@ -24,7 +25,7 @@ interface LocalModelProviderConfig {
|
|
|
24
25
|
maxCachedModels?: number;
|
|
25
26
|
memoryWarningThreshold?: number;
|
|
26
27
|
useEnhancedModel?: boolean;
|
|
27
|
-
|
|
28
|
+
logDir?: string;
|
|
28
29
|
logLevel?: 'DEBUG' | 'INFO' | 'WARN' | 'ERROR';
|
|
29
30
|
}
|
|
30
31
|
interface LanguageModelConfig {
|
|
@@ -64,25 +65,27 @@ interface GenerateOptions {
|
|
|
64
65
|
stopSequences: string[];
|
|
65
66
|
abortSignal?: AbortSignal;
|
|
66
67
|
}
|
|
67
|
-
interface
|
|
68
|
-
|
|
69
|
-
finishReason:
|
|
68
|
+
interface LocalGenerateResult {
|
|
69
|
+
content: string;
|
|
70
|
+
finishReason: LanguageModelV3FinishReason;
|
|
70
71
|
usage: {
|
|
71
72
|
promptTokens: number;
|
|
72
73
|
completionTokens: number;
|
|
73
74
|
totalTokens: number;
|
|
74
75
|
};
|
|
75
76
|
}
|
|
76
|
-
interface
|
|
77
|
+
interface LocalGenerateChunk {
|
|
77
78
|
type: 'text-delta' | 'text-end' | 'finish';
|
|
78
|
-
|
|
79
|
-
finishReason?:
|
|
79
|
+
delta?: string;
|
|
80
|
+
finishReason?: LanguageModelV3FinishReason;
|
|
80
81
|
usage?: {
|
|
81
82
|
promptTokens: number;
|
|
82
83
|
completionTokens: number;
|
|
83
84
|
totalTokens: number;
|
|
84
85
|
};
|
|
85
86
|
}
|
|
87
|
+
type GenerateResult = LanguageModelV3GenerateResult;
|
|
88
|
+
type GenerateChunk = LanguageModelV3StreamPart;
|
|
86
89
|
interface ModelInfo {
|
|
87
90
|
modelId: string;
|
|
88
91
|
modelType: 'language' | 'embedding';
|
|
@@ -92,6 +95,12 @@ interface ModelInfo {
|
|
|
92
95
|
}
|
|
93
96
|
declare const SUPPORTED_LANGUAGE_MODELS: Record<string, LanguageModelConfig>;
|
|
94
97
|
declare const SUPPORTED_EMBEDDING_MODELS: Record<string, EmbeddingModelConfig>;
|
|
98
|
+
interface RerankingModelOptions {
|
|
99
|
+
llm?: LanguageModelV3;
|
|
100
|
+
totalScore?: number;
|
|
101
|
+
useEnhancedPrompt?: boolean;
|
|
102
|
+
promptLanguage?: 'zh' | 'en';
|
|
103
|
+
}
|
|
95
104
|
|
|
96
105
|
declare class LocalModelProvider {
|
|
97
106
|
private readonly config;
|
|
@@ -101,27 +110,29 @@ declare class LocalModelProvider {
|
|
|
101
110
|
constructor(config?: LocalModelProviderConfig);
|
|
102
111
|
languageModel(modelId: string, options?: {
|
|
103
112
|
useEnhancedModel?: boolean;
|
|
104
|
-
}):
|
|
105
|
-
|
|
113
|
+
}): LanguageModel;
|
|
114
|
+
embeddingModel(modelId: string): EmbeddingModel;
|
|
106
115
|
chat(modelId: string, options?: {
|
|
107
116
|
useEnhancedModel?: boolean;
|
|
108
|
-
}):
|
|
117
|
+
}): LanguageModel;
|
|
118
|
+
rerankingModel(modelId: string, options?: RerankingModelOptions): RerankingModel;
|
|
109
119
|
private getOrCreateEngine;
|
|
110
120
|
private evictLeastRecentlyUsed;
|
|
111
121
|
getLoadedModels(): ModelInfo[];
|
|
112
122
|
dispose(): Promise<void>;
|
|
113
123
|
}
|
|
114
|
-
interface LocalProvider {
|
|
124
|
+
interface LocalProvider extends Provider {
|
|
115
125
|
(modelId: string, options?: {
|
|
116
126
|
useEnhancedModel?: boolean;
|
|
117
|
-
}):
|
|
127
|
+
}): LanguageModel;
|
|
118
128
|
languageModel(modelId: string, options?: {
|
|
119
129
|
useEnhancedModel?: boolean;
|
|
120
|
-
}):
|
|
130
|
+
}): LanguageModel;
|
|
121
131
|
chat(modelId: string, options?: {
|
|
122
132
|
useEnhancedModel?: boolean;
|
|
123
|
-
}):
|
|
124
|
-
|
|
133
|
+
}): LanguageModel;
|
|
134
|
+
embeddingModel(modelId: string): EmbeddingModel;
|
|
135
|
+
rerankingModel(modelId: string, options?: RerankingModelOptions): RerankingModel;
|
|
125
136
|
}
|
|
126
137
|
declare function createLocal(config?: LocalModelProviderConfig): LocalProvider;
|
|
127
138
|
|
|
@@ -135,16 +146,16 @@ declare class TransformersEngine {
|
|
|
135
146
|
private configureEnvironment;
|
|
136
147
|
initialize(): Promise<void>;
|
|
137
148
|
private extractAssistantResponse;
|
|
138
|
-
generate(prompt: string, options: GenerateOptions): Promise<
|
|
139
|
-
generateStream(prompt: string, options: GenerateOptions, callback: (chunk:
|
|
149
|
+
generate(prompt: string, options: GenerateOptions): Promise<LocalGenerateResult>;
|
|
150
|
+
generateStream(prompt: string, options: GenerateOptions, callback: (chunk: LocalGenerateChunk) => void): Promise<void>;
|
|
140
151
|
embed(texts: string[], abortSignal?: AbortSignal): Promise<number[][]>;
|
|
141
152
|
countTokens(texts: string[]): Promise<number>;
|
|
142
153
|
dispose(): Promise<void>;
|
|
143
154
|
isReady(): boolean;
|
|
144
155
|
}
|
|
145
156
|
|
|
146
|
-
declare class LocalLanguageModel implements
|
|
147
|
-
readonly specificationVersion: "
|
|
157
|
+
declare class LocalLanguageModel implements LanguageModelV3 {
|
|
158
|
+
readonly specificationVersion: "v3";
|
|
148
159
|
readonly provider: string;
|
|
149
160
|
readonly modelId: string;
|
|
150
161
|
readonly defaultObjectGenerationMode: "json";
|
|
@@ -152,13 +163,24 @@ declare class LocalLanguageModel implements LanguageModelV2 {
|
|
|
152
163
|
private readonly engine;
|
|
153
164
|
private readonly modelConfig;
|
|
154
165
|
constructor(provider: string, modelId: string, engine: TransformersEngine);
|
|
166
|
+
generate(options: LanguageModelV3CallOptions): Promise<any>;
|
|
167
|
+
stream(options: LanguageModelV3CallOptions): Promise<{
|
|
168
|
+
stream: ReadableStream<LanguageModelV3StreamPart>;
|
|
169
|
+
fullStream: AsyncIterable<LanguageModelV3StreamPart>;
|
|
170
|
+
request: {
|
|
171
|
+
body: string;
|
|
172
|
+
};
|
|
173
|
+
response: {
|
|
174
|
+
headers?: Record<string, string>;
|
|
175
|
+
};
|
|
176
|
+
}>;
|
|
155
177
|
private convertToQwenFormat;
|
|
156
|
-
doGenerate(options:
|
|
157
|
-
doStream(options:
|
|
178
|
+
doGenerate(options: LanguageModelV3CallOptions): Promise<any>;
|
|
179
|
+
doStream(options: LanguageModelV3CallOptions): Promise<any>;
|
|
158
180
|
}
|
|
159
181
|
|
|
160
|
-
declare class LocalEnhancedLanguageModel implements
|
|
161
|
-
readonly specificationVersion: "
|
|
182
|
+
declare class LocalEnhancedLanguageModel implements LanguageModelV3 {
|
|
183
|
+
readonly specificationVersion: "v3";
|
|
162
184
|
readonly provider: string;
|
|
163
185
|
readonly modelId: string;
|
|
164
186
|
readonly defaultObjectGenerationMode: "json";
|
|
@@ -168,10 +190,21 @@ declare class LocalEnhancedLanguageModel implements LanguageModelV2 {
|
|
|
168
190
|
private readonly engine;
|
|
169
191
|
private readonly modelConfig;
|
|
170
192
|
constructor(provider: string, modelId: string, engine: TransformersEngine);
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
stream: ReadableStream<
|
|
174
|
-
fullStream: AsyncIterable<
|
|
193
|
+
generate(options: LanguageModelV3CallOptions): Promise<any>;
|
|
194
|
+
stream(options: LanguageModelV3CallOptions): Promise<{
|
|
195
|
+
stream: ReadableStream<LanguageModelV3StreamPart>;
|
|
196
|
+
fullStream: AsyncIterable<LanguageModelV3StreamPart>;
|
|
197
|
+
request: {
|
|
198
|
+
body: string;
|
|
199
|
+
};
|
|
200
|
+
response: {
|
|
201
|
+
headers?: Record<string, string>;
|
|
202
|
+
};
|
|
203
|
+
}>;
|
|
204
|
+
doGenerate(options: LanguageModelV3CallOptions): Promise<any>;
|
|
205
|
+
doStream(options: LanguageModelV3CallOptions): Promise<{
|
|
206
|
+
stream: ReadableStream<LanguageModelV3StreamPart>;
|
|
207
|
+
fullStream: AsyncIterable<LanguageModelV3StreamPart>;
|
|
175
208
|
request: {
|
|
176
209
|
body: string;
|
|
177
210
|
};
|
|
@@ -181,18 +214,8 @@ declare class LocalEnhancedLanguageModel implements LanguageModelV2 {
|
|
|
181
214
|
}>;
|
|
182
215
|
}
|
|
183
216
|
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
abortSignal?: AbortSignal;
|
|
187
|
-
}
|
|
188
|
-
interface EmbedResponse {
|
|
189
|
-
embeddings: number[][];
|
|
190
|
-
usage: {
|
|
191
|
-
tokens: number;
|
|
192
|
-
};
|
|
193
|
-
}
|
|
194
|
-
declare class LocalEmbeddingModel implements EmbeddingModelV2<string> {
|
|
195
|
-
readonly specificationVersion: "v2";
|
|
217
|
+
declare class LocalEmbeddingModel implements EmbeddingModelV3 {
|
|
218
|
+
readonly specificationVersion: "v3";
|
|
196
219
|
readonly provider: string;
|
|
197
220
|
readonly modelId: string;
|
|
198
221
|
readonly maxEmbeddingsPerCall: number;
|
|
@@ -200,7 +223,106 @@ declare class LocalEmbeddingModel implements EmbeddingModelV2<string> {
|
|
|
200
223
|
private readonly engine;
|
|
201
224
|
private readonly modelConfig;
|
|
202
225
|
constructor(provider: string, modelId: string, engine: TransformersEngine);
|
|
203
|
-
doEmbed(
|
|
226
|
+
doEmbed(options: EmbeddingModelV3CallOptions): Promise<EmbeddingModelV3Result>;
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
declare class LocalRerankingModel implements RerankingModelV3 {
|
|
230
|
+
readonly specificationVersion: "v3";
|
|
231
|
+
readonly provider = "local";
|
|
232
|
+
readonly modelId: string;
|
|
233
|
+
private languageModel;
|
|
234
|
+
private options;
|
|
235
|
+
private log;
|
|
236
|
+
constructor(modelId: string, config: LocalModelProviderConfig, engine: TransformersEngine, options?: RerankingModelOptions);
|
|
237
|
+
doRerank(options: {
|
|
238
|
+
query: string;
|
|
239
|
+
documents: {
|
|
240
|
+
type: 'text';
|
|
241
|
+
values: string[];
|
|
242
|
+
} | {
|
|
243
|
+
type: 'object';
|
|
244
|
+
values: Array<{
|
|
245
|
+
content: string;
|
|
246
|
+
id?: string;
|
|
247
|
+
}>;
|
|
248
|
+
};
|
|
249
|
+
topN?: number;
|
|
250
|
+
abortSignal?: AbortSignal;
|
|
251
|
+
providerOptions?: any;
|
|
252
|
+
headers?: Record<string, string>;
|
|
253
|
+
}): Promise<{
|
|
254
|
+
ranking: Array<{
|
|
255
|
+
index: number;
|
|
256
|
+
relevanceScore: number;
|
|
257
|
+
}>;
|
|
258
|
+
providerMetadata?: any;
|
|
259
|
+
warnings?: Array<{
|
|
260
|
+
type: 'other';
|
|
261
|
+
message: string;
|
|
262
|
+
}>;
|
|
263
|
+
response?: {
|
|
264
|
+
id?: string;
|
|
265
|
+
timestamp?: Date;
|
|
266
|
+
modelId?: string;
|
|
267
|
+
headers?: Record<string, string>;
|
|
268
|
+
body?: unknown;
|
|
269
|
+
};
|
|
270
|
+
}>;
|
|
271
|
+
private buildRerankPrompt;
|
|
272
|
+
private parseRerankResult;
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
interface LLMRerankingModelOptions extends RerankingModelOptions {
|
|
276
|
+
modelOptions?: {
|
|
277
|
+
temperature?: number;
|
|
278
|
+
maxTokens?: number;
|
|
279
|
+
};
|
|
280
|
+
}
|
|
281
|
+
declare class LLMRerankingModel implements RerankingModelV3 {
|
|
282
|
+
readonly specificationVersion: "v3";
|
|
283
|
+
readonly provider: string;
|
|
284
|
+
readonly modelId: string;
|
|
285
|
+
private readonly languageModel;
|
|
286
|
+
private readonly options;
|
|
287
|
+
private readonly log;
|
|
288
|
+
constructor(modelId: string, languageModel: LanguageModelV3, options?: LLMRerankingModelOptions);
|
|
289
|
+
doRerank(options: {
|
|
290
|
+
query: string;
|
|
291
|
+
documents: {
|
|
292
|
+
type: 'text';
|
|
293
|
+
values: string[];
|
|
294
|
+
} | {
|
|
295
|
+
type: 'object';
|
|
296
|
+
values: Array<{
|
|
297
|
+
content: string;
|
|
298
|
+
id?: string;
|
|
299
|
+
}>;
|
|
300
|
+
};
|
|
301
|
+
topN?: number;
|
|
302
|
+
abortSignal?: AbortSignal;
|
|
303
|
+
providerOptions?: any;
|
|
304
|
+
headers?: Record<string, string>;
|
|
305
|
+
}): Promise<{
|
|
306
|
+
ranking: Array<{
|
|
307
|
+
index: number;
|
|
308
|
+
relevanceScore: number;
|
|
309
|
+
}>;
|
|
310
|
+
providerMetadata?: any;
|
|
311
|
+
warnings?: Array<{
|
|
312
|
+
type: 'other';
|
|
313
|
+
message: string;
|
|
314
|
+
}>;
|
|
315
|
+
response?: {
|
|
316
|
+
id?: string;
|
|
317
|
+
timestamp?: Date;
|
|
318
|
+
modelId?: string;
|
|
319
|
+
headers?: Record<string, string>;
|
|
320
|
+
body?: unknown;
|
|
321
|
+
};
|
|
322
|
+
}>;
|
|
323
|
+
private extractTextContent;
|
|
324
|
+
private buildRerankPrompt;
|
|
325
|
+
private parseRerankResult;
|
|
204
326
|
}
|
|
205
327
|
|
|
206
328
|
declare class LocalModelError extends Error {
|
|
@@ -221,4 +343,4 @@ declare const VERSION = "0.1.0";
|
|
|
221
343
|
declare const SDK_NAME = "@easbot/local-model-sdk";
|
|
222
344
|
declare const SDK_DESCRIPTION = "Complete local model SDK for EASBot - Transformers.js + ONNX implementation";
|
|
223
345
|
|
|
224
|
-
export { type EmbeddingModelConfig, ErrorCode, ErrorHandler, type GenerateChunk, type GenerateOptions, type GenerateResult, type LanguageModelConfig, type LanguageModelSettings, LocalEmbeddingModel, LocalEnhancedLanguageModel, LocalLanguageModel, LocalModelError, LocalModelProvider, type LocalModelProviderConfig, type LocalProvider, type ModelCacheConfig, type ModelInfo, SDK_DESCRIPTION, SDK_NAME, SUPPORTED_EMBEDDING_MODELS, SUPPORTED_LANGUAGE_MODELS, type TransformersEngineConfig, VERSION, createLocal };
|
|
346
|
+
export { type EmbeddingModelConfig, ErrorCode, ErrorHandler, type GenerateChunk, type GenerateOptions, type GenerateResult, LLMRerankingModel, type LLMRerankingModelOptions, type LanguageModelConfig, type LanguageModelSettings, LocalEmbeddingModel, LocalEnhancedLanguageModel, LocalLanguageModel, LocalModelError, LocalModelProvider, type LocalModelProviderConfig, type LocalProvider, LocalRerankingModel, type ModelCacheConfig, type ModelInfo, type RerankingModelOptions, SDK_DESCRIPTION, SDK_NAME, SUPPORTED_EMBEDDING_MODELS, SUPPORTED_LANGUAGE_MODELS, type TransformersEngineConfig, VERSION, createLocal };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { LanguageModel, EmbeddingModel, RerankingModel, Provider } from 'ai';
|
|
2
|
+
import { LanguageModelV3StreamPart, LanguageModelV3GenerateResult, LanguageModelV3, LanguageModelV3FinishReason, LanguageModelV3CallOptions, EmbeddingModelV3, EmbeddingModelV3CallOptions, EmbeddingModelV3Result, RerankingModelV3 } from '@ai-sdk/provider';
|
|
2
3
|
|
|
3
4
|
declare enum ErrorCode {
|
|
4
5
|
MODEL_NOT_FOUND = "MODEL_NOT_FOUND",
|
|
@@ -24,7 +25,7 @@ interface LocalModelProviderConfig {
|
|
|
24
25
|
maxCachedModels?: number;
|
|
25
26
|
memoryWarningThreshold?: number;
|
|
26
27
|
useEnhancedModel?: boolean;
|
|
27
|
-
|
|
28
|
+
logDir?: string;
|
|
28
29
|
logLevel?: 'DEBUG' | 'INFO' | 'WARN' | 'ERROR';
|
|
29
30
|
}
|
|
30
31
|
interface LanguageModelConfig {
|
|
@@ -64,25 +65,27 @@ interface GenerateOptions {
|
|
|
64
65
|
stopSequences: string[];
|
|
65
66
|
abortSignal?: AbortSignal;
|
|
66
67
|
}
|
|
67
|
-
interface
|
|
68
|
-
|
|
69
|
-
finishReason:
|
|
68
|
+
interface LocalGenerateResult {
|
|
69
|
+
content: string;
|
|
70
|
+
finishReason: LanguageModelV3FinishReason;
|
|
70
71
|
usage: {
|
|
71
72
|
promptTokens: number;
|
|
72
73
|
completionTokens: number;
|
|
73
74
|
totalTokens: number;
|
|
74
75
|
};
|
|
75
76
|
}
|
|
76
|
-
interface
|
|
77
|
+
interface LocalGenerateChunk {
|
|
77
78
|
type: 'text-delta' | 'text-end' | 'finish';
|
|
78
|
-
|
|
79
|
-
finishReason?:
|
|
79
|
+
delta?: string;
|
|
80
|
+
finishReason?: LanguageModelV3FinishReason;
|
|
80
81
|
usage?: {
|
|
81
82
|
promptTokens: number;
|
|
82
83
|
completionTokens: number;
|
|
83
84
|
totalTokens: number;
|
|
84
85
|
};
|
|
85
86
|
}
|
|
87
|
+
type GenerateResult = LanguageModelV3GenerateResult;
|
|
88
|
+
type GenerateChunk = LanguageModelV3StreamPart;
|
|
86
89
|
interface ModelInfo {
|
|
87
90
|
modelId: string;
|
|
88
91
|
modelType: 'language' | 'embedding';
|
|
@@ -92,6 +95,12 @@ interface ModelInfo {
|
|
|
92
95
|
}
|
|
93
96
|
declare const SUPPORTED_LANGUAGE_MODELS: Record<string, LanguageModelConfig>;
|
|
94
97
|
declare const SUPPORTED_EMBEDDING_MODELS: Record<string, EmbeddingModelConfig>;
|
|
98
|
+
interface RerankingModelOptions {
|
|
99
|
+
llm?: LanguageModelV3;
|
|
100
|
+
totalScore?: number;
|
|
101
|
+
useEnhancedPrompt?: boolean;
|
|
102
|
+
promptLanguage?: 'zh' | 'en';
|
|
103
|
+
}
|
|
95
104
|
|
|
96
105
|
declare class LocalModelProvider {
|
|
97
106
|
private readonly config;
|
|
@@ -101,27 +110,29 @@ declare class LocalModelProvider {
|
|
|
101
110
|
constructor(config?: LocalModelProviderConfig);
|
|
102
111
|
languageModel(modelId: string, options?: {
|
|
103
112
|
useEnhancedModel?: boolean;
|
|
104
|
-
}):
|
|
105
|
-
|
|
113
|
+
}): LanguageModel;
|
|
114
|
+
embeddingModel(modelId: string): EmbeddingModel;
|
|
106
115
|
chat(modelId: string, options?: {
|
|
107
116
|
useEnhancedModel?: boolean;
|
|
108
|
-
}):
|
|
117
|
+
}): LanguageModel;
|
|
118
|
+
rerankingModel(modelId: string, options?: RerankingModelOptions): RerankingModel;
|
|
109
119
|
private getOrCreateEngine;
|
|
110
120
|
private evictLeastRecentlyUsed;
|
|
111
121
|
getLoadedModels(): ModelInfo[];
|
|
112
122
|
dispose(): Promise<void>;
|
|
113
123
|
}
|
|
114
|
-
interface LocalProvider {
|
|
124
|
+
interface LocalProvider extends Provider {
|
|
115
125
|
(modelId: string, options?: {
|
|
116
126
|
useEnhancedModel?: boolean;
|
|
117
|
-
}):
|
|
127
|
+
}): LanguageModel;
|
|
118
128
|
languageModel(modelId: string, options?: {
|
|
119
129
|
useEnhancedModel?: boolean;
|
|
120
|
-
}):
|
|
130
|
+
}): LanguageModel;
|
|
121
131
|
chat(modelId: string, options?: {
|
|
122
132
|
useEnhancedModel?: boolean;
|
|
123
|
-
}):
|
|
124
|
-
|
|
133
|
+
}): LanguageModel;
|
|
134
|
+
embeddingModel(modelId: string): EmbeddingModel;
|
|
135
|
+
rerankingModel(modelId: string, options?: RerankingModelOptions): RerankingModel;
|
|
125
136
|
}
|
|
126
137
|
declare function createLocal(config?: LocalModelProviderConfig): LocalProvider;
|
|
127
138
|
|
|
@@ -135,16 +146,16 @@ declare class TransformersEngine {
|
|
|
135
146
|
private configureEnvironment;
|
|
136
147
|
initialize(): Promise<void>;
|
|
137
148
|
private extractAssistantResponse;
|
|
138
|
-
generate(prompt: string, options: GenerateOptions): Promise<
|
|
139
|
-
generateStream(prompt: string, options: GenerateOptions, callback: (chunk:
|
|
149
|
+
generate(prompt: string, options: GenerateOptions): Promise<LocalGenerateResult>;
|
|
150
|
+
generateStream(prompt: string, options: GenerateOptions, callback: (chunk: LocalGenerateChunk) => void): Promise<void>;
|
|
140
151
|
embed(texts: string[], abortSignal?: AbortSignal): Promise<number[][]>;
|
|
141
152
|
countTokens(texts: string[]): Promise<number>;
|
|
142
153
|
dispose(): Promise<void>;
|
|
143
154
|
isReady(): boolean;
|
|
144
155
|
}
|
|
145
156
|
|
|
146
|
-
declare class LocalLanguageModel implements
|
|
147
|
-
readonly specificationVersion: "
|
|
157
|
+
declare class LocalLanguageModel implements LanguageModelV3 {
|
|
158
|
+
readonly specificationVersion: "v3";
|
|
148
159
|
readonly provider: string;
|
|
149
160
|
readonly modelId: string;
|
|
150
161
|
readonly defaultObjectGenerationMode: "json";
|
|
@@ -152,13 +163,24 @@ declare class LocalLanguageModel implements LanguageModelV2 {
|
|
|
152
163
|
private readonly engine;
|
|
153
164
|
private readonly modelConfig;
|
|
154
165
|
constructor(provider: string, modelId: string, engine: TransformersEngine);
|
|
166
|
+
generate(options: LanguageModelV3CallOptions): Promise<any>;
|
|
167
|
+
stream(options: LanguageModelV3CallOptions): Promise<{
|
|
168
|
+
stream: ReadableStream<LanguageModelV3StreamPart>;
|
|
169
|
+
fullStream: AsyncIterable<LanguageModelV3StreamPart>;
|
|
170
|
+
request: {
|
|
171
|
+
body: string;
|
|
172
|
+
};
|
|
173
|
+
response: {
|
|
174
|
+
headers?: Record<string, string>;
|
|
175
|
+
};
|
|
176
|
+
}>;
|
|
155
177
|
private convertToQwenFormat;
|
|
156
|
-
doGenerate(options:
|
|
157
|
-
doStream(options:
|
|
178
|
+
doGenerate(options: LanguageModelV3CallOptions): Promise<any>;
|
|
179
|
+
doStream(options: LanguageModelV3CallOptions): Promise<any>;
|
|
158
180
|
}
|
|
159
181
|
|
|
160
|
-
declare class LocalEnhancedLanguageModel implements
|
|
161
|
-
readonly specificationVersion: "
|
|
182
|
+
declare class LocalEnhancedLanguageModel implements LanguageModelV3 {
|
|
183
|
+
readonly specificationVersion: "v3";
|
|
162
184
|
readonly provider: string;
|
|
163
185
|
readonly modelId: string;
|
|
164
186
|
readonly defaultObjectGenerationMode: "json";
|
|
@@ -168,10 +190,21 @@ declare class LocalEnhancedLanguageModel implements LanguageModelV2 {
|
|
|
168
190
|
private readonly engine;
|
|
169
191
|
private readonly modelConfig;
|
|
170
192
|
constructor(provider: string, modelId: string, engine: TransformersEngine);
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
stream: ReadableStream<
|
|
174
|
-
fullStream: AsyncIterable<
|
|
193
|
+
generate(options: LanguageModelV3CallOptions): Promise<any>;
|
|
194
|
+
stream(options: LanguageModelV3CallOptions): Promise<{
|
|
195
|
+
stream: ReadableStream<LanguageModelV3StreamPart>;
|
|
196
|
+
fullStream: AsyncIterable<LanguageModelV3StreamPart>;
|
|
197
|
+
request: {
|
|
198
|
+
body: string;
|
|
199
|
+
};
|
|
200
|
+
response: {
|
|
201
|
+
headers?: Record<string, string>;
|
|
202
|
+
};
|
|
203
|
+
}>;
|
|
204
|
+
doGenerate(options: LanguageModelV3CallOptions): Promise<any>;
|
|
205
|
+
doStream(options: LanguageModelV3CallOptions): Promise<{
|
|
206
|
+
stream: ReadableStream<LanguageModelV3StreamPart>;
|
|
207
|
+
fullStream: AsyncIterable<LanguageModelV3StreamPart>;
|
|
175
208
|
request: {
|
|
176
209
|
body: string;
|
|
177
210
|
};
|
|
@@ -181,18 +214,8 @@ declare class LocalEnhancedLanguageModel implements LanguageModelV2 {
|
|
|
181
214
|
}>;
|
|
182
215
|
}
|
|
183
216
|
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
abortSignal?: AbortSignal;
|
|
187
|
-
}
|
|
188
|
-
interface EmbedResponse {
|
|
189
|
-
embeddings: number[][];
|
|
190
|
-
usage: {
|
|
191
|
-
tokens: number;
|
|
192
|
-
};
|
|
193
|
-
}
|
|
194
|
-
declare class LocalEmbeddingModel implements EmbeddingModelV2<string> {
|
|
195
|
-
readonly specificationVersion: "v2";
|
|
217
|
+
declare class LocalEmbeddingModel implements EmbeddingModelV3 {
|
|
218
|
+
readonly specificationVersion: "v3";
|
|
196
219
|
readonly provider: string;
|
|
197
220
|
readonly modelId: string;
|
|
198
221
|
readonly maxEmbeddingsPerCall: number;
|
|
@@ -200,7 +223,106 @@ declare class LocalEmbeddingModel implements EmbeddingModelV2<string> {
|
|
|
200
223
|
private readonly engine;
|
|
201
224
|
private readonly modelConfig;
|
|
202
225
|
constructor(provider: string, modelId: string, engine: TransformersEngine);
|
|
203
|
-
doEmbed(
|
|
226
|
+
doEmbed(options: EmbeddingModelV3CallOptions): Promise<EmbeddingModelV3Result>;
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
declare class LocalRerankingModel implements RerankingModelV3 {
|
|
230
|
+
readonly specificationVersion: "v3";
|
|
231
|
+
readonly provider = "local";
|
|
232
|
+
readonly modelId: string;
|
|
233
|
+
private languageModel;
|
|
234
|
+
private options;
|
|
235
|
+
private log;
|
|
236
|
+
constructor(modelId: string, config: LocalModelProviderConfig, engine: TransformersEngine, options?: RerankingModelOptions);
|
|
237
|
+
doRerank(options: {
|
|
238
|
+
query: string;
|
|
239
|
+
documents: {
|
|
240
|
+
type: 'text';
|
|
241
|
+
values: string[];
|
|
242
|
+
} | {
|
|
243
|
+
type: 'object';
|
|
244
|
+
values: Array<{
|
|
245
|
+
content: string;
|
|
246
|
+
id?: string;
|
|
247
|
+
}>;
|
|
248
|
+
};
|
|
249
|
+
topN?: number;
|
|
250
|
+
abortSignal?: AbortSignal;
|
|
251
|
+
providerOptions?: any;
|
|
252
|
+
headers?: Record<string, string>;
|
|
253
|
+
}): Promise<{
|
|
254
|
+
ranking: Array<{
|
|
255
|
+
index: number;
|
|
256
|
+
relevanceScore: number;
|
|
257
|
+
}>;
|
|
258
|
+
providerMetadata?: any;
|
|
259
|
+
warnings?: Array<{
|
|
260
|
+
type: 'other';
|
|
261
|
+
message: string;
|
|
262
|
+
}>;
|
|
263
|
+
response?: {
|
|
264
|
+
id?: string;
|
|
265
|
+
timestamp?: Date;
|
|
266
|
+
modelId?: string;
|
|
267
|
+
headers?: Record<string, string>;
|
|
268
|
+
body?: unknown;
|
|
269
|
+
};
|
|
270
|
+
}>;
|
|
271
|
+
private buildRerankPrompt;
|
|
272
|
+
private parseRerankResult;
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
interface LLMRerankingModelOptions extends RerankingModelOptions {
|
|
276
|
+
modelOptions?: {
|
|
277
|
+
temperature?: number;
|
|
278
|
+
maxTokens?: number;
|
|
279
|
+
};
|
|
280
|
+
}
|
|
281
|
+
declare class LLMRerankingModel implements RerankingModelV3 {
|
|
282
|
+
readonly specificationVersion: "v3";
|
|
283
|
+
readonly provider: string;
|
|
284
|
+
readonly modelId: string;
|
|
285
|
+
private readonly languageModel;
|
|
286
|
+
private readonly options;
|
|
287
|
+
private readonly log;
|
|
288
|
+
constructor(modelId: string, languageModel: LanguageModelV3, options?: LLMRerankingModelOptions);
|
|
289
|
+
doRerank(options: {
|
|
290
|
+
query: string;
|
|
291
|
+
documents: {
|
|
292
|
+
type: 'text';
|
|
293
|
+
values: string[];
|
|
294
|
+
} | {
|
|
295
|
+
type: 'object';
|
|
296
|
+
values: Array<{
|
|
297
|
+
content: string;
|
|
298
|
+
id?: string;
|
|
299
|
+
}>;
|
|
300
|
+
};
|
|
301
|
+
topN?: number;
|
|
302
|
+
abortSignal?: AbortSignal;
|
|
303
|
+
providerOptions?: any;
|
|
304
|
+
headers?: Record<string, string>;
|
|
305
|
+
}): Promise<{
|
|
306
|
+
ranking: Array<{
|
|
307
|
+
index: number;
|
|
308
|
+
relevanceScore: number;
|
|
309
|
+
}>;
|
|
310
|
+
providerMetadata?: any;
|
|
311
|
+
warnings?: Array<{
|
|
312
|
+
type: 'other';
|
|
313
|
+
message: string;
|
|
314
|
+
}>;
|
|
315
|
+
response?: {
|
|
316
|
+
id?: string;
|
|
317
|
+
timestamp?: Date;
|
|
318
|
+
modelId?: string;
|
|
319
|
+
headers?: Record<string, string>;
|
|
320
|
+
body?: unknown;
|
|
321
|
+
};
|
|
322
|
+
}>;
|
|
323
|
+
private extractTextContent;
|
|
324
|
+
private buildRerankPrompt;
|
|
325
|
+
private parseRerankResult;
|
|
204
326
|
}
|
|
205
327
|
|
|
206
328
|
declare class LocalModelError extends Error {
|
|
@@ -221,4 +343,4 @@ declare const VERSION = "0.1.0";
|
|
|
221
343
|
declare const SDK_NAME = "@easbot/local-model-sdk";
|
|
222
344
|
declare const SDK_DESCRIPTION = "Complete local model SDK for EASBot - Transformers.js + ONNX implementation";
|
|
223
345
|
|
|
224
|
-
export { type EmbeddingModelConfig, ErrorCode, ErrorHandler, type GenerateChunk, type GenerateOptions, type GenerateResult, type LanguageModelConfig, type LanguageModelSettings, LocalEmbeddingModel, LocalEnhancedLanguageModel, LocalLanguageModel, LocalModelError, LocalModelProvider, type LocalModelProviderConfig, type LocalProvider, type ModelCacheConfig, type ModelInfo, SDK_DESCRIPTION, SDK_NAME, SUPPORTED_EMBEDDING_MODELS, SUPPORTED_LANGUAGE_MODELS, type TransformersEngineConfig, VERSION, createLocal };
|
|
346
|
+
export { type EmbeddingModelConfig, ErrorCode, ErrorHandler, type GenerateChunk, type GenerateOptions, type GenerateResult, LLMRerankingModel, type LLMRerankingModelOptions, type LanguageModelConfig, type LanguageModelSettings, LocalEmbeddingModel, LocalEnhancedLanguageModel, LocalLanguageModel, LocalModelError, LocalModelProvider, type LocalModelProviderConfig, type LocalProvider, LocalRerankingModel, type ModelCacheConfig, type ModelInfo, type RerankingModelOptions, SDK_DESCRIPTION, SDK_NAME, SUPPORTED_EMBEDDING_MODELS, SUPPORTED_LANGUAGE_MODELS, type TransformersEngineConfig, VERSION, createLocal };
|