@reftrixmcp/ml 0.1.7
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/LICENSE +661 -0
- package/dist/dinov2/index.d.ts +7 -0
- package/dist/dinov2/index.d.ts.map +1 -0
- package/dist/dinov2/index.js +7 -0
- package/dist/dinov2/index.js.map +1 -0
- package/dist/dinov2/service.d.ts +106 -0
- package/dist/dinov2/service.d.ts.map +1 -0
- package/dist/dinov2/service.js +446 -0
- package/dist/dinov2/service.js.map +1 -0
- package/dist/dinov2/worker-thread-types.d.ts +77 -0
- package/dist/dinov2/worker-thread-types.d.ts.map +1 -0
- package/dist/dinov2/worker-thread-types.js +4 -0
- package/dist/dinov2/worker-thread-types.js.map +1 -0
- package/dist/dinov2/worker-thread.d.ts +2 -0
- package/dist/dinov2/worker-thread.d.ts.map +1 -0
- package/dist/dinov2/worker-thread.js +231 -0
- package/dist/dinov2/worker-thread.js.map +1 -0
- package/dist/embeddings/index.d.ts +12 -0
- package/dist/embeddings/index.d.ts.map +1 -0
- package/dist/embeddings/index.js +13 -0
- package/dist/embeddings/index.js.map +1 -0
- package/dist/embeddings/multimodal-embedding.service.d.ts +400 -0
- package/dist/embeddings/multimodal-embedding.service.d.ts.map +1 -0
- package/dist/embeddings/multimodal-embedding.service.js +650 -0
- package/dist/embeddings/multimodal-embedding.service.js.map +1 -0
- package/dist/embeddings/service.d.ts +261 -0
- package/dist/embeddings/service.d.ts.map +1 -0
- package/dist/embeddings/service.js +1093 -0
- package/dist/embeddings/service.js.map +1 -0
- package/dist/embeddings/style-embedding.service.d.ts +117 -0
- package/dist/embeddings/style-embedding.service.d.ts.map +1 -0
- package/dist/embeddings/style-embedding.service.js +157 -0
- package/dist/embeddings/style-embedding.service.js.map +1 -0
- package/dist/embeddings/types.d.ts +83 -0
- package/dist/embeddings/types.d.ts.map +1 -0
- package/dist/embeddings/types.js +4 -0
- package/dist/embeddings/types.js.map +1 -0
- package/dist/embeddings/vision-embedding.service.d.ts +70 -0
- package/dist/embeddings/vision-embedding.service.d.ts.map +1 -0
- package/dist/embeddings/vision-embedding.service.js +221 -0
- package/dist/embeddings/vision-embedding.service.js.map +1 -0
- package/dist/embeddings/vision-embedding.types.d.ts +102 -0
- package/dist/embeddings/vision-embedding.types.d.ts.map +1 -0
- package/dist/embeddings/vision-embedding.types.js +4 -0
- package/dist/embeddings/vision-embedding.types.js.map +1 -0
- package/dist/embeddings/worker-thread-types.d.ts +152 -0
- package/dist/embeddings/worker-thread-types.d.ts.map +1 -0
- package/dist/embeddings/worker-thread-types.js +4 -0
- package/dist/embeddings/worker-thread-types.js.map +1 -0
- package/dist/embeddings/worker-thread.d.ts +4 -0
- package/dist/embeddings/worker-thread.d.ts.map +1 -0
- package/dist/embeddings/worker-thread.js +441 -0
- package/dist/embeddings/worker-thread.js.map +1 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +19 -0
- package/dist/index.js.map +1 -0
- package/dist/search/fulltext-helpers.d.ts +30 -0
- package/dist/search/fulltext-helpers.d.ts.map +1 -0
- package/dist/search/fulltext-helpers.js +40 -0
- package/dist/search/fulltext-helpers.js.map +1 -0
- package/dist/search/hybrid.d.ts +40 -0
- package/dist/search/hybrid.d.ts.map +1 -0
- package/dist/search/hybrid.js +61 -0
- package/dist/search/hybrid.js.map +1 -0
- package/dist/search/index.d.ts +12 -0
- package/dist/search/index.d.ts.map +1 -0
- package/dist/search/index.js +11 -0
- package/dist/search/index.js.map +1 -0
- package/dist/search/rrf.d.ts +69 -0
- package/dist/search/rrf.d.ts.map +1 -0
- package/dist/search/rrf.js +108 -0
- package/dist/search/rrf.js.map +1 -0
- package/dist/search/types.d.ts +130 -0
- package/dist/search/types.d.ts.map +1 -0
- package/dist/search/types.js +4 -0
- package/dist/search/types.js.map +1 -0
- package/package.json +65 -0
- package/src/dinov2/index.ts +21 -0
- package/src/dinov2/service.ts +539 -0
- package/src/dinov2/worker-thread-types.ts +103 -0
- package/src/dinov2/worker-thread.ts +306 -0
- package/src/embeddings/index.ts +74 -0
- package/src/embeddings/multimodal-embedding.service.ts +992 -0
- package/src/embeddings/service.ts +1287 -0
- package/src/embeddings/style-embedding.service.ts +201 -0
- package/src/embeddings/types.ts +95 -0
- package/src/embeddings/vision-embedding.service.ts +273 -0
- package/src/embeddings/vision-embedding.types.ts +117 -0
- package/src/embeddings/worker-thread-types.ts +194 -0
- package/src/embeddings/worker-thread.ts +529 -0
- package/src/index.ts +70 -0
- package/src/search/fulltext-helpers.ts +45 -0
- package/src/search/hybrid.ts +107 -0
- package/src/search/index.ts +25 -0
- package/src/search/rrf.ts +154 -0
- package/src/search/types.ts +141 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/embeddings/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Style Embedding Service
|
|
3
|
+
*
|
|
4
|
+
* スタイル特徴量のテキスト表現から埋め込みベクトルを生成するサービス。
|
|
5
|
+
* 既存のEmbeddingServiceをラップし、スタイル特徴量に特化した機能を提供。
|
|
6
|
+
*
|
|
7
|
+
* @module embeddings/style-embedding.service
|
|
8
|
+
* @version 0.1.0
|
|
9
|
+
*/
|
|
10
|
+
import { EmbeddingService } from "./service.js";
|
|
11
|
+
import type { CacheStats } from "./types.js";
|
|
12
|
+
/**
|
|
13
|
+
* スタイル埋め込みの設定
|
|
14
|
+
*/
|
|
15
|
+
export interface StyleEmbeddingConfig {
|
|
16
|
+
/**
|
|
17
|
+
* 内部で使用するEmbeddingServiceのインスタンス
|
|
18
|
+
* デフォルトは新規インスタンスを作成
|
|
19
|
+
*/
|
|
20
|
+
embeddingService?: EmbeddingService;
|
|
21
|
+
/**
|
|
22
|
+
* バッチ処理時の最大並列数
|
|
23
|
+
* @default 32
|
|
24
|
+
*/
|
|
25
|
+
batchSize?: number;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* スタイル特徴量埋め込み生成サービス
|
|
29
|
+
*
|
|
30
|
+
* スタイル特徴量テキスト表現から768次元の埋め込みベクトルを生成。
|
|
31
|
+
* multilingual-e5-baseモデルを使用し、HNSWベクトル検索と互換。
|
|
32
|
+
*/
|
|
33
|
+
export declare class StyleEmbeddingService {
|
|
34
|
+
private embeddingService;
|
|
35
|
+
private batchSize;
|
|
36
|
+
constructor(config?: StyleEmbeddingConfig);
|
|
37
|
+
/**
|
|
38
|
+
* スタイル特徴量テキストから埋め込みを生成
|
|
39
|
+
*
|
|
40
|
+
* @param styleText - StyleFeaturesToTextで生成されたテキスト表現
|
|
41
|
+
* @returns 768次元の正規化済み埋め込みベクトル
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```typescript
|
|
45
|
+
* const styleText = 'Design style: thin stroke (1px) consistent outlined simple complexity';
|
|
46
|
+
* const embedding = await service.generateEmbedding(styleText);
|
|
47
|
+
* // embedding.length === 768
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
generateEmbedding(styleText: string): Promise<number[]>;
|
|
51
|
+
/**
|
|
52
|
+
* クエリテキストから検索用埋め込みを生成
|
|
53
|
+
*
|
|
54
|
+
* 類似デザイン検索時に使用。ユーザーのクエリや参照デザインの
|
|
55
|
+
* スタイル特徴量テキストから検索用の埋め込みを生成。
|
|
56
|
+
*
|
|
57
|
+
* @param queryText - 検索クエリまたは参照スタイルテキスト
|
|
58
|
+
* @returns 768次元の正規化済み埋め込みベクトル
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* ```typescript
|
|
62
|
+
* const queryEmbedding = await service.generateQueryEmbedding('thin stroke outlined icon');
|
|
63
|
+
* // HNSW検索で使用
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
generateQueryEmbedding(queryText: string): Promise<number[]>;
|
|
67
|
+
/**
|
|
68
|
+
* 複数のスタイル特徴量テキストからバッチで埋め込みを生成
|
|
69
|
+
*
|
|
70
|
+
* @param styleTexts - スタイル特徴量テキストの配列
|
|
71
|
+
* @returns 768次元の埋め込みベクトルの配列
|
|
72
|
+
*
|
|
73
|
+
* @example
|
|
74
|
+
* ```typescript
|
|
75
|
+
* const embeddings = await service.generateBatchEmbeddings([
|
|
76
|
+
* 'Design style: thin stroke outlined',
|
|
77
|
+
* 'Design style: thick stroke filled',
|
|
78
|
+
* ]);
|
|
79
|
+
* // embeddings.length === 2
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
generateBatchEmbeddings(styleTexts: string[]): Promise<number[][]>;
|
|
83
|
+
/**
|
|
84
|
+
* キャッシュ統計を取得
|
|
85
|
+
*/
|
|
86
|
+
getCacheStats(): CacheStats;
|
|
87
|
+
/**
|
|
88
|
+
* キャッシュをクリア
|
|
89
|
+
*/
|
|
90
|
+
clearCache(): void;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* デフォルトのスタイル埋め込みサービスインスタンス
|
|
94
|
+
*/
|
|
95
|
+
export declare const styleEmbeddingService: StyleEmbeddingService;
|
|
96
|
+
/**
|
|
97
|
+
* スタイル特徴量テキストから埋め込みを生成するヘルパー関数
|
|
98
|
+
*
|
|
99
|
+
* @param styleText - スタイル特徴量テキスト
|
|
100
|
+
* @returns 768次元の埋め込みベクトル
|
|
101
|
+
*/
|
|
102
|
+
export declare function createStyleEmbedding(styleText: string): Promise<number[]>;
|
|
103
|
+
/**
|
|
104
|
+
* 複数のスタイル特徴量テキストからバッチで埋め込みを生成するヘルパー関数
|
|
105
|
+
*
|
|
106
|
+
* @param styleTexts - スタイル特徴量テキストの配列
|
|
107
|
+
* @returns 768次元の埋め込みベクトルの配列
|
|
108
|
+
*/
|
|
109
|
+
export declare function createBatchStyleEmbeddings(styleTexts: string[]): Promise<number[][]>;
|
|
110
|
+
/**
|
|
111
|
+
* 検索クエリ用の埋め込みを生成するヘルパー関数
|
|
112
|
+
*
|
|
113
|
+
* @param queryText - 検索クエリテキスト
|
|
114
|
+
* @returns 768次元の埋め込みベクトル
|
|
115
|
+
*/
|
|
116
|
+
export declare function createQueryEmbedding(queryText: string): Promise<number[]>;
|
|
117
|
+
//# sourceMappingURL=style-embedding.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"style-embedding.service.d.ts","sourceRoot":"","sources":["../../src/embeddings/style-embedding.service.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAW7C;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAEpC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,SAAS,CAAS;gBAEd,MAAM,GAAE,oBAAyB;IAO7C;;;;;;;;;;;;OAYG;IACG,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAY7D;;;;;;;;;;;;;;OAcG;IACG,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAWlE;;;;;;;;;;;;;;OAcG;IACG,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IAsBxE;;OAEG;IACH,aAAa,IAAI,UAAU;IAI3B;;OAEG;IACH,UAAU,IAAI,IAAI;CAInB;AAMD;;GAEG;AACH,eAAO,MAAM,qBAAqB,uBAA8B,CAAC;AAEjE;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAE/E;AAED;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAE1F;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAE/E"}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
// SPDX-FileCopyrightText: 2026 TKMD and Reftrix Contributors
|
|
2
|
+
// SPDX-License-Identifier: AGPL-3.0-only
|
|
3
|
+
/**
|
|
4
|
+
* Style Embedding Service
|
|
5
|
+
*
|
|
6
|
+
* スタイル特徴量のテキスト表現から埋め込みベクトルを生成するサービス。
|
|
7
|
+
* 既存のEmbeddingServiceをラップし、スタイル特徴量に特化した機能を提供。
|
|
8
|
+
*
|
|
9
|
+
* @module embeddings/style-embedding.service
|
|
10
|
+
* @version 0.1.0
|
|
11
|
+
*/
|
|
12
|
+
import { EmbeddingService } from "./service.js";
|
|
13
|
+
// 開発環境でのログ出力
|
|
14
|
+
const isDevelopment = process.env.NODE_ENV === "development";
|
|
15
|
+
const log = (message, data) => {
|
|
16
|
+
if (isDevelopment) {
|
|
17
|
+
// eslint-disable-next-line no-console
|
|
18
|
+
console.log(`[StyleEmbedding] ${message}`, data ?? "");
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* スタイル特徴量埋め込み生成サービス
|
|
23
|
+
*
|
|
24
|
+
* スタイル特徴量テキスト表現から768次元の埋め込みベクトルを生成。
|
|
25
|
+
* multilingual-e5-baseモデルを使用し、HNSWベクトル検索と互換。
|
|
26
|
+
*/
|
|
27
|
+
export class StyleEmbeddingService {
|
|
28
|
+
embeddingService;
|
|
29
|
+
batchSize;
|
|
30
|
+
constructor(config = {}) {
|
|
31
|
+
this.embeddingService = config.embeddingService ?? new EmbeddingService();
|
|
32
|
+
this.batchSize = config.batchSize ?? 32;
|
|
33
|
+
log("StyleEmbeddingService created", { batchSize: this.batchSize });
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* スタイル特徴量テキストから埋め込みを生成
|
|
37
|
+
*
|
|
38
|
+
* @param styleText - StyleFeaturesToTextで生成されたテキスト表現
|
|
39
|
+
* @returns 768次元の正規化済み埋め込みベクトル
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```typescript
|
|
43
|
+
* const styleText = 'Design style: thin stroke (1px) consistent outlined simple complexity';
|
|
44
|
+
* const embedding = await service.generateEmbedding(styleText);
|
|
45
|
+
* // embedding.length === 768
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
async generateEmbedding(styleText) {
|
|
49
|
+
log("Generating embedding for style text", { length: styleText.length });
|
|
50
|
+
// "passage:" プレフィックスを使用(ドキュメント埋め込みとして扱う)
|
|
51
|
+
// スタイル特徴量は検索対象のドキュメント側なのでpassageを使用
|
|
52
|
+
const embedding = await this.embeddingService.generateEmbedding(styleText, "passage");
|
|
53
|
+
log("Embedding generated", { dimension: embedding.length });
|
|
54
|
+
return embedding;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* クエリテキストから検索用埋め込みを生成
|
|
58
|
+
*
|
|
59
|
+
* 類似デザイン検索時に使用。ユーザーのクエリや参照デザインの
|
|
60
|
+
* スタイル特徴量テキストから検索用の埋め込みを生成。
|
|
61
|
+
*
|
|
62
|
+
* @param queryText - 検索クエリまたは参照スタイルテキスト
|
|
63
|
+
* @returns 768次元の正規化済み埋め込みベクトル
|
|
64
|
+
*
|
|
65
|
+
* @example
|
|
66
|
+
* ```typescript
|
|
67
|
+
* const queryEmbedding = await service.generateQueryEmbedding('thin stroke outlined icon');
|
|
68
|
+
* // HNSW検索で使用
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
71
|
+
async generateQueryEmbedding(queryText) {
|
|
72
|
+
log("Generating query embedding", { length: queryText.length });
|
|
73
|
+
// "query:" プレフィックスを使用(検索クエリとして扱う)
|
|
74
|
+
const embedding = await this.embeddingService.generateEmbedding(queryText, "query");
|
|
75
|
+
log("Query embedding generated", { dimension: embedding.length });
|
|
76
|
+
return embedding;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* 複数のスタイル特徴量テキストからバッチで埋め込みを生成
|
|
80
|
+
*
|
|
81
|
+
* @param styleTexts - スタイル特徴量テキストの配列
|
|
82
|
+
* @returns 768次元の埋め込みベクトルの配列
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* ```typescript
|
|
86
|
+
* const embeddings = await service.generateBatchEmbeddings([
|
|
87
|
+
* 'Design style: thin stroke outlined',
|
|
88
|
+
* 'Design style: thick stroke filled',
|
|
89
|
+
* ]);
|
|
90
|
+
* // embeddings.length === 2
|
|
91
|
+
* ```
|
|
92
|
+
*/
|
|
93
|
+
async generateBatchEmbeddings(styleTexts) {
|
|
94
|
+
if (styleTexts.length === 0) {
|
|
95
|
+
return [];
|
|
96
|
+
}
|
|
97
|
+
log("Generating batch embeddings", { count: styleTexts.length });
|
|
98
|
+
const startTime = performance.now();
|
|
99
|
+
// "passage:" プレフィックスを使用(ドキュメント埋め込み)
|
|
100
|
+
const embeddings = await this.embeddingService.generateBatchEmbeddings(styleTexts, "passage");
|
|
101
|
+
const elapsed = performance.now() - startTime;
|
|
102
|
+
log("Batch embeddings generated", {
|
|
103
|
+
count: embeddings.length,
|
|
104
|
+
elapsedMs: elapsed,
|
|
105
|
+
avgMs: elapsed / embeddings.length,
|
|
106
|
+
});
|
|
107
|
+
return embeddings;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* キャッシュ統計を取得
|
|
111
|
+
*/
|
|
112
|
+
getCacheStats() {
|
|
113
|
+
return this.embeddingService.getCacheStats();
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* キャッシュをクリア
|
|
117
|
+
*/
|
|
118
|
+
clearCache() {
|
|
119
|
+
this.embeddingService.clearCache();
|
|
120
|
+
log("Cache cleared");
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
// =============================================================================
|
|
124
|
+
// シングルトンとヘルパー関数
|
|
125
|
+
// =============================================================================
|
|
126
|
+
/**
|
|
127
|
+
* デフォルトのスタイル埋め込みサービスインスタンス
|
|
128
|
+
*/
|
|
129
|
+
export const styleEmbeddingService = new StyleEmbeddingService();
|
|
130
|
+
/**
|
|
131
|
+
* スタイル特徴量テキストから埋め込みを生成するヘルパー関数
|
|
132
|
+
*
|
|
133
|
+
* @param styleText - スタイル特徴量テキスト
|
|
134
|
+
* @returns 768次元の埋め込みベクトル
|
|
135
|
+
*/
|
|
136
|
+
export async function createStyleEmbedding(styleText) {
|
|
137
|
+
return styleEmbeddingService.generateEmbedding(styleText);
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* 複数のスタイル特徴量テキストからバッチで埋め込みを生成するヘルパー関数
|
|
141
|
+
*
|
|
142
|
+
* @param styleTexts - スタイル特徴量テキストの配列
|
|
143
|
+
* @returns 768次元の埋め込みベクトルの配列
|
|
144
|
+
*/
|
|
145
|
+
export async function createBatchStyleEmbeddings(styleTexts) {
|
|
146
|
+
return styleEmbeddingService.generateBatchEmbeddings(styleTexts);
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* 検索クエリ用の埋め込みを生成するヘルパー関数
|
|
150
|
+
*
|
|
151
|
+
* @param queryText - 検索クエリテキスト
|
|
152
|
+
* @returns 768次元の埋め込みベクトル
|
|
153
|
+
*/
|
|
154
|
+
export async function createQueryEmbedding(queryText) {
|
|
155
|
+
return styleEmbeddingService.generateQueryEmbedding(queryText);
|
|
156
|
+
}
|
|
157
|
+
//# sourceMappingURL=style-embedding.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"style-embedding.service.js","sourceRoot":"","sources":["../../src/embeddings/style-embedding.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Embedding service type definitions
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Type of text for embedding generation
|
|
6
|
+
* - 'query': For search queries (prefixed with "query: ")
|
|
7
|
+
* - 'passage': For document/content (prefixed with "passage: ")
|
|
8
|
+
*/
|
|
9
|
+
export type EmbeddingTextType = "query" | "passage";
|
|
10
|
+
/**
|
|
11
|
+
* Configuration options for EmbeddingService
|
|
12
|
+
*/
|
|
13
|
+
export interface EmbeddingServiceConfig {
|
|
14
|
+
/**
|
|
15
|
+
* Model ID from Hugging Face Hub
|
|
16
|
+
* @default "Xenova/multilingual-e5-base"
|
|
17
|
+
*/
|
|
18
|
+
modelId?: string;
|
|
19
|
+
/**
|
|
20
|
+
* Cache directory for downloaded models
|
|
21
|
+
*/
|
|
22
|
+
cacheDir?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Device to run inference on
|
|
25
|
+
* @default "cpu"
|
|
26
|
+
*/
|
|
27
|
+
device?: "cpu" | "cuda" | "webgpu";
|
|
28
|
+
/**
|
|
29
|
+
* Data type for model precision
|
|
30
|
+
* @default "fp32"
|
|
31
|
+
*/
|
|
32
|
+
dtype?: "fp32" | "fp16" | "q8" | "q4";
|
|
33
|
+
/**
|
|
34
|
+
* Maximum number of entries in the embedding cache (LRU eviction)
|
|
35
|
+
* @default 5000
|
|
36
|
+
*/
|
|
37
|
+
maxCacheSize?: number;
|
|
38
|
+
/**
|
|
39
|
+
* Number of inferences before the ONNX pipeline is disposed and recreated.
|
|
40
|
+
*
|
|
41
|
+
* onnxruntime-node uses a native C++ arena allocator that grows monotonically
|
|
42
|
+
* during inference. Pipeline recycling tears down the InferenceSession via
|
|
43
|
+
* session.release(), freeing the arena's native memory back to the OS.
|
|
44
|
+
*
|
|
45
|
+
* Lower values reduce peak memory but increase overhead from model re-initialization.
|
|
46
|
+
* Higher values reduce overhead but allow more native memory accumulation.
|
|
47
|
+
*
|
|
48
|
+
* Set to 0 to disable automatic recycling.
|
|
49
|
+
*
|
|
50
|
+
* @default 30
|
|
51
|
+
*/
|
|
52
|
+
pipelineRecycleThreshold?: number;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Cache statistics interface
|
|
56
|
+
*/
|
|
57
|
+
export interface CacheStats {
|
|
58
|
+
hits: number;
|
|
59
|
+
misses: number;
|
|
60
|
+
size: number;
|
|
61
|
+
evictions: number;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Embedding result with metadata
|
|
65
|
+
*/
|
|
66
|
+
export interface EmbeddingResult {
|
|
67
|
+
embedding: number[];
|
|
68
|
+
text: string;
|
|
69
|
+
type: EmbeddingTextType;
|
|
70
|
+
cached: boolean;
|
|
71
|
+
processingTimeMs: number;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Batch embedding result
|
|
75
|
+
*/
|
|
76
|
+
export interface BatchEmbeddingResult {
|
|
77
|
+
embeddings: number[][];
|
|
78
|
+
texts: string[];
|
|
79
|
+
type: EmbeddingTextType;
|
|
80
|
+
totalProcessingTimeMs: number;
|
|
81
|
+
cachedCount: number;
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/embeddings/types.ts"],"names":[],"mappings":"AAGA;;GAEG;AAEH;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,SAAS,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC;IAEnC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;IAEtC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;;;;;;;OAaG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,iBAAiB,CAAC;IACxB,MAAM,EAAE,OAAO,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,EAAE,EAAE,CAAC;IACvB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,iBAAiB,CAAC;IACxB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/embeddings/types.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,yCAAyC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Vision Embedding Service
|
|
3
|
+
*
|
|
4
|
+
* Vision Embedding生成ロジック
|
|
5
|
+
*
|
|
6
|
+
* 視覚特徴量(VisionFeatures)からテキスト表現を生成し、
|
|
7
|
+
* multilingual-e5-baseモデルで768次元の埋め込みベクトルを生成するサービス
|
|
8
|
+
*/
|
|
9
|
+
import type { VisionFeatures, VisionEmbeddingServiceConfig, VisionCacheStats } from "./vision-embedding.types.js";
|
|
10
|
+
/**
|
|
11
|
+
* VisionFeaturesをテキスト表現に変換する
|
|
12
|
+
*
|
|
13
|
+
* @param features - 視覚特徴量
|
|
14
|
+
* @returns テキスト表現
|
|
15
|
+
*/
|
|
16
|
+
export declare function visionFeaturesToText(features: VisionFeatures): string;
|
|
17
|
+
/**
|
|
18
|
+
* VisionEmbeddingService
|
|
19
|
+
*
|
|
20
|
+
* 視覚特徴量から768次元の埋め込みベクトルを生成するサービス
|
|
21
|
+
*/
|
|
22
|
+
export declare class VisionEmbeddingService {
|
|
23
|
+
private embeddingService;
|
|
24
|
+
private cache;
|
|
25
|
+
private cacheHits;
|
|
26
|
+
private cacheMisses;
|
|
27
|
+
private cacheEvictions;
|
|
28
|
+
private maxCacheSize;
|
|
29
|
+
constructor(config?: VisionEmbeddingServiceConfig);
|
|
30
|
+
/**
|
|
31
|
+
* VisionFeaturesから768次元の埋め込みベクトルを生成
|
|
32
|
+
*
|
|
33
|
+
* @param features - 視覚特徴量
|
|
34
|
+
* @returns 768次元のL2正規化されたベクトル
|
|
35
|
+
*/
|
|
36
|
+
generateVisionEmbedding(features: VisionFeatures): Promise<number[]>;
|
|
37
|
+
/**
|
|
38
|
+
* 複数のVisionFeaturesから埋め込みベクトルを一括生成
|
|
39
|
+
*
|
|
40
|
+
* @param featuresArray - 視覚特徴量の配列
|
|
41
|
+
* @returns 768次元ベクトルの配列
|
|
42
|
+
*/
|
|
43
|
+
generateBatchVisionEmbeddings(featuresArray: VisionFeatures[]): Promise<number[][]>;
|
|
44
|
+
/**
|
|
45
|
+
* キャッシュ統計を取得
|
|
46
|
+
*/
|
|
47
|
+
getCacheStats(): VisionCacheStats;
|
|
48
|
+
/**
|
|
49
|
+
* キャッシュをクリア
|
|
50
|
+
*/
|
|
51
|
+
clearCache(): void;
|
|
52
|
+
/**
|
|
53
|
+
* キャッシュエントリを取得(LRU更新)
|
|
54
|
+
*/
|
|
55
|
+
private getCacheEntry;
|
|
56
|
+
/**
|
|
57
|
+
* キャッシュエントリを設定(LRU eviction)
|
|
58
|
+
*/
|
|
59
|
+
private setCacheEntry;
|
|
60
|
+
}
|
|
61
|
+
export declare const visionEmbeddingService: VisionEmbeddingService;
|
|
62
|
+
/**
|
|
63
|
+
* 単一のVisionFeaturesから埋め込みを生成するヘルパー関数
|
|
64
|
+
*/
|
|
65
|
+
export declare function createVisionEmbedding(features: VisionFeatures): Promise<number[]>;
|
|
66
|
+
/**
|
|
67
|
+
* 複数のVisionFeaturesから埋め込みを一括生成するヘルパー関数
|
|
68
|
+
*/
|
|
69
|
+
export declare function createBatchVisionEmbeddings(featuresArray: VisionFeatures[]): Promise<number[][]>;
|
|
70
|
+
//# sourceMappingURL=vision-embedding.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vision-embedding.service.d.ts","sourceRoot":"","sources":["../../src/embeddings/vision-embedding.service.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,4BAA4B,EAC5B,gBAAgB,EACjB,MAAM,6BAA6B,CAAC;AAQrC;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,CAmBrE;AAiBD;;;;GAIG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,KAAK,CAAoC;IACjD,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,YAAY,CAAS;gBAEjB,MAAM,GAAE,4BAAiC;IAUrD;;;;;OAKG;IACG,uBAAuB,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAkC1E;;;;;OAKG;IACG,6BAA6B,CAAC,aAAa,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IA0DzF;;OAEG;IACH,aAAa,IAAI,gBAAgB;IASjC;;OAEG;IACH,UAAU,IAAI,IAAI;IAYlB;;OAEG;IACH,OAAO,CAAC,aAAa;IAUrB;;OAEG;IACH,OAAO,CAAC,aAAa;CAiBtB;AAGD,eAAO,MAAM,sBAAsB,wBAA+B,CAAC;AAEnE;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAEvF;AAED;;GAEG;AACH,wBAAsB,2BAA2B,CAC/C,aAAa,EAAE,cAAc,EAAE,GAC9B,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAErB"}
|