fix(embeddings): remove non-existent voyage-multilingual-3.5, add missing models

Cherry-picked from PR #7425 (org-fork branch cannot receive pushes; the PR
stays open for reference). Refs #7425
This commit is contained in:
Kamenka Dzmitry
2026-07-16 13:48:27 +02:00
committed by Diego Rodrigues de Sa e Souza
parent 904a291f87
commit 6847d93ee8
3 changed files with 29 additions and 1 deletions

View File

@@ -0,0 +1 @@
- fix(embeddings): remove the non-existent `voyage-multilingual-3.5` from the embedding registry and add the missing Voyage models (#7425 — thanks @kamenkadmitry)

View File

@@ -258,7 +258,9 @@ export const EMBEDDING_PROVIDERS: Record<string, EmbeddingProvider> = {
{ id: "voyage-4", name: "Voyage 4", dimensions: 1024 },
{ id: "voyage-4-lite", name: "Voyage 4 Lite", dimensions: 1024 },
{ id: "voyage-3-large", name: "Voyage 3 Large", dimensions: 1024 },
{ id: "voyage-multilingual-3.5", name: "Voyage Multilingual 3.5", dimensions: 1024 },
{ id: "voyage-3.5", name: "Voyage 3.5", dimensions: 1024 },
{ id: "voyage-3.5-lite", name: "Voyage 3.5 Lite", dimensions: 512 },
{ id: "voyage-multilingual-2", name: "Voyage Multilingual 2", dimensions: 1024 },
{ id: "voyage-code-3", name: "Voyage Code 3", dimensions: 1024 },
{ id: "voyage-code-2", name: "Voyage Code 2", dimensions: 1536 },
{ id: "voyage-finance-2", name: "Voyage Finance 2", dimensions: 1024 },

View File

@@ -28,6 +28,31 @@ test("voyage-ai embedding registry exposes current embedding models", () => {
assert.ok(all.length >= 3);
});
// #7351: voyage-multilingual-3.5 does not exist in the Voyage AI API — it was
// added to the registry by mistake and caused HTTP 400 on every test/request.
// voyage-multilingual-2 is the real model and was missing from the registry.
test("#7351 voyage-ai registry does not list non-existent voyage-multilingual-3.5", () => {
const provider = getEmbeddingProvider("voyage-ai");
assert.ok(provider);
assert.ok(
!provider.models.some((model) => model.id === "voyage-multilingual-3.5"),
"voyage-multilingual-3.5 must not be in the registry — it does not exist in the Voyage AI API"
);
});
test("#7351 voyage-ai registry includes voyage-multilingual-2 (real model)", () => {
const provider = getEmbeddingProvider("voyage-ai");
assert.ok(provider);
assert.ok(provider.models.some((model) => model.id === "voyage-multilingual-2"));
});
test("#7351 voyage-ai registry includes voyage-3.5 and voyage-3.5-lite", () => {
const provider = getEmbeddingProvider("voyage-ai");
assert.ok(provider);
assert.ok(provider.models.some((model) => model.id === "voyage-3.5"));
assert.ok(provider.models.some((model) => model.id === "voyage-3.5-lite"));
});
test("voyage-ai and jina-ai rerank registries expose supported models", () => {
const voyage = getRerankProvider("voyage-ai");
const jina = getRerankProvider("jina-ai");