@memberjunction/ai-gemini 5.43.0 → 5.44.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.
@@ -0,0 +1,59 @@
1
+ import { BaseEmbeddings, EmbedTextParams, EmbedTextsParams, EmbedTextResult, EmbedTextsResult, EmbedContentParams, EmbedContentResult, FileCapabilities } from '@memberjunction/ai';
2
+ import { GoogleGenAI } from '@google/genai';
3
+ export declare class GeminiEmbedding extends BaseEmbeddings {
4
+ private _gemini;
5
+ constructor(apiKey: string);
6
+ get GeminiClient(): GoogleGenAI;
7
+ /** Extra retry attempts per text on a transient failure, on top of the initial call. `0` disables retry. */
8
+ protected get maxEmbedTextsRetries(): number;
9
+ /** Base delay (ms) for exponential backoff between per-text retries: delay = base * 2^(n-1). */
10
+ protected get embedRetryBaseDelayMs(): number;
11
+ GetFileCapabilities(): FileCapabilities | null;
12
+ EmbedText(params: EmbedTextParams): Promise<EmbedTextResult>;
13
+ /**
14
+ * Embeds an array of texts, returning exactly ONE vector per input text, in input order.
15
+ *
16
+ * IMPORTANT: `gemini-embedding-2` is multimodal — passing the whole `texts` array as a single
17
+ * `contents` value makes Gemini FUSE the texts into ONE blended vector (`response.embeddings`
18
+ * has length 1). That silently corrupts any caller that pairs vectors to records by index
19
+ * (e.g. `EntityVectorSyncer`). To guarantee a 1:1 mapping we issue a separate `embedContent`
20
+ * call per text with bounded concurrency, then hard-assert the count before returning.
21
+ *
22
+ * Error contract is preserved from the original: on an API/embedding failure this returns an
23
+ * empty `vectors` array (matching the prior behavior and the other MJ embedding providers), so
24
+ * batch pipelines degrade gracefully instead of aborting. A SUCCESSFUL run is then hard-asserted
25
+ * to be 1:1 with the inputs and throws on mismatch — so the batch-collapse bug can never again
26
+ * silently return a short/blended array that downstream code mis-pairs by index.
27
+ */
28
+ EmbedTexts(params: EmbedTextsParams): Promise<EmbedTextsResult>;
29
+ /**
30
+ * Embeds each text with its own `embedContent` call while capping the number of concurrent
31
+ * in-flight requests at `maxConcurrency`. Results are returned in the same order as `texts`.
32
+ */
33
+ private embedTextsConcurrently;
34
+ /**
35
+ * Embeds a single text and returns its vector, with bounded exponential-backoff retry so a lone
36
+ * transient failure (a 429/500, or an empty/missing embedding) doesn't sink the whole batch —
37
+ * its failure rate otherwise scales with the text count. Retries {@link maxEmbedTextsRetries}
38
+ * times, then throws; {@link EmbedTexts} catches that to apply the batch-level empty-result
39
+ * contract, so a batch never ends up with a silently-corrupt (empty or blended) vector for one text.
40
+ */
41
+ private embedSingleText;
42
+ /**
43
+ * Multimodal embed: text and/or interleaved media blocks (image/audio/video/document)
44
+ * fused into ONE vector in the same space as text embeddings — enabling cross-modal
45
+ * retrieval (a text query matching an image, audio, or video). Overrides the base
46
+ * BaseEmbeddings.EmbedContent, which is text-only. Content blocks are mapped to Gemini
47
+ * parts via GeminiLLM.MapMJContentToGeminiParts. Returns an empty vector on error,
48
+ * consistent with the text methods.
49
+ */
50
+ EmbedContent(params: EmbedContentParams): Promise<EmbedContentResult>;
51
+ GetEmbeddingModels(): Promise<EmbeddingModelInfo[]>;
52
+ }
53
+ /** Describes an embedding model returned by {@link GeminiEmbedding.GetEmbeddingModels}. */
54
+ export interface EmbeddingModelInfo {
55
+ Model: string;
56
+ Description: string;
57
+ OutputDimension: number;
58
+ }
59
+ //# sourceMappingURL=geminiEmbedding.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geminiEmbedding.d.ts","sourceRoot":"","sources":["../src/geminiEmbedding.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAGhB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EACnB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,WAAW,EAAW,MAAM,eAAe,CAAC;AAkCrD,qBACa,eAAgB,SAAQ,cAAc;IAC/C,OAAO,CAAC,OAAO,CAAc;gBAEjB,MAAM,EAAE,MAAM;IAK1B,IAAW,YAAY,IAAI,WAAW,CAErC;IAED,4GAA4G;IAC5G,SAAS,KAAK,oBAAoB,IAAI,MAAM,CAE3C;IAED,gGAAgG;IAChG,SAAS,KAAK,qBAAqB,IAAI,MAAM,CAE5C;IAEe,mBAAmB,IAAI,gBAAgB,GAAG,IAAI;IA4BjD,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAgBzE;;;;;;;;;;;;;;OAcG;IACU,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IA+B5E;;;OAGG;YACW,sBAAsB;IAyBpC;;;;;;OAMG;YACW,eAAe;IAyB7B;;;;;;;OAOG;IACmB,YAAY,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAyB9E,kBAAkB,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;CASnE;AAED,2FAA2F;AAC3F,MAAM,WAAW,kBAAkB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;CAC3B"}
@@ -0,0 +1,248 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { BaseEmbeddings, ModelUsage, ErrorAnalyzer, } from '@memberjunction/ai';
11
+ import { RegisterClass } from '@memberjunction/global';
12
+ import { GoogleGenAI } from '@google/genai';
13
+ import { GeminiLLM } from './index.js';
14
+ /**
15
+ * Gemini embedding provider for MemberJunction.
16
+ *
17
+ * A `BaseEmbeddings` implementation backed by Google's `gemini-embedding-2` — a natively
18
+ * MULTIMODAL embedding model (text, image, video, audio, and documents share one vector space).
19
+ * Overrides {@link BaseEmbeddings.EmbedContent} (text-only by default) to embed text and/or
20
+ * interleaved media (image/video/audio/document) into the SAME vector space as text —
21
+ * enabling cross-modal retrieval (a text query matching an image, audio, or video).
22
+
23
+ *
24
+ * Resolved via `ClassFactory.CreateInstance(BaseEmbeddings, "GeminiEmbedding", apiKey)`.
25
+ *
26
+ * Note: `gemini-embedding-2` has no `task_type` parameter — the retrieval instruction (e.g.
27
+ * `"task: search result | query: …"` for queries vs `"title: … | text: …"` for documents) is
28
+ * carried IN the text by the caller.
29
+ */
30
+ const DEFAULT_MODEL = 'gemini-embedding-2';
31
+ // The class name is deliberately model-agnostic (renamed from GeminiEmbedding2) — it outlives any single model version.
32
+ /**
33
+ * Maximum number of in-flight `embedContent` requests issued by {@link GeminiEmbedding.EmbedTexts}.
34
+ * `gemini-embedding-2` has no synchronous batch endpoint, so EmbedTexts fans out one request per
35
+ * text; this bounds concurrency to stay under Gemini's embedding rate limits on large batches
36
+ * while keeping throughput reasonable.
37
+ */
38
+ const EMBED_TEXTS_MAX_CONCURRENCY = 4;
39
+ /** Sleep helper for exponential backoff between per-text embed retries. */
40
+ const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
41
+ let GeminiEmbedding = class GeminiEmbedding extends BaseEmbeddings {
42
+ constructor(apiKey) {
43
+ super(apiKey);
44
+ this._gemini = new GoogleGenAI({ apiKey });
45
+ }
46
+ get GeminiClient() {
47
+ return this._gemini;
48
+ }
49
+ /** Extra retry attempts per text on a transient failure, on top of the initial call. `0` disables retry. */
50
+ get maxEmbedTextsRetries() {
51
+ return 2;
52
+ }
53
+ /** Base delay (ms) for exponential backoff between per-text retries: delay = base * 2^(n-1). */
54
+ get embedRetryBaseDelayMs() {
55
+ return 250;
56
+ }
57
+ GetFileCapabilities() {
58
+ // Per Google's gemini-embedding-2 model spec (GA 2026-04-22):
59
+ // images: png/jpeg/webp/bmp/heic/heif/avif (max 6 per request)
60
+ // video: mpeg/mp4 (1 per request) audio: mp3/wav (1 per request) pdf (1 file, 6 pages)
61
+ // 'audio/mpeg' is included as a tolerant alias for the canonical MP3 type (doc lists 'audio/mp3').
62
+ // MaxFilesPerRequest reflects the image max (6); non-image modalities are capped at 1 by the API.
63
+ return {
64
+ SupportedMimeTypes: [
65
+ 'image/png',
66
+ 'image/jpeg',
67
+ 'image/webp',
68
+ 'image/bmp',
69
+ 'image/heic',
70
+ 'image/heif',
71
+ 'image/avif',
72
+ 'video/mpeg',
73
+ 'video/mp4',
74
+ 'audio/mp3',
75
+ 'audio/mpeg',
76
+ 'audio/wav',
77
+ 'application/pdf',
78
+ ],
79
+ MaxFileSize: 100 * 1024 * 1024, // Google docs state no hard per-file limit; generous cap
80
+ MaxFilesPerRequest: 6,
81
+ HasFileAPI: false,
82
+ };
83
+ }
84
+ async EmbedText(params) {
85
+ const model = params.model || DEFAULT_MODEL;
86
+ try {
87
+ const response = await this._gemini.models.embedContent({ model, contents: params.text });
88
+ return {
89
+ object: 'object',
90
+ model,
91
+ ModelUsage: new ModelUsage(0, 0),
92
+ vector: response.embeddings?.[0]?.values ?? [],
93
+ };
94
+ }
95
+ catch (error) {
96
+ console.error('Gemini embedding error:', ErrorAnalyzer.analyzeError(error, 'Gemini'));
97
+ return { object: 'object', model, ModelUsage: new ModelUsage(0, 0), vector: [] };
98
+ }
99
+ }
100
+ /**
101
+ * Embeds an array of texts, returning exactly ONE vector per input text, in input order.
102
+ *
103
+ * IMPORTANT: `gemini-embedding-2` is multimodal — passing the whole `texts` array as a single
104
+ * `contents` value makes Gemini FUSE the texts into ONE blended vector (`response.embeddings`
105
+ * has length 1). That silently corrupts any caller that pairs vectors to records by index
106
+ * (e.g. `EntityVectorSyncer`). To guarantee a 1:1 mapping we issue a separate `embedContent`
107
+ * call per text with bounded concurrency, then hard-assert the count before returning.
108
+ *
109
+ * Error contract is preserved from the original: on an API/embedding failure this returns an
110
+ * empty `vectors` array (matching the prior behavior and the other MJ embedding providers), so
111
+ * batch pipelines degrade gracefully instead of aborting. A SUCCESSFUL run is then hard-asserted
112
+ * to be 1:1 with the inputs and throws on mismatch — so the batch-collapse bug can never again
113
+ * silently return a short/blended array that downstream code mis-pairs by index.
114
+ */
115
+ async EmbedTexts(params) {
116
+ const model = params.model || DEFAULT_MODEL;
117
+ const texts = params.texts ?? [];
118
+ let vectors;
119
+ try {
120
+ vectors = await this.embedTextsConcurrently(texts, model, EMBED_TEXTS_MAX_CONCURRENCY);
121
+ }
122
+ catch (error) {
123
+ // Preserve the original contract: empty result on failure (no throw), so existing
124
+ // callers that don't wrap EmbedTexts keep degrading gracefully rather than aborting.
125
+ console.error('Gemini embedding error:', ErrorAnalyzer.analyzeError(error, 'Gemini'));
126
+ return { object: 'list', model, ModelUsage: new ModelUsage(0, 0), vectors: [] };
127
+ }
128
+ // Hard guard OUTSIDE the catch: a successful run with the wrong count IS the collapse bug —
129
+ // fail loud here so it can never silently corrupt downstream vector storage again.
130
+ if (vectors.length !== texts.length) {
131
+ throw new Error(`GeminiEmbedding.EmbedTexts produced ${vectors.length} vector(s) for ${texts.length} ` +
132
+ `input text(s); expected a 1:1 match. Refusing to return a misaligned embedding batch.`);
133
+ }
134
+ return {
135
+ object: 'list',
136
+ model,
137
+ ModelUsage: new ModelUsage(0, 0),
138
+ vectors,
139
+ };
140
+ }
141
+ /**
142
+ * Embeds each text with its own `embedContent` call while capping the number of concurrent
143
+ * in-flight requests at `maxConcurrency`. Results are returned in the same order as `texts`.
144
+ */
145
+ async embedTextsConcurrently(texts, model, maxConcurrency) {
146
+ const vectors = new Array(texts.length);
147
+ let nextIndex = 0;
148
+ let failed = false;
149
+ const worker = async () => {
150
+ // `nextIndex++` runs to completion between awaits (JS is single-threaded), so each
151
+ // index is claimed by exactly one worker — no two workers embed the same text.
152
+ // Stop claiming new texts once any worker has thrown, so we don't keep issuing (paid)
153
+ // embedContent calls after the batch is already doomed to reject.
154
+ for (let index = nextIndex++; !failed && index < texts.length; index = nextIndex++) {
155
+ try {
156
+ vectors[index] = await this.embedSingleText(texts[index], model);
157
+ }
158
+ catch (error) {
159
+ failed = true;
160
+ throw error;
161
+ }
162
+ }
163
+ };
164
+ const workerCount = Math.min(maxConcurrency, texts.length);
165
+ await Promise.all(Array.from({ length: workerCount }, () => worker()));
166
+ return vectors;
167
+ }
168
+ /**
169
+ * Embeds a single text and returns its vector, with bounded exponential-backoff retry so a lone
170
+ * transient failure (a 429/500, or an empty/missing embedding) doesn't sink the whole batch —
171
+ * its failure rate otherwise scales with the text count. Retries {@link maxEmbedTextsRetries}
172
+ * times, then throws; {@link EmbedTexts} catches that to apply the batch-level empty-result
173
+ * contract, so a batch never ends up with a silently-corrupt (empty or blended) vector for one text.
174
+ */
175
+ async embedSingleText(text, model) {
176
+ let lastError;
177
+ for (let n = 0; n <= this.maxEmbedTextsRetries; n++) {
178
+ if (n > 0) {
179
+ await sleep(this.embedRetryBaseDelayMs * 2 ** (n - 1));
180
+ }
181
+ try {
182
+ const response = await this._gemini.models.embedContent({ model, contents: text });
183
+ const vector = response.embeddings?.[0]?.values;
184
+ if (!vector || vector.length === 0) {
185
+ throw new Error('Gemini returned no embedding for one of the batch texts.');
186
+ }
187
+ return vector;
188
+ }
189
+ catch (error) {
190
+ lastError = error;
191
+ if (n >= this.maxEmbedTextsRetries) {
192
+ throw error; // out of retries — let EmbedTexts apply the empty-batch contract
193
+ }
194
+ // else: back off and retry
195
+ }
196
+ }
197
+ // Unreachable: the loop always returns or throws. Present to satisfy the type checker.
198
+ throw lastError instanceof Error ? lastError : new Error('Gemini embedding failed after retries.');
199
+ }
200
+ /**
201
+ * Multimodal embed: text and/or interleaved media blocks (image/audio/video/document)
202
+ * fused into ONE vector in the same space as text embeddings — enabling cross-modal
203
+ * retrieval (a text query matching an image, audio, or video). Overrides the base
204
+ * BaseEmbeddings.EmbedContent, which is text-only. Content blocks are mapped to Gemini
205
+ * parts via GeminiLLM.MapMJContentToGeminiParts. Returns an empty vector on error,
206
+ * consistent with the text methods.
207
+ */
208
+ async EmbedContent(params) {
209
+ const model = params.model || DEFAULT_MODEL;
210
+ try {
211
+ this.ValidateContentSupported(params.content);
212
+ const parts = GeminiLLM.MapMJContentToGeminiParts(params.content);
213
+ const contents = [{ parts }];
214
+ const response = await this._gemini.models.embedContent({ model, contents });
215
+ return {
216
+ object: 'object',
217
+ model,
218
+ ModelUsage: new ModelUsage(0, 0),
219
+ vector: response.embeddings?.[0]?.values ?? [],
220
+ };
221
+ }
222
+ catch (error) {
223
+ console.error('Gemini embedding (content) error:', ErrorAnalyzer.analyzeError(error, 'Gemini'));
224
+ // design considerations: propagate error in addition to returning an empty vector or throw error from the get-go
225
+ return {
226
+ object: 'object',
227
+ model,
228
+ ModelUsage: new ModelUsage(0, 0),
229
+ vector: [],
230
+ };
231
+ }
232
+ }
233
+ async GetEmbeddingModels() {
234
+ return [
235
+ {
236
+ Model: DEFAULT_MODEL,
237
+ Description: 'Natively multimodal embedding model (text, image, video, audio, documents)',
238
+ OutputDimension: 3072,
239
+ },
240
+ ];
241
+ }
242
+ };
243
+ GeminiEmbedding = __decorate([
244
+ RegisterClass(BaseEmbeddings, 'GeminiEmbedding'),
245
+ __metadata("design:paramtypes", [String])
246
+ ], GeminiEmbedding);
247
+ export { GeminiEmbedding };
248
+ //# sourceMappingURL=geminiEmbedding.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geminiEmbedding.js","sourceRoot":"","sources":["../src/geminiEmbedding.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -142,5 +142,5 @@ export declare class GeminiLLM extends BaseLLM {
142
142
  }
143
143
  export * from './geminiImage.js';
144
144
  export * from './geminiRealtime.js';
145
- export * from './geminiEmbedding2.js';
145
+ export * from './geminiEmbedding.js';
146
146
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAkB,MAAM,eAAe,CAAC;AAG3E,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAA0B,kBAAkB,EAAsD,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAuBtO,qBACa,SAAU,SAAQ,OAAO;IAClC,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAAQ;IAC7C,OAAO,CAAC,cAAc,CAAqC;IAG3D,OAAO,CAAC,eAAe,CAUrB;IAIF,OAAO,CAAC,iBAAiB,CAAuC;gBAEpD,MAAM,EAAE,MAAM;IAM1B;;;;;OAKG;cACa,YAAY,IAAI,OAAO,CAAC,WAAW,CAAC;IAIpD;;;OAGG;YACW,kBAAkB;IAahC;;OAEG;IACa,mBAAmB,IAAI,gBAAgB,GAAG,IAAI;IAe9D;;;OAGG;IACH,IAAW,YAAY,IAAI,WAAW,CAKrC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,OAAO,CAAC,iBAAiB;IAsCzB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;IACH,IAAoB,iBAAiB,IAAI,OAAO,CAE/C;IAED,SAAS,CAAC,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE;IAgC9D;;OAEG;cACa,0BAA0B,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAyPnF,OAAO,CAAC,iBAAiB;IAmDzB;;OAEG;IACH,SAAS,CAAC,mBAAmB,IAAI,IAAI;IASrC;;OAEG;cACa,sBAAsB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;IAmHxE;;OAEG;IACH,SAAS,CAAC,qBAAqB,CAAC,KAAK,EAAE,GAAG,GAAG;QACzC,OAAO,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,KAAK,CAAC,EAAE,GAAG,CAAC;KACf;IA4DD;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAS7B;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IA8B3B;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAQlB;;;OAGG;IACH,OAAO,CAAC,iCAAiC;IA2EzC;;OAEG;IACH,SAAS,CAAC,yBAAyB,CAC/B,kBAAkB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC7C,SAAS,EAAE,GAAG,GAAG,IAAI,GAAG,SAAS,EACjC,KAAK,EAAE,GAAG,GAAG,IAAI,GAAG,SAAS,GAC9B,UAAU;IAkFb,aAAa,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAGhE,YAAY,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAIvC;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,6BAA6B;IAS5C;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,MAAM,CAAC,0BAA0B;WAwC3B,yBAAyB,CAAC,OAAO,EAAE,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC;WAQnE,gCAAgC,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAO7E;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,gCAAgC;CASlD;AAID,cAAc,eAAe,CAAC;AAG9B,cAAc,kBAAkB,CAAC;AAGjC,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAkB,MAAM,eAAe,CAAC;AAG3E,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAA0B,kBAAkB,EAAsD,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAuBtO,qBACa,SAAU,SAAQ,OAAO;IAClC,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI,CAAQ;IAC7C,OAAO,CAAC,cAAc,CAAqC;IAG3D,OAAO,CAAC,eAAe,CAUrB;IAIF,OAAO,CAAC,iBAAiB,CAAuC;gBAEpD,MAAM,EAAE,MAAM;IAM1B;;;;;OAKG;cACa,YAAY,IAAI,OAAO,CAAC,WAAW,CAAC;IAIpD;;;OAGG;YACW,kBAAkB;IAahC;;OAEG;IACa,mBAAmB,IAAI,gBAAgB,GAAG,IAAI;IAe9D;;;OAGG;IACH,IAAW,YAAY,IAAI,WAAW,CAKrC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,OAAO,CAAC,iBAAiB;IAsCzB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;IACH,IAAoB,iBAAiB,IAAI,OAAO,CAE/C;IAED,SAAS,CAAC,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE;IAgC9D;;OAEG;cACa,0BAA0B,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAyPnF,OAAO,CAAC,iBAAiB;IAmDzB;;OAEG;IACH,SAAS,CAAC,mBAAmB,IAAI,IAAI;IASrC;;OAEG;cACa,sBAAsB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;IAmHxE;;OAEG;IACH,SAAS,CAAC,qBAAqB,CAAC,KAAK,EAAE,GAAG,GAAG;QACzC,OAAO,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,KAAK,CAAC,EAAE,GAAG,CAAC;KACf;IA4DD;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAS7B;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IA8B3B;;;;OAIG;IACH,OAAO,CAAC,UAAU;IAQlB;;;OAGG;IACH,OAAO,CAAC,iCAAiC;IA2EzC;;OAEG;IACH,SAAS,CAAC,yBAAyB,CAC/B,kBAAkB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC7C,SAAS,EAAE,GAAG,GAAG,IAAI,GAAG,SAAS,EACjC,KAAK,EAAE,GAAG,GAAG,IAAI,GAAG,SAAS,GAC9B,UAAU;IAkFb,aAAa,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAGhE,YAAY,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAIvC;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,6BAA6B;IAS5C;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,MAAM,CAAC,0BAA0B;WAwC3B,yBAAyB,CAAC,OAAO,EAAE,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC;WAQnE,gCAAgC,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAO7E;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,gCAAgC;CASlD;AAID,cAAc,eAAe,CAAC;AAG9B,cAAc,kBAAkB,CAAC;AAGjC,cAAc,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -924,5 +924,5 @@ export * from './geminiImage.js';
924
924
  // Export realtime (Gemini Live) driver
925
925
  export * from './geminiRealtime.js';
926
926
  // Export multimodal embeddings
927
- export * from './geminiEmbedding2.js';
927
+ export * from './geminiEmbedding.js';
928
928
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@memberjunction/ai-gemini",
3
3
  "type": "module",
4
- "version": "5.43.0",
4
+ "version": "5.44.0",
5
5
  "description": "MemberJunction Wrapper for Google Gemini AI Models",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
@@ -20,8 +20,8 @@
20
20
  "typescript": "^5.9.3"
21
21
  },
22
22
  "dependencies": {
23
- "@memberjunction/ai": "5.43.0",
24
- "@memberjunction/global": "5.43.0",
23
+ "@memberjunction/ai": "5.44.0",
24
+ "@memberjunction/global": "5.44.0",
25
25
  "@google/genai": "^2.8.0"
26
26
  },
27
27
  "repository": {
package/readme.md CHANGED
@@ -47,7 +47,7 @@ graph TD
47
47
  - **Resolution Control**: Support for sizes up to 4K (3840x2160)
48
48
  - **Style and Quality**: Configurable style and quality parameters
49
49
 
50
- ### Embeddings (GeminiEmbedding2)
50
+ ### Embeddings (GeminiEmbedding)
51
51
  - **Multimodal Embeddings**: Map text, images, video, audio, and PDF into one shared 3072-dimensional vector space
52
52
  - **Cross-Modal Retrieval**: Embed text and media together so a text query can match an image, audio, or video
53
53
  - **Text and Batch**: Single and batch text embedding
@@ -110,9 +110,9 @@ const result = await generator.GenerateImage({
110
110
  ### Embeddings
111
111
 
112
112
  ```typescript
113
- import { GeminiEmbedding2 } from "@memberjunction/ai-gemini";
113
+ import { GeminiEmbedding } from "@memberjunction/ai-gemini";
114
114
 
115
- const embedding = new GeminiEmbedding2("your-google-api-key");
115
+ const embedding = new GeminiEmbedding("your-google-api-key");
116
116
 
117
117
  // Text (3072-dim vector)
118
118
  const text = await embedding.EmbedText({ text: "a golden retriever in the snow" });
@@ -158,7 +158,7 @@ The provider maps MJ effort levels to Gemini's thinking system:
158
158
 
159
159
  - `GeminiLLM` -- Registered via `@RegisterClass(BaseLLM, 'GeminiLLM')`
160
160
  - `GeminiImageGenerator` -- Registered via `@RegisterClass(BaseImageGenerator, 'GeminiImageGenerator')`
161
- - `GeminiEmbedding2` -- Registered via `@RegisterClass(BaseEmbeddings, 'GeminiEmbedding2')`
161
+ - `GeminiEmbedding` -- Registered via `@RegisterClass(BaseEmbeddings, 'GeminiEmbedding')`
162
162
 
163
163
  ## Dependencies
164
164
 
@@ -1,27 +0,0 @@
1
- import { BaseEmbeddings, EmbedTextParams, EmbedTextsParams, EmbedTextResult, EmbedTextsResult, EmbedContentParams, EmbedContentResult, FileCapabilities } from '@memberjunction/ai';
2
- import { GoogleGenAI } from '@google/genai';
3
- export declare class GeminiEmbedding2 extends BaseEmbeddings {
4
- private _gemini;
5
- constructor(apiKey: string);
6
- get GeminiClient(): GoogleGenAI;
7
- GetFileCapabilities(): FileCapabilities | null;
8
- EmbedText(params: EmbedTextParams): Promise<EmbedTextResult>;
9
- EmbedTexts(params: EmbedTextsParams): Promise<EmbedTextsResult>;
10
- /**
11
- * Multimodal embed: text and/or interleaved media blocks (image/audio/video/document)
12
- * fused into ONE vector in the same space as text embeddings — enabling cross-modal
13
- * retrieval (a text query matching an image, audio, or video). Overrides the base
14
- * BaseEmbeddings.EmbedContent, which is text-only. Content blocks are mapped to Gemini
15
- * parts via GeminiLLM.MapMJContentToGeminiParts. Returns an empty vector on error,
16
- * consistent with the text methods.
17
- */
18
- EmbedContent(params: EmbedContentParams): Promise<EmbedContentResult>;
19
- GetEmbeddingModels(): Promise<EmbeddingModelInfo[]>;
20
- }
21
- /** Describes an embedding model returned by {@link GeminiEmbedding2.GetEmbeddingModels}. */
22
- export interface EmbeddingModelInfo {
23
- Model: string;
24
- Description: string;
25
- OutputDimension: number;
26
- }
27
- //# sourceMappingURL=geminiEmbedding2.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"geminiEmbedding2.d.ts","sourceRoot":"","sources":["../src/geminiEmbedding2.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAGhB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EACnB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,WAAW,EAAW,MAAM,eAAe,CAAC;AAsBrD,qBACa,gBAAiB,SAAQ,cAAc;IAChD,OAAO,CAAC,OAAO,CAAc;gBAEjB,MAAM,EAAE,MAAM;IAK1B,IAAW,YAAY,IAAI,WAAW,CAErC;IAEe,mBAAmB,IAAI,gBAAgB,GAAG,IAAI;IA4BjD,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IAgB5D,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAgB5E;;;;;;;OAOG;IACmB,YAAY,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAyB9E,kBAAkB,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;CASnE;AAED,4FAA4F;AAC5F,MAAM,WAAW,kBAAkB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;CAC3B"}
@@ -1,146 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var __metadata = (this && this.__metadata) || function (k, v) {
8
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
- };
10
- import { BaseEmbeddings, ModelUsage, ErrorAnalyzer, } from '@memberjunction/ai';
11
- import { RegisterClass } from '@memberjunction/global';
12
- import { GoogleGenAI } from '@google/genai';
13
- import { GeminiLLM } from './index.js';
14
- /**
15
- * Gemini Embedding 2 provider for MemberJunction.
16
- *
17
- * A `BaseEmbeddings` implementation backed by Google's `gemini-embedding-2` — a natively
18
- * MULTIMODAL embedding model (text, image, video, audio, and documents share one vector space).
19
- * Overrides {@link BaseEmbeddings.EmbedContent} (text-only by default) to embed text and/or
20
- * interleaved media (image/video/audio/document) into the SAME vector space as text —
21
- * enabling cross-modal retrieval (a text query matching an image, audio, or video).
22
-
23
- *
24
- * Resolved via `ClassFactory.CreateInstance(BaseEmbeddings, "GeminiEmbedding2", apiKey)`.
25
- *
26
- * Note: `gemini-embedding-2` has no `task_type` parameter — the retrieval instruction (e.g.
27
- * `"task: search result | query: …"` for queries vs `"title: … | text: …"` for documents) is
28
- * carried IN the text by the caller.
29
- */
30
- const DEFAULT_MODEL = 'gemini-embedding-2';
31
- let GeminiEmbedding2 = class GeminiEmbedding2 extends BaseEmbeddings {
32
- constructor(apiKey) {
33
- super(apiKey);
34
- this._gemini = new GoogleGenAI({ apiKey });
35
- }
36
- get GeminiClient() {
37
- return this._gemini;
38
- }
39
- GetFileCapabilities() {
40
- // Per Google's gemini-embedding-2 model spec (GA 2026-04-22):
41
- // images: png/jpeg/webp/bmp/heic/heif/avif (max 6 per request)
42
- // video: mpeg/mp4 (1 per request) audio: mp3/wav (1 per request) pdf (1 file, 6 pages)
43
- // 'audio/mpeg' is included as a tolerant alias for the canonical MP3 type (doc lists 'audio/mp3').
44
- // MaxFilesPerRequest reflects the image max (6); non-image modalities are capped at 1 by the API.
45
- return {
46
- SupportedMimeTypes: [
47
- 'image/png',
48
- 'image/jpeg',
49
- 'image/webp',
50
- 'image/bmp',
51
- 'image/heic',
52
- 'image/heif',
53
- 'image/avif',
54
- 'video/mpeg',
55
- 'video/mp4',
56
- 'audio/mp3',
57
- 'audio/mpeg',
58
- 'audio/wav',
59
- 'application/pdf',
60
- ],
61
- MaxFileSize: 100 * 1024 * 1024, // Google docs state no hard per-file limit; generous cap
62
- MaxFilesPerRequest: 6,
63
- HasFileAPI: false,
64
- };
65
- }
66
- async EmbedText(params) {
67
- const model = params.model || DEFAULT_MODEL;
68
- try {
69
- const response = await this._gemini.models.embedContent({ model, contents: params.text });
70
- return {
71
- object: 'object',
72
- model,
73
- ModelUsage: new ModelUsage(0, 0),
74
- vector: response.embeddings?.[0]?.values ?? [],
75
- };
76
- }
77
- catch (error) {
78
- console.error('Gemini embedding error:', ErrorAnalyzer.analyzeError(error, 'Gemini'));
79
- return { object: 'object', model, ModelUsage: new ModelUsage(0, 0), vector: [] };
80
- }
81
- }
82
- async EmbedTexts(params) {
83
- const model = params.model || DEFAULT_MODEL;
84
- try {
85
- const response = await this._gemini.models.embedContent({ model, contents: params.texts });
86
- return {
87
- object: 'list',
88
- model,
89
- ModelUsage: new ModelUsage(0, 0),
90
- vectors: (response.embeddings ?? []).map((e) => e.values ?? []),
91
- };
92
- }
93
- catch (error) {
94
- console.error('Gemini embedding error:', ErrorAnalyzer.analyzeError(error, 'Gemini'));
95
- return { object: 'list', model, ModelUsage: new ModelUsage(0, 0), vectors: [] };
96
- }
97
- }
98
- /**
99
- * Multimodal embed: text and/or interleaved media blocks (image/audio/video/document)
100
- * fused into ONE vector in the same space as text embeddings — enabling cross-modal
101
- * retrieval (a text query matching an image, audio, or video). Overrides the base
102
- * BaseEmbeddings.EmbedContent, which is text-only. Content blocks are mapped to Gemini
103
- * parts via GeminiLLM.MapMJContentToGeminiParts. Returns an empty vector on error,
104
- * consistent with the text methods.
105
- */
106
- async EmbedContent(params) {
107
- const model = params.model || DEFAULT_MODEL;
108
- try {
109
- this.ValidateContentSupported(params.content);
110
- const parts = GeminiLLM.MapMJContentToGeminiParts(params.content);
111
- const contents = [{ parts }];
112
- const response = await this._gemini.models.embedContent({ model, contents });
113
- return {
114
- object: 'object',
115
- model,
116
- ModelUsage: new ModelUsage(0, 0),
117
- vector: response.embeddings?.[0]?.values ?? [],
118
- };
119
- }
120
- catch (error) {
121
- console.error('Gemini embedding (content) error:', ErrorAnalyzer.analyzeError(error, 'Gemini'));
122
- // design considerations: propagate error in addition to returning an empty vector or throw error from the get-go
123
- return {
124
- object: 'object',
125
- model,
126
- ModelUsage: new ModelUsage(0, 0),
127
- vector: [],
128
- };
129
- }
130
- }
131
- async GetEmbeddingModels() {
132
- return [
133
- {
134
- Model: DEFAULT_MODEL,
135
- Description: 'Natively multimodal embedding model (text, image, video, audio, documents)',
136
- OutputDimension: 3072,
137
- },
138
- ];
139
- }
140
- };
141
- GeminiEmbedding2 = __decorate([
142
- RegisterClass(BaseEmbeddings, 'GeminiEmbedding2'),
143
- __metadata("design:paramtypes", [String])
144
- ], GeminiEmbedding2);
145
- export { GeminiEmbedding2 };
146
- //# sourceMappingURL=geminiEmbedding2.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"geminiEmbedding2.js","sourceRoot":"","sources":["../src/geminiEmbedding2.ts"],"names":[],"mappings":"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"}