MCPcopy Index your code
hub / github.com/simstudioai/sim / shouldRequireApiKeyForModel

Function shouldRequireApiKeyForModel

apps/sim/blocks/utils.ts:170–207  ·  view source on GitHub ↗
(model: string)

Source from the content-addressed store, hash-verified

168}
169
170function shouldRequireApiKeyForModel(model: string): boolean {
171 const normalizedModel = model.trim().toLowerCase()
172 if (!normalizedModel) return false
173
174 if (isHosted) {
175 const hostedModels = getHostedModels()
176 if (hostedModels.some((m) => m.toLowerCase() === normalizedModel)) return false
177 }
178
179 if (normalizedModel.startsWith('vertex/') || normalizedModel.startsWith('bedrock/')) {
180 return false
181 }
182 if (
183 isAzureConfigured &&
184 (normalizedModel.startsWith('azure/') ||
185 normalizedModel.startsWith('azure-openai/') ||
186 normalizedModel.startsWith('azure-anthropic/') ||
187 AZURE_MODELS.some((m) => m.toLowerCase() === normalizedModel))
188 ) {
189 return false
190 }
191 if (normalizedModel.startsWith('vllm/') || normalizedModel.startsWith('litellm/')) {
192 return false
193 }
194
195 const storeProvider = getProviderFromStore(normalizedModel)
196 if (storeProvider === 'ollama' || storeProvider === 'vllm' || storeProvider === 'litellm')
197 return false
198 if (storeProvider) return true
199
200 if (isOllamaConfigured) {
201 if (normalizedModel.includes('/')) return true
202 if (normalizedModel in getBaseModelProviders()) return true
203 return false
204 }
205
206 return true
207}
208
209/**
210 * Get the API key condition for provider credential subblocks.

Callers 1

getApiKeyConditionFunction · 0.85

Calls 3

getHostedModelsFunction · 0.90
getBaseModelProvidersFunction · 0.90
getProviderFromStoreFunction · 0.85

Tested by

no test coverage detected