Skip to content

Commit e75c0ba

Browse files
fix(embeddings): reset stale OpenRouter model
1 parent baba1d4 commit e75c0ba

2 files changed

Lines changed: 30 additions & 3 deletions

File tree

apps/sim/blocks/blocks/embeddings.test.ts

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -282,6 +282,28 @@ describe('Embeddings block', () => {
282282
expect(merged.model).toBe('embed-v4.0')
283283
})
284284

285+
it('replaces a catalog model left over when switching to OpenRouter', () => {
286+
const merged = mergeLikeExecutor({
287+
provider: 'openrouter',
288+
model: 'gemini-embedding-001',
289+
input: 'hello',
290+
openRouterApiKey: 'or-test',
291+
})
292+
293+
expect(merged.model).toBe(DEFAULT_OPENROUTER_EMBEDDING_MODEL)
294+
})
295+
296+
it('rejects an invalid model entered for OpenRouter', () => {
297+
expect(() =>
298+
mergeLikeExecutor({
299+
provider: 'openrouter',
300+
model: 'not-an-openrouter-model',
301+
input: 'hello',
302+
openRouterApiKey: 'or-test',
303+
})
304+
).toThrow('Invalid OpenRouter embedding model: not-an-openrouter-model')
305+
})
306+
285307
it('keeps a model that does belong to the selected provider', () => {
286308
const merged = mergeLikeExecutor({
287309
provider: 'openai',

apps/sim/blocks/blocks/embeddings.ts

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -236,10 +236,15 @@ export const EmbeddingsBlock: BlockConfig<EmbeddingsResponse> = {
236236
if (typeof params.openRouterApiKey !== 'string' || !params.openRouterApiKey.trim()) {
237237
throw new Error('OpenRouter API key is required')
238238
}
239+
const savedModel =
240+
typeof params.model === 'string' && params.model ? params.model : undefined
241+
const savedCatalogProvider = savedModel
242+
? EMBEDDING_MODELS[savedModel]?.provider
243+
: undefined
239244
const model = normalizeOpenRouterEmbeddingModelId(
240-
typeof params.model === 'string' && params.model
241-
? params.model
242-
: DEFAULT_OPENROUTER_EMBEDDING_MODEL
245+
savedCatalogProvider && savedCatalogProvider !== 'openai'
246+
? DEFAULT_OPENROUTER_EMBEDDING_MODEL
247+
: (savedModel ?? DEFAULT_OPENROUTER_EMBEDDING_MODEL)
243248
)
244249
return {
245250
apiKey: params.openRouterApiKey,

0 commit comments

Comments
 (0)