@easbot/local-model-sdk 0.1.7 → 0.1.13

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/dist/index.d.cts CHANGED
@@ -1,5 +1,5 @@
1
- import { LanguageModel, EmbeddingModel, Provider } from 'ai';
2
- import { LanguageModelV3StreamPart, LanguageModelV3GenerateResult, LanguageModelV3FinishReason, LanguageModelV3, LanguageModelV3CallOptions, EmbeddingModelV3, EmbeddingModelV3CallOptions, EmbeddingModelV3Result } from '@ai-sdk/provider';
1
+ import { LanguageModel, EmbeddingModel, RerankingModel, Provider } from 'ai';
2
+ import { LanguageModelV3StreamPart, LanguageModelV3GenerateResult, LanguageModelV3, LanguageModelV3FinishReason, LanguageModelV3CallOptions, EmbeddingModelV3, EmbeddingModelV3CallOptions, EmbeddingModelV3Result, RerankingModelV3 } from '@ai-sdk/provider';
3
3
 
4
4
  declare enum ErrorCode {
5
5
  MODEL_NOT_FOUND = "MODEL_NOT_FOUND",
@@ -95,6 +95,12 @@ interface ModelInfo {
95
95
  }
96
96
  declare const SUPPORTED_LANGUAGE_MODELS: Record<string, LanguageModelConfig>;
97
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
+ }
98
104
 
99
105
  declare class LocalModelProvider {
100
106
  private readonly config;
@@ -105,10 +111,11 @@ declare class LocalModelProvider {
105
111
  languageModel(modelId: string, options?: {
106
112
  useEnhancedModel?: boolean;
107
113
  }): LanguageModel;
108
- textEmbeddingModel(modelId: string): EmbeddingModel;
114
+ embeddingModel(modelId: string): EmbeddingModel;
109
115
  chat(modelId: string, options?: {
110
116
  useEnhancedModel?: boolean;
111
117
  }): LanguageModel;
118
+ rerankingModel(modelId: string, options?: RerankingModelOptions): RerankingModel;
112
119
  private getOrCreateEngine;
113
120
  private evictLeastRecentlyUsed;
114
121
  getLoadedModels(): ModelInfo[];
@@ -124,7 +131,8 @@ interface LocalProvider extends Provider {
124
131
  chat(modelId: string, options?: {
125
132
  useEnhancedModel?: boolean;
126
133
  }): LanguageModel;
127
- textEmbeddingModel(modelId: string): EmbeddingModel;
134
+ embeddingModel(modelId: string): EmbeddingModel;
135
+ rerankingModel(modelId: string, options?: RerankingModelOptions): RerankingModel;
128
136
  }
129
137
  declare function createLocal(config?: LocalModelProviderConfig): LocalProvider;
130
138
 
@@ -218,6 +226,105 @@ declare class LocalEmbeddingModel implements EmbeddingModelV3 {
218
226
  doEmbed(options: EmbeddingModelV3CallOptions): Promise<EmbeddingModelV3Result>;
219
227
  }
220
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;
326
+ }
327
+
221
328
  declare class LocalModelError extends Error {
222
329
  code: ErrorCode;
223
330
  cause?: Error | undefined;
@@ -236,4 +343,4 @@ declare const VERSION = "0.1.0";
236
343
  declare const SDK_NAME = "@easbot/local-model-sdk";
237
344
  declare const SDK_DESCRIPTION = "Complete local model SDK for EASBot - Transformers.js + ONNX implementation";
238
345
 
239
- 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,5 +1,5 @@
1
- import { LanguageModel, EmbeddingModel, Provider } from 'ai';
2
- import { LanguageModelV3StreamPart, LanguageModelV3GenerateResult, LanguageModelV3FinishReason, LanguageModelV3, LanguageModelV3CallOptions, EmbeddingModelV3, EmbeddingModelV3CallOptions, EmbeddingModelV3Result } from '@ai-sdk/provider';
1
+ import { LanguageModel, EmbeddingModel, RerankingModel, Provider } from 'ai';
2
+ import { LanguageModelV3StreamPart, LanguageModelV3GenerateResult, LanguageModelV3, LanguageModelV3FinishReason, LanguageModelV3CallOptions, EmbeddingModelV3, EmbeddingModelV3CallOptions, EmbeddingModelV3Result, RerankingModelV3 } from '@ai-sdk/provider';
3
3
 
4
4
  declare enum ErrorCode {
5
5
  MODEL_NOT_FOUND = "MODEL_NOT_FOUND",
@@ -95,6 +95,12 @@ interface ModelInfo {
95
95
  }
96
96
  declare const SUPPORTED_LANGUAGE_MODELS: Record<string, LanguageModelConfig>;
97
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
+ }
98
104
 
99
105
  declare class LocalModelProvider {
100
106
  private readonly config;
@@ -105,10 +111,11 @@ declare class LocalModelProvider {
105
111
  languageModel(modelId: string, options?: {
106
112
  useEnhancedModel?: boolean;
107
113
  }): LanguageModel;
108
- textEmbeddingModel(modelId: string): EmbeddingModel;
114
+ embeddingModel(modelId: string): EmbeddingModel;
109
115
  chat(modelId: string, options?: {
110
116
  useEnhancedModel?: boolean;
111
117
  }): LanguageModel;
118
+ rerankingModel(modelId: string, options?: RerankingModelOptions): RerankingModel;
112
119
  private getOrCreateEngine;
113
120
  private evictLeastRecentlyUsed;
114
121
  getLoadedModels(): ModelInfo[];
@@ -124,7 +131,8 @@ interface LocalProvider extends Provider {
124
131
  chat(modelId: string, options?: {
125
132
  useEnhancedModel?: boolean;
126
133
  }): LanguageModel;
127
- textEmbeddingModel(modelId: string): EmbeddingModel;
134
+ embeddingModel(modelId: string): EmbeddingModel;
135
+ rerankingModel(modelId: string, options?: RerankingModelOptions): RerankingModel;
128
136
  }
129
137
  declare function createLocal(config?: LocalModelProviderConfig): LocalProvider;
130
138
 
@@ -218,6 +226,105 @@ declare class LocalEmbeddingModel implements EmbeddingModelV3 {
218
226
  doEmbed(options: EmbeddingModelV3CallOptions): Promise<EmbeddingModelV3Result>;
219
227
  }
220
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;
326
+ }
327
+
221
328
  declare class LocalModelError extends Error {
222
329
  code: ErrorCode;
223
330
  cause?: Error | undefined;
@@ -236,4 +343,4 @@ declare const VERSION = "0.1.0";
236
343
  declare const SDK_NAME = "@easbot/local-model-sdk";
237
344
  declare const SDK_DESCRIPTION = "Complete local model SDK for EASBot - Transformers.js + ONNX implementation";
238
345
 
239
- 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 };