Skip to content

fix(embeddings): add lmstudio to embedding provider registry - #7614

Merged
diegosouzapw merged 2 commits into
cheaper-inference:release/v3.8.49from
ekinnee:fix/lmstudio-embedding-registry
Jul 19, 2026
Merged

diegosouzapw merged 2 commits into
cheaper-inference:release/v3.8.49from
ekinnee:fix/lmstudio-embedding-registry

Conversation

@ekinnee

@ekinnee ekinnee commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Problem

LM Studio is already registered as a local provider in the provider catalog (src/shared/constants/providers/local.ts) but was missing from EMBEDDING_PROVIDERS in open-sse/config/embeddingRegistry.ts. This caused /v1/embeddings requests targeting lmstudio models to fail with:

Unknown embedding provider: lmstudio. No matching hardcoded or local provider found.

Solution

Added lmstudio to EMBEDDING_PROVIDERS with authType: "none" and authHeader: "none" since LM Studio is a local server. Models array is empty — LM Studio exposes its own model list (passthrough).

Follows the same pattern as deepinfra (#2298) and openrouter (#960), but with no auth since it's local.

Evidence

  • LM Studio is already defined in src/shared/constants/providers/local.ts (id: lm-studio, alias: lmstudio)
  • The EMBEDDING_PROVIDERS registry was the only gap
  • No competing PRs touching this area
  • Single file, additive change, 12 lines

Fixes #7601

LM Studio is already registered as a local provider in the provider
catalog (src/shared/constants/providers/local.ts) but was missing from
EMBEDDING_PROVIDERS in open-sse/config/embeddingRegistry.ts. This
caused /v1/embeddings requests targeting lmstudio models to fail with
'Unknown embedding provider: lmstudio'.

Follows the same pattern as deepinfra (#2298) and openrouter (#960),
but with authType: 'none' since LM Studio is a local server.

Fixes #7601
@ekinnee
ekinnee requested a review from diegosouzapw as a code owner July 17, 2026 14:29
@gemini-code-assist

Copy link
Copy Markdown
Contributor

Warning

You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again!

@diegosouzapw

Copy link
Copy Markdown
Collaborator

Thanks for this — confirmed the fix is correct and matches the pattern from #2298/#960: lmstudio was genuinely missing from EMBEDDING_PROVIDERS, the baseUrl matches the existing lm-studio local-provider default (http://localhost:1234/v1), and the dynamic provider_node lookup still takes priority for users with a custom LM Studio endpoint, so no regression there.

Two small things needed before merge, following the same pattern as the mixedbread (#6660) and openrouter-embeddings (#6976) PRs that touched this same registry:

  1. A regression test (getEmbeddingProvider('lmstudio') + parseEmbeddingModel('lmstudio/<model>')) — production code changes in open-sse/ need a test per our contribution guidelines.
  2. A changelog.d/features/ fragment for the fix.

Also: this PR is opened against main, which is why it shows as a huge/conflicting diff — it's actually a single 12-line, single-file change. Could you retarget the base to release/v3.8.49? That should clear the conflict entirely. Happy to help land these if useful.

@diegosouzapw
diegosouzapw changed the base branch from main to release/v3.8.49 July 17, 2026 19:59
Adds the regression test and changelog fragment required by the
contribution guidelines (Hard Rule #18) for the new lmstudio entry in
EMBEDDING_PROVIDERS, mirroring the precedent set by the mixedbread
(#6660) and openrouter-embeddings (#6976) provider-registry additions:

- tests/unit/lmstudio-embedding-provider-7601.test.ts: asserts
  getEmbeddingProvider('lmstudio').baseUrl/authType/authHeader and
  parseEmbeddingModel('lmstudio/<model>') passthrough resolution
  (including namespaced model ids). Verified red without the registry
  entry (assert.ok(provider) fails), green with it.
- changelog.d/features/7601-lmstudio-embeddings.md: changelog fragment
  referencing issue #7601 and the new test.

Co-authored-by: diegosouzapw <8016841+diegosouzapw@users.noreply.github.com>
@diegosouzapw
diegosouzapw merged commit 2ad7da5 into cheaper-inference:release/v3.8.49 Jul 19, 2026
3 checks passed
@diegosouzapw

Copy link
Copy Markdown
Collaborator

Merged into release/v3.8.49 — thank you for the contribution, @ekinnee! 🎉 Validated in today's full-suite merge-train (33 PRs, 19k+ tests green) before landing.

@diegosouzapw diegosouzapw mentioned this pull request Jul 23, 2026
HouMinXi pushed a commit to HouMinXi/OmniRoute that referenced this pull request Aug 2, 2026
…-inference#7614)

* fix(embeddings): add lmstudio to embedding provider registry

LM Studio is already registered as a local provider in the provider
catalog (src/shared/constants/providers/local.ts) but was missing from
EMBEDDING_PROVIDERS in open-sse/config/embeddingRegistry.ts. This
caused /v1/embeddings requests targeting lmstudio models to fail with
'Unknown embedding provider: lmstudio'.

Follows the same pattern as deepinfra (cheaper-inference#2298) and openrouter (cheaper-inference#960),
but with authType: 'none' since LM Studio is a local server.

Fixes cheaper-inference#7601

* test(embeddings): add lmstudio regression test + changelog (cheaper-inference#7601)

Adds the regression test and changelog fragment required by the
contribution guidelines (Hard Rule cheaper-inference#18) for the new lmstudio entry in
EMBEDDING_PROVIDERS, mirroring the precedent set by the mixedbread
(cheaper-inference#6660) and openrouter-embeddings (cheaper-inference#6976) provider-registry additions:

- tests/unit/lmstudio-embedding-provider-7601.test.ts: asserts
  getEmbeddingProvider('lmstudio').baseUrl/authType/authHeader and
  parseEmbeddingModel('lmstudio/<model>') passthrough resolution
  (including namespaced model ids). Verified red without the registry
  entry (assert.ok(provider) fails), green with it.
- changelog.d/features/7601-lmstudio-embeddings.md: changelog fragment
  referencing issue cheaper-inference#7601 and the new test.

Co-authored-by: diegosouzapw <8016841+diegosouzapw@users.noreply.github.com>

---------

Co-authored-by: Erick Kinnee <erickinnee@gmail.com>
Co-authored-by: diegosouzapw <8016841+diegosouzapw@users.noreply.github.com>
muhamadgalihsaputra pushed a commit to niyatna/NiyatnaRoute that referenced this pull request Sep 27, 2026
…-inference#7614)

* fix(embeddings): add lmstudio to embedding provider registry

LM Studio is already registered as a local provider in the provider
catalog (src/shared/constants/providers/local.ts) but was missing from
EMBEDDING_PROVIDERS in open-sse/config/embeddingRegistry.ts. This
caused /v1/embeddings requests targeting lmstudio models to fail with
'Unknown embedding provider: lmstudio'.

Follows the same pattern as deepinfra (cheaper-inference#2298) and openrouter (cheaper-inference#960),
but with authType: 'none' since LM Studio is a local server.

Fixes cheaper-inference#7601

* test(embeddings): add lmstudio regression test + changelog (cheaper-inference#7601)

Adds the regression test and changelog fragment required by the
contribution guidelines (Hard Rule cheaper-inference#18) for the new lmstudio entry in
EMBEDDING_PROVIDERS, mirroring the precedent set by the mixedbread
(cheaper-inference#6660) and openrouter-embeddings (cheaper-inference#6976) provider-registry additions:

- tests/unit/lmstudio-embedding-provider-7601.test.ts: asserts
  getEmbeddingProvider('lmstudio').baseUrl/authType/authHeader and
  parseEmbeddingModel('lmstudio/<model>') passthrough resolution
  (including namespaced model ids). Verified red without the registry
  entry (assert.ok(provider) fails), green with it.
- changelog.d/features/7601-lmstudio-embeddings.md: changelog fragment
  referencing issue cheaper-inference#7601 and the new test.

Co-authored-by: diegosouzapw <8016841+diegosouzapw@users.noreply.github.com>

---------

Co-authored-by: Erick Kinnee <erickinnee@gmail.com>
Co-authored-by: diegosouzapw <8016841+diegosouzapw@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(providers): Missing lmstudio provider in embeddingRegistry — "Unknown embedding provider" for LM Studio embedding requests

2 participants