fix(providers): catalog OpenRouter Gemini Embedding 2 ids (#10566)

GET /v1/models listed google/gemini-embedding-001 but omitted
google/gemini-embedding-2 even though that id already returns 3072-d vectors.

Co-authored-by: Ravi Tharuma <RaviTharuma@users.noreply.github.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Ravi Tharuma
2026-08-18 15:52:20 +02:00
committed by GitHub
parent 134ab8cabb
commit 947a7c64d4
3 changed files with 21 additions and 0 deletions

View File

@@ -0,0 +1 @@
- **fix(providers):** register live OpenRouter Gemini Embedding 2 ids (`google/gemini-embedding-2` and `google/gemini-embedding-2-preview`, 3072-d) in the curated embeddings catalog so `GET /v1/models` and `GET /v1/embeddings` list the ids that already serve — thanks @RaviTharuma

View File

@@ -241,6 +241,16 @@ export const EMBEDDING_PROVIDERS: Record<string, EmbeddingProvider> = {
name: "Gemini Embedding 001 (OpenRouter)",
dimensions: 768,
},
{
id: "google/gemini-embedding-2",
name: "Gemini Embedding 2 (OpenRouter)",
dimensions: 3072,
},
{
id: "google/gemini-embedding-2-preview",
name: "Gemini Embedding 2 Preview (OpenRouter)",
dimensions: 3072,
},
],
},

View File

@@ -68,11 +68,21 @@ test("embeddingRegistry curated openrouter catalog carries the refreshed lineup
"baai/bge-m3",
"mistralai/mistral-embed-2312",
"google/gemini-embedding-001",
"google/gemini-embedding-2",
"google/gemini-embedding-2-preview",
]) {
assert.ok(ids.includes(expected), `expected curated id ${expected}; got ${ids.join(", ")}`);
const dim = config!.models.find((m) => m.id === expected)?.dimensions;
assert.equal(typeof dim, "number", `${expected} must carry a dimensions value`);
}
assert.equal(
config!.models.find((m) => m.id === "google/gemini-embedding-2")?.dimensions,
3072
);
assert.equal(
config!.models.find((m) => m.id === "google/gemini-embedding-2-preview")?.dimensions,
3072
);
});
test("getStaticModelsForProvider(openrouter) folds the curated embeddings into the specialty catalog (#6976)", () => {