llm-strings 1.2.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -3
- package/dist/ai-sdk.cjs +355 -9
- package/dist/ai-sdk.cjs.map +1 -1
- package/dist/ai-sdk.d.cts +5 -4
- package/dist/ai-sdk.d.ts +5 -4
- package/dist/ai-sdk.js +87 -8
- package/dist/ai-sdk.js.map +1 -1
- package/dist/{chunk-RPXK2A7O.js → chunk-7HE4RH6X.js} +4 -4
- package/dist/{chunk-2ARD4TFU.js → chunk-NZR5DUX5.js} +2 -2
- package/dist/{chunk-W4NIQY7M.js → chunk-OCJX4QFJ.js} +318 -4
- package/dist/chunk-OCJX4QFJ.js.map +1 -0
- package/dist/{chunk-BCOUH7LH.js → chunk-TQJ2ABCT.js} +2 -2
- package/dist/index.cjs +317 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +4 -4
- package/dist/normalize.cjs +157 -3
- package/dist/normalize.cjs.map +1 -1
- package/dist/normalize.d.cts +1 -1
- package/dist/normalize.d.ts +1 -1
- package/dist/normalize.js +2 -2
- package/dist/parse.cjs +27 -0
- package/dist/parse.cjs.map +1 -1
- package/dist/parse.d.cts +1 -1
- package/dist/parse.d.ts +1 -1
- package/dist/parse.js +2 -2
- package/dist/{provider-core-BiAl8MCV.d.cts → provider-core-B934MuhJ.d.cts} +2 -2
- package/dist/{provider-core-BiAl8MCV.d.ts → provider-core-B934MuhJ.d.ts} +2 -2
- package/dist/providers.cjs +610 -4
- package/dist/providers.cjs.map +1 -1
- package/dist/providers.d.cts +2 -2
- package/dist/providers.d.ts +2 -2
- package/dist/providers.js +294 -2
- package/dist/providers.js.map +1 -1
- package/dist/validate.cjs +317 -3
- package/dist/validate.cjs.map +1 -1
- package/dist/validate.js +4 -4
- package/package.json +1 -1
- package/dist/chunk-W4NIQY7M.js.map +0 -1
- /package/dist/{chunk-RPXK2A7O.js.map → chunk-7HE4RH6X.js.map} +0 -0
- /package/dist/{chunk-2ARD4TFU.js.map → chunk-NZR5DUX5.js.map} +0 -0
- /package/dist/{chunk-BCOUH7LH.js.map → chunk-TQJ2ABCT.js.map} +0 -0
package/dist/ai-sdk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/ai-sdk.ts"],"sourcesContent":["import { normalize } from \"./normalize.js\";\nimport type { NormalizeOptions, NormalizeResult } from \"./normalize.js\";\nimport type { LlmConnectionConfig } from \"./parse.js\";\nimport type { Provider } from \"./provider-core.js\";\n\nexport type AiSdkProviderOptions = Record<string, Record<string, unknown>>;\n\nexport interface AiSdkProviderOptionsResult {\n provider: Provider | undefined;\n subProvider: Provider | undefined;\n providerOptions: AiSdkProviderOptions;\n}\n\nexport interface AiSdkProviderOptionsOptions extends NormalizeOptions {\n /**\n * Include Vercel AI Gateway routing options under `providerOptions.gateway`.\n * Defaults to true for `vercel` hosts.\n */\n includeGatewayOptions?: boolean;\n}\n\ntype ProviderOptionsKey = Provider | \"gateway\";\n\nconst PROVIDER_OPTION_KEYS: Record<Provider, ProviderOptionsKey> = {\n openai: \"openai\",\n anthropic: \"anthropic\",\n google: \"google\",\n mistral: \"mistral\",\n cohere: \"cohere\",\n bedrock: \"bedrock\",\n openrouter: \"openrouter\",\n vercel: \"gateway\",\n};\n\nconst TRUE_VALUES = new Set([\"true\", \"1\", \"yes\", \"on\"]);\nconst FALSE_VALUES = new Set([\"false\", \"0\", \"no\", \"off\"]);\n\nfunction providerOptionsKey(provider: Provider): ProviderOptionsKey {\n return PROVIDER_OPTION_KEYS[provider];\n}\n\nfunction setProviderOption(\n options: AiSdkProviderOptions,\n provider: ProviderOptionsKey,\n key: string,\n value: unknown,\n): void {\n options[provider] ??= {};\n options[provider][key] = value;\n}\n\nfunction parseBoolean(value: string): boolean | undefined {\n const normalized = value.trim().toLowerCase();\n if (TRUE_VALUES.has(normalized)) return true;\n if (FALSE_VALUES.has(normalized)) return false;\n return undefined;\n}\n\nfunction parseNumber(value: string): number | undefined {\n if (!value.trim()) return undefined;\n const parsed = Number(value);\n return Number.isFinite(parsed) ? parsed : undefined;\n}\n\nfunction parseJson(value: string): unknown {\n try {\n return JSON.parse(value) as unknown;\n } catch {\n return undefined;\n }\n}\n\nfunction parseStringList(value: string): string[] {\n const json = parseJson(value);\n if (Array.isArray(json)) {\n return json.filter((item): item is string => typeof item === \"string\");\n }\n return value\n .split(\",\")\n .map((item) => item.trim())\n .filter(Boolean);\n}\n\nfunction typedValue(value: string): unknown {\n const booleanValue = parseBoolean(value);\n if (booleanValue !== undefined) return booleanValue;\n\n const numberValue = parseNumber(value);\n if (numberValue !== undefined) return numberValue;\n\n const jsonValue = parseJson(value);\n if (jsonValue !== undefined) return jsonValue;\n\n return value;\n}\n\nfunction mergeObjectOption(\n options: AiSdkProviderOptions,\n provider: ProviderOptionsKey,\n key: string,\n value: string,\n): void {\n const parsed = parseJson(value);\n if (parsed && typeof parsed === \"object\" && !Array.isArray(parsed)) {\n setProviderOption(options, provider, key, parsed);\n }\n}\n\nfunction addOpenAiOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n): void {\n const target: ProviderOptionsKey = \"openai\";\n const mappings: Record<string, string> = {\n reasoning_effort: \"reasoningEffort\",\n max_completion_tokens: \"maxCompletionTokens\",\n parallel_tool_calls: \"parallelToolCalls\",\n service_tier: \"serviceTier\",\n strict_json_schema: \"strictJsonSchema\",\n text_verbosity: \"textVerbosity\",\n prompt_cache_key: \"promptCacheKey\",\n prompt_cache_retention: \"promptCacheRetention\",\n safety_identifier: \"safetyIdentifier\",\n system_message_mode: \"systemMessageMode\",\n force_reasoning: \"forceReasoning\",\n reasoning_summary: \"reasoningSummary\",\n previous_response_id: \"previousResponseId\",\n max_tool_calls: \"maxToolCalls\",\n allowed_tools: \"allowedTools\",\n };\n const directKeys = new Set([\n \"conversation\",\n \"instructions\",\n \"logprobs\",\n \"metadata\",\n \"prediction\",\n \"store\",\n \"truncation\",\n \"user\",\n ]);\n if (!mappings[key] && !directKeys.has(key) && key !== \"include\") return;\n const optionKey = mappings[key] ?? key;\n\n if (key === \"include\") {\n setProviderOption(options, target, optionKey, parseStringList(value));\n return;\n }\n\n if (key === \"metadata\" || key === \"prediction\" || key === \"allowed_tools\") {\n mergeObjectOption(options, target, optionKey, value);\n return;\n }\n\n setProviderOption(options, target, optionKey, typedValue(value));\n}\n\nfunction addAnthropicOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n): void {\n const target: ProviderOptionsKey = \"anthropic\";\n\n if (key === \"cache_control\" || key === \"cacheControl\") {\n const ttl = options[target]?.cacheControl;\n const ttlValue =\n ttl && typeof ttl === \"object\" && \"ttl\" in ttl ? ttl.ttl : undefined;\n setProviderOption(options, target, \"cacheControl\", {\n type: value === \"ephemeral\" ? \"ephemeral\" : value,\n ...(ttlValue ? { ttl: ttlValue } : {}),\n });\n return;\n }\n\n if (key === \"cache_ttl\") {\n const current = options[target]?.cacheControl;\n setProviderOption(options, target, \"cacheControl\", {\n ...(current && typeof current === \"object\" ? current : {}),\n type: \"ephemeral\",\n ttl: value,\n });\n return;\n }\n\n if (key === \"thinking\") {\n mergeObjectOption(options, target, \"thinking\", value);\n return;\n }\n\n if (key === \"thinking_budget\" || key === \"budget_tokens\") {\n const budgetTokens = parseNumber(value);\n if (budgetTokens !== undefined) {\n setProviderOption(options, target, \"thinking\", {\n type: \"enabled\",\n budgetTokens,\n });\n }\n return;\n }\n\n const mappings: Record<string, string> = {\n send_reasoning: \"sendReasoning\",\n structured_output_mode: \"structuredOutputMode\",\n disable_parallel_tool_use: \"disableParallelToolUse\",\n tool_streaming: \"toolStreaming\",\n inference_geo: \"inferenceGeo\",\n anthropic_beta: \"anthropicBeta\",\n mcp_servers: \"mcpServers\",\n task_budget: \"taskBudget\",\n context_management: \"contextManagement\",\n };\n const directKeys = new Set([\n \"effort\",\n \"speed\",\n \"sendReasoning\",\n \"structuredOutputMode\",\n \"disableParallelToolUse\",\n \"toolStreaming\",\n \"inferenceGeo\",\n \"anthropicBeta\",\n \"metadata\",\n \"mcpServers\",\n \"container\",\n \"taskBudget\",\n \"contextManagement\",\n ]);\n if (!mappings[key] && !directKeys.has(key)) return;\n const optionKey = mappings[key] ?? key;\n\n if (key === \"anthropic_beta\") {\n setProviderOption(options, target, optionKey, parseStringList(value));\n return;\n }\n\n if (\n key === \"metadata\" ||\n key === \"mcp_servers\" ||\n key === \"container\" ||\n key === \"task_budget\" ||\n key === \"context_management\"\n ) {\n mergeObjectOption(options, target, optionKey, value);\n return;\n }\n\n setProviderOption(options, target, optionKey, typedValue(value));\n}\n\nfunction addGoogleOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n): void {\n const target: ProviderOptionsKey = \"google\";\n\n if (\n key === \"thinking_budget\" ||\n key === \"thinking_level\" ||\n key === \"include_thoughts\"\n ) {\n const current = options[target]?.thinkingConfig;\n const thinkingConfig: Record<string, unknown> =\n current && typeof current === \"object\" && !Array.isArray(current)\n ? { ...current }\n : {};\n if (key === \"thinking_budget\") {\n const parsed = parseNumber(value);\n if (parsed !== undefined) thinkingConfig.thinkingBudget = parsed;\n }\n if (key === \"thinking_level\") thinkingConfig.thinkingLevel = value;\n if (key === \"include_thoughts\") {\n const parsed = parseBoolean(value);\n if (parsed !== undefined) thinkingConfig.includeThoughts = parsed;\n }\n setProviderOption(options, target, \"thinkingConfig\", thinkingConfig);\n return;\n }\n\n const mappings: Record<string, string> = {\n cached_content: \"cachedContent\",\n structured_outputs: \"structuredOutputs\",\n safety_settings: \"safetySettings\",\n response_modalities: \"responseModalities\",\n audio_timestamp: \"audioTimestamp\",\n media_resolution: \"mediaResolution\",\n image_config: \"imageConfig\",\n retrieval_config: \"retrievalConfig\",\n stream_function_call_arguments: \"streamFunctionCallArguments\",\n service_tier: \"serviceTier\",\n };\n const directKeys = new Set([\n \"cachedContent\",\n \"structuredOutputs\",\n \"safetySettings\",\n \"threshold\",\n \"audioTimestamp\",\n \"labels\",\n \"mediaResolution\",\n \"imageConfig\",\n \"retrievalConfig\",\n \"responseModalities\",\n \"streamFunctionCallArguments\",\n \"serviceTier\",\n ]);\n if (!mappings[key] && !directKeys.has(key)) return;\n const optionKey = mappings[key] ?? key;\n\n if (key === \"response_modalities\") {\n setProviderOption(options, target, optionKey, parseStringList(value));\n return;\n }\n\n if (\n key === \"safety_settings\" ||\n key === \"labels\" ||\n key === \"image_config\" ||\n key === \"retrieval_config\"\n ) {\n mergeObjectOption(options, target, optionKey, value);\n return;\n }\n\n setProviderOption(options, target, optionKey, typedValue(value));\n}\n\nfunction addMistralOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n): void {\n const target: ProviderOptionsKey = \"mistral\";\n const mappings: Record<string, string> = {\n safe_prompt: \"safePrompt\",\n document_image_limit: \"documentImageLimit\",\n document_page_limit: \"documentPageLimit\",\n structured_outputs: \"structuredOutputs\",\n strict_json_schema: \"strictJsonSchema\",\n parallel_tool_calls: \"parallelToolCalls\",\n reasoning_effort: \"reasoningEffort\",\n };\n const directKeys = new Set([\n \"safePrompt\",\n \"documentImageLimit\",\n \"documentPageLimit\",\n \"structuredOutputs\",\n \"strictJsonSchema\",\n \"parallelToolCalls\",\n \"reasoningEffort\",\n ]);\n if (!mappings[key] && !directKeys.has(key)) return;\n const optionKey = mappings[key] ?? key;\n setProviderOption(options, target, optionKey, typedValue(value));\n}\n\nfunction addCohereOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n): void {\n const target: ProviderOptionsKey = \"cohere\";\n\n if (key === \"thinking\") {\n mergeObjectOption(options, target, \"thinking\", value);\n return;\n }\n\n if (key === \"thinking_token_budget\" || key === \"token_budget\") {\n const tokenBudget = parseNumber(value);\n if (tokenBudget !== undefined) {\n setProviderOption(options, target, \"thinking\", {\n type: \"enabled\",\n tokenBudget,\n });\n }\n return;\n }\n\n if (key === \"thinking_type\") {\n const current = options[target]?.thinking;\n setProviderOption(options, target, \"thinking\", {\n ...(current && typeof current === \"object\" ? current : {}),\n type: value,\n });\n }\n}\n\nfunction addBedrockOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n): void {\n const target: ProviderOptionsKey = \"bedrock\";\n\n if (key === \"cache_control\") {\n setProviderOption(options, target, \"cachePoint\", {\n type: value === \"ephemeral\" ? \"default\" : value,\n });\n return;\n }\n\n if (key === \"cache_ttl\") {\n const current = options[target]?.cachePoint;\n setProviderOption(options, target, \"cachePoint\", {\n ...(current && typeof current === \"object\" ? current : {}),\n type: \"default\",\n ttl: value,\n });\n return;\n }\n\n if (key === \"reasoning_config\") {\n mergeObjectOption(options, target, \"reasoningConfig\", value);\n return;\n }\n\n if (key === \"budget_tokens\" || key === \"reasoning_effort\") {\n const current = options[target]?.reasoningConfig;\n const reasoningConfig: Record<string, unknown> =\n current && typeof current === \"object\" && !Array.isArray(current)\n ? { ...current }\n : {};\n reasoningConfig.type = \"enabled\";\n if (key === \"budget_tokens\") {\n const budgetTokens = parseNumber(value);\n if (budgetTokens !== undefined)\n reasoningConfig.budgetTokens = budgetTokens;\n }\n if (key === \"reasoning_effort\") reasoningConfig.maxReasoningEffort = value;\n setProviderOption(options, target, \"reasoningConfig\", reasoningConfig);\n return;\n }\n\n const mappings: Record<string, string> = {\n additional_model_request_fields: \"additionalModelRequestFields\",\n anthropic_beta: \"anthropicBeta\",\n service_tier: \"serviceTier\",\n };\n const directKeys = new Set([\n \"additionalModelRequestFields\",\n \"anthropicBeta\",\n \"serviceTier\",\n ]);\n if (!mappings[key] && !directKeys.has(key)) return;\n const optionKey = mappings[key] ?? key;\n\n if (key === \"additional_model_request_fields\") {\n mergeObjectOption(options, target, optionKey, value);\n return;\n }\n\n if (key === \"anthropic_beta\") {\n setProviderOption(options, target, optionKey, parseStringList(value));\n return;\n }\n\n setProviderOption(options, target, optionKey, typedValue(value));\n}\n\nfunction addGatewayOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n): void {\n const target: ProviderOptionsKey = \"gateway\";\n const listKeys = new Set([\"only\", \"order\", \"tags\", \"models\"]);\n const objectKeys = new Set([\"byok\", \"provider_timeouts\"]);\n const mappings: Record<string, string> = {\n zero_data_retention: \"zeroDataRetention\",\n disallow_prompt_training: \"disallowPromptTraining\",\n hipaa_compliant: \"hipaaCompliant\",\n quota_entity_id: \"quotaEntityId\",\n provider_timeouts: \"providerTimeouts\",\n };\n const directKeys = new Set([\n \"sort\",\n \"user\",\n \"zeroDataRetention\",\n \"disallowPromptTraining\",\n \"hipaaCompliant\",\n \"quotaEntityId\",\n \"providerTimeouts\",\n ]);\n if (\n !mappings[key] &&\n !directKeys.has(key) &&\n !listKeys.has(key) &&\n !objectKeys.has(key)\n ) {\n return;\n }\n const optionKey = mappings[key] ?? key;\n\n if (listKeys.has(key)) {\n setProviderOption(options, target, optionKey, parseStringList(value));\n return;\n }\n\n if (objectKeys.has(key)) {\n mergeObjectOption(options, target, optionKey, value);\n return;\n }\n\n setProviderOption(options, target, optionKey, typedValue(value));\n}\n\nfunction addOpenRouterOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n): void {\n const target: ProviderOptionsKey = \"openrouter\";\n\n if (key === \"models\") {\n setProviderOption(options, target, \"models\", parseStringList(value));\n return;\n }\n\n if (key === \"reasoning\") {\n mergeObjectOption(options, target, \"reasoning\", value);\n return;\n }\n\n if (key === \"reasoning_effort\") {\n const current = options[target]?.reasoning;\n setProviderOption(options, target, \"reasoning\", {\n ...(current && typeof current === \"object\" ? current : {}),\n effort: value,\n });\n return;\n }\n\n if (key === \"reasoning_max_tokens\" || key === \"max_reasoning_tokens\") {\n const current = options[target]?.reasoning;\n const maxTokens = parseNumber(value);\n if (maxTokens !== undefined) {\n setProviderOption(options, target, \"reasoning\", {\n ...(current && typeof current === \"object\" ? current : {}),\n max_tokens: maxTokens,\n });\n }\n return;\n }\n\n if (key === \"reasoning_enabled\" || key === \"reasoning_exclude\") {\n const current = options[target]?.reasoning;\n const parsed = parseBoolean(value);\n if (parsed !== undefined) {\n setProviderOption(options, target, \"reasoning\", {\n ...(current && typeof current === \"object\" ? current : {}),\n [key === \"reasoning_enabled\" ? \"enabled\" : \"exclude\"]: parsed,\n });\n }\n return;\n }\n\n if (key === \"user\") {\n setProviderOption(options, target, \"user\", value);\n }\n}\n\nfunction addProviderSpecificOption(\n options: AiSdkProviderOptions,\n provider: Provider,\n key: string,\n value: string,\n includeGatewayOptions: boolean,\n): void {\n if (provider === \"vercel\") {\n if (includeGatewayOptions) addGatewayOption(options, key, value);\n return;\n }\n\n if (provider === \"openai\") addOpenAiOption(options, key, value);\n if (provider === \"anthropic\") addAnthropicOption(options, key, value);\n if (provider === \"google\") addGoogleOption(options, key, value);\n if (provider === \"mistral\") addMistralOption(options, key, value);\n if (provider === \"cohere\") addCohereOption(options, key, value);\n if (provider === \"bedrock\") addBedrockOption(options, key, value);\n if (provider === \"openrouter\") addOpenRouterOption(options, key, value);\n}\n\n/**\n * Build AI SDK `providerOptions` from an LLM connection config.\n *\n * Common model call settings such as `temperature`, `topP`, and\n * `maxOutputTokens` are intentionally not emitted here. This helper only emits\n * provider-specific AI SDK options under the correct provider key.\n */\nexport function createAiSdkProviderOptions(\n configOrResult: LlmConnectionConfig | NormalizeResult,\n options: AiSdkProviderOptionsOptions = {},\n): AiSdkProviderOptionsResult {\n const normalized =\n \"changes\" in configOrResult && \"subProvider\" in configOrResult\n ? configOrResult\n : normalize(configOrResult, options);\n const providerOptions: AiSdkProviderOptions = {};\n\n if (!normalized.provider) {\n return {\n provider: normalized.provider,\n subProvider: normalized.subProvider,\n providerOptions,\n };\n }\n\n const includeGatewayOptions =\n options.includeGatewayOptions ?? normalized.provider === \"vercel\";\n\n for (const [key, value] of Object.entries(normalized.config.params)) {\n addProviderSpecificOption(\n providerOptions,\n normalized.provider,\n key,\n value,\n includeGatewayOptions,\n );\n }\n\n if (\n normalized.provider !== \"vercel\" &&\n !providerOptions[providerOptionsKey(normalized.provider)]\n ) {\n return {\n provider: normalized.provider,\n subProvider: normalized.subProvider,\n providerOptions: {},\n };\n }\n\n return {\n provider: normalized.provider,\n subProvider: normalized.subProvider,\n providerOptions,\n };\n}\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../src/ai-sdk.ts"],"sourcesContent":["import { normalize } from \"./normalize.js\";\nimport type { NormalizeOptions, NormalizeResult } from \"./normalize.js\";\nimport { parse } from \"./parse.js\";\nimport type { LlmConnectionConfig } from \"./parse.js\";\nimport type { Provider } from \"./provider-core.js\";\n\nexport type AiSdkProviderOptions = Record<string, Record<string, unknown>>;\n\nexport interface AiSdkProviderOptionsResult {\n provider: Provider | undefined;\n subProvider: Provider | undefined;\n providerOptions: AiSdkProviderOptions;\n}\n\nexport interface AiSdkProviderOptionsOptions extends NormalizeOptions {\n /**\n * Include Vercel AI Gateway routing options under `providerOptions.gateway`.\n * Defaults to true for `vercel` hosts.\n */\n includeGatewayOptions?: boolean;\n}\n\nexport type AiSdkProviderOptionsInput =\n | string\n | LlmConnectionConfig\n | NormalizeResult;\n\ntype ProviderOptionsKey = Provider | \"gateway\" | \"vertex\" | \"blackForestLabs\";\n\nconst PROVIDER_OPTION_KEYS: Record<Provider, ProviderOptionsKey> = {\n openai: \"openai\",\n azure: \"azure\",\n anthropic: \"anthropic\",\n google: \"google\",\n \"google-vertex\": \"vertex\",\n mistral: \"mistral\",\n cohere: \"cohere\",\n bedrock: \"bedrock\",\n openrouter: \"openrouter\",\n vercel: \"gateway\",\n xai: \"xai\",\n groq: \"groq\",\n fal: \"fal\",\n deepinfra: \"deepinfra\",\n \"black-forest-labs\": \"blackForestLabs\",\n together: \"together\",\n fireworks: \"fireworks\",\n deepseek: \"deepseek\",\n moonshotai: \"moonshotai\",\n perplexity: \"perplexity\",\n alibaba: \"alibaba\",\n cerebras: \"cerebras\",\n replicate: \"replicate\",\n prodia: \"prodia\",\n luma: \"luma\",\n bytedance: \"bytedance\",\n kling: \"kling\",\n elevenlabs: \"elevenlabs\",\n assemblyai: \"assemblyai\",\n deepgram: \"deepgram\",\n gladia: \"gladia\",\n lmnt: \"lmnt\",\n hume: \"hume\",\n revai: \"revai\",\n baseten: \"baseten\",\n huggingface: \"huggingface\",\n};\n\nconst TRUE_VALUES = new Set([\"true\", \"1\", \"yes\", \"on\"]);\nconst FALSE_VALUES = new Set([\"false\", \"0\", \"no\", \"off\"]);\n\nfunction providerOptionsKey(provider: Provider): ProviderOptionsKey {\n return PROVIDER_OPTION_KEYS[provider];\n}\n\nfunction setProviderOption(\n options: AiSdkProviderOptions,\n provider: ProviderOptionsKey,\n key: string,\n value: unknown,\n): void {\n options[provider] ??= {};\n options[provider][key] = value;\n}\n\nfunction parseBoolean(value: string): boolean | undefined {\n const normalized = value.trim().toLowerCase();\n if (TRUE_VALUES.has(normalized)) return true;\n if (FALSE_VALUES.has(normalized)) return false;\n return undefined;\n}\n\nfunction parseNumber(value: string): number | undefined {\n if (!value.trim()) return undefined;\n const parsed = Number(value);\n return Number.isFinite(parsed) ? parsed : undefined;\n}\n\nfunction parseJson(value: string): unknown {\n try {\n return JSON.parse(value) as unknown;\n } catch {\n return undefined;\n }\n}\n\nfunction parseStringList(value: string): string[] {\n const json = parseJson(value);\n if (Array.isArray(json)) {\n return json.filter((item): item is string => typeof item === \"string\");\n }\n return value\n .split(\",\")\n .map((item) => item.trim())\n .filter(Boolean);\n}\n\nfunction typedValue(value: string): unknown {\n const booleanValue = parseBoolean(value);\n if (booleanValue !== undefined) return booleanValue;\n\n const numberValue = parseNumber(value);\n if (numberValue !== undefined) return numberValue;\n\n const jsonValue = parseJson(value);\n if (jsonValue !== undefined) return jsonValue;\n\n return value;\n}\n\nfunction mergeObjectOption(\n options: AiSdkProviderOptions,\n provider: ProviderOptionsKey,\n key: string,\n value: string,\n): void {\n const parsed = parseJson(value);\n if (parsed && typeof parsed === \"object\" && !Array.isArray(parsed)) {\n setProviderOption(options, provider, key, parsed);\n }\n}\n\nfunction addOpenAiOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n target: ProviderOptionsKey = \"openai\",\n): void {\n const mappings: Record<string, string> = {\n reasoning_effort: \"reasoningEffort\",\n max_completion_tokens: \"maxCompletionTokens\",\n parallel_tool_calls: \"parallelToolCalls\",\n service_tier: \"serviceTier\",\n strict_json_schema: \"strictJsonSchema\",\n text_verbosity: \"textVerbosity\",\n prompt_cache_key: \"promptCacheKey\",\n prompt_cache_retention: \"promptCacheRetention\",\n safety_identifier: \"safetyIdentifier\",\n system_message_mode: \"systemMessageMode\",\n force_reasoning: \"forceReasoning\",\n reasoning_summary: \"reasoningSummary\",\n previous_response_id: \"previousResponseId\",\n max_tool_calls: \"maxToolCalls\",\n allowed_tools: \"allowedTools\",\n };\n const directKeys = new Set([\n \"conversation\",\n \"instructions\",\n \"logprobs\",\n \"metadata\",\n \"prediction\",\n \"store\",\n \"truncation\",\n \"user\",\n ]);\n if (!mappings[key] && !directKeys.has(key) && key !== \"include\") return;\n const optionKey = mappings[key] ?? key;\n\n if (key === \"include\") {\n setProviderOption(options, target, optionKey, parseStringList(value));\n return;\n }\n\n if (key === \"metadata\" || key === \"prediction\" || key === \"allowed_tools\") {\n mergeObjectOption(options, target, optionKey, value);\n return;\n }\n\n setProviderOption(options, target, optionKey, typedValue(value));\n}\n\nfunction addAnthropicOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n): void {\n const target: ProviderOptionsKey = \"anthropic\";\n\n if (key === \"cache_control\" || key === \"cacheControl\") {\n const ttl = options[target]?.cacheControl;\n const ttlValue =\n ttl && typeof ttl === \"object\" && \"ttl\" in ttl ? ttl.ttl : undefined;\n setProviderOption(options, target, \"cacheControl\", {\n type: value === \"ephemeral\" ? \"ephemeral\" : value,\n ...(ttlValue ? { ttl: ttlValue } : {}),\n });\n return;\n }\n\n if (key === \"cache_ttl\") {\n const current = options[target]?.cacheControl;\n setProviderOption(options, target, \"cacheControl\", {\n ...(current && typeof current === \"object\" ? current : {}),\n type: \"ephemeral\",\n ttl: value,\n });\n return;\n }\n\n if (key === \"thinking\") {\n mergeObjectOption(options, target, \"thinking\", value);\n return;\n }\n\n if (key === \"thinking_budget\" || key === \"budget_tokens\") {\n const budgetTokens = parseNumber(value);\n if (budgetTokens !== undefined) {\n setProviderOption(options, target, \"thinking\", {\n type: \"enabled\",\n budgetTokens,\n });\n }\n return;\n }\n\n const mappings: Record<string, string> = {\n send_reasoning: \"sendReasoning\",\n structured_output_mode: \"structuredOutputMode\",\n disable_parallel_tool_use: \"disableParallelToolUse\",\n tool_streaming: \"toolStreaming\",\n inference_geo: \"inferenceGeo\",\n anthropic_beta: \"anthropicBeta\",\n mcp_servers: \"mcpServers\",\n task_budget: \"taskBudget\",\n context_management: \"contextManagement\",\n };\n const directKeys = new Set([\n \"effort\",\n \"speed\",\n \"sendReasoning\",\n \"structuredOutputMode\",\n \"disableParallelToolUse\",\n \"toolStreaming\",\n \"inferenceGeo\",\n \"anthropicBeta\",\n \"metadata\",\n \"mcpServers\",\n \"container\",\n \"taskBudget\",\n \"contextManagement\",\n ]);\n if (!mappings[key] && !directKeys.has(key)) return;\n const optionKey = mappings[key] ?? key;\n\n if (key === \"anthropic_beta\") {\n setProviderOption(options, target, optionKey, parseStringList(value));\n return;\n }\n\n if (\n key === \"metadata\" ||\n key === \"mcp_servers\" ||\n key === \"container\" ||\n key === \"task_budget\" ||\n key === \"context_management\"\n ) {\n mergeObjectOption(options, target, optionKey, value);\n return;\n }\n\n setProviderOption(options, target, optionKey, typedValue(value));\n}\n\nfunction addGoogleOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n target: ProviderOptionsKey = \"google\",\n): void {\n if (\n key === \"thinking_budget\" ||\n key === \"thinking_level\" ||\n key === \"include_thoughts\"\n ) {\n const current = options[target]?.thinkingConfig;\n const thinkingConfig: Record<string, unknown> =\n current && typeof current === \"object\" && !Array.isArray(current)\n ? { ...current }\n : {};\n if (key === \"thinking_budget\") {\n const parsed = parseNumber(value);\n if (parsed !== undefined) thinkingConfig.thinkingBudget = parsed;\n }\n if (key === \"thinking_level\") thinkingConfig.thinkingLevel = value;\n if (key === \"include_thoughts\") {\n const parsed = parseBoolean(value);\n if (parsed !== undefined) thinkingConfig.includeThoughts = parsed;\n }\n setProviderOption(options, target, \"thinkingConfig\", thinkingConfig);\n return;\n }\n\n const mappings: Record<string, string> = {\n cached_content: \"cachedContent\",\n structured_outputs: \"structuredOutputs\",\n safety_settings: \"safetySettings\",\n response_modalities: \"responseModalities\",\n audio_timestamp: \"audioTimestamp\",\n media_resolution: \"mediaResolution\",\n image_config: \"imageConfig\",\n retrieval_config: \"retrievalConfig\",\n stream_function_call_arguments: \"streamFunctionCallArguments\",\n service_tier: \"serviceTier\",\n };\n const directKeys = new Set([\n \"cachedContent\",\n \"structuredOutputs\",\n \"safetySettings\",\n \"threshold\",\n \"audioTimestamp\",\n \"labels\",\n \"mediaResolution\",\n \"imageConfig\",\n \"retrievalConfig\",\n \"responseModalities\",\n \"streamFunctionCallArguments\",\n \"serviceTier\",\n ]);\n if (!mappings[key] && !directKeys.has(key)) return;\n const optionKey = mappings[key] ?? key;\n\n if (key === \"response_modalities\") {\n setProviderOption(options, target, optionKey, parseStringList(value));\n return;\n }\n\n if (\n key === \"safety_settings\" ||\n key === \"labels\" ||\n key === \"image_config\" ||\n key === \"retrieval_config\"\n ) {\n mergeObjectOption(options, target, optionKey, value);\n return;\n }\n\n setProviderOption(options, target, optionKey, typedValue(value));\n}\n\nfunction addMistralOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n): void {\n const target: ProviderOptionsKey = \"mistral\";\n const mappings: Record<string, string> = {\n safe_prompt: \"safePrompt\",\n document_image_limit: \"documentImageLimit\",\n document_page_limit: \"documentPageLimit\",\n structured_outputs: \"structuredOutputs\",\n strict_json_schema: \"strictJsonSchema\",\n parallel_tool_calls: \"parallelToolCalls\",\n reasoning_effort: \"reasoningEffort\",\n };\n const directKeys = new Set([\n \"safePrompt\",\n \"documentImageLimit\",\n \"documentPageLimit\",\n \"structuredOutputs\",\n \"strictJsonSchema\",\n \"parallelToolCalls\",\n \"reasoningEffort\",\n ]);\n if (!mappings[key] && !directKeys.has(key)) return;\n const optionKey = mappings[key] ?? key;\n setProviderOption(options, target, optionKey, typedValue(value));\n}\n\nfunction addCohereOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n): void {\n const target: ProviderOptionsKey = \"cohere\";\n\n if (key === \"thinking\") {\n mergeObjectOption(options, target, \"thinking\", value);\n return;\n }\n\n if (key === \"thinking_token_budget\" || key === \"token_budget\") {\n const tokenBudget = parseNumber(value);\n if (tokenBudget !== undefined) {\n setProviderOption(options, target, \"thinking\", {\n type: \"enabled\",\n tokenBudget,\n });\n }\n return;\n }\n\n if (key === \"thinking_type\") {\n const current = options[target]?.thinking;\n setProviderOption(options, target, \"thinking\", {\n ...(current && typeof current === \"object\" ? current : {}),\n type: value,\n });\n }\n}\n\nfunction addBedrockOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n): void {\n const target: ProviderOptionsKey = \"bedrock\";\n\n if (key === \"cache_control\") {\n setProviderOption(options, target, \"cachePoint\", {\n type: value === \"ephemeral\" ? \"default\" : value,\n });\n return;\n }\n\n if (key === \"cache_ttl\") {\n const current = options[target]?.cachePoint;\n setProviderOption(options, target, \"cachePoint\", {\n ...(current && typeof current === \"object\" ? current : {}),\n type: \"default\",\n ttl: value,\n });\n return;\n }\n\n if (key === \"reasoning_config\") {\n mergeObjectOption(options, target, \"reasoningConfig\", value);\n return;\n }\n\n if (key === \"budget_tokens\" || key === \"reasoning_effort\") {\n const current = options[target]?.reasoningConfig;\n const reasoningConfig: Record<string, unknown> =\n current && typeof current === \"object\" && !Array.isArray(current)\n ? { ...current }\n : {};\n reasoningConfig.type = \"enabled\";\n if (key === \"budget_tokens\") {\n const budgetTokens = parseNumber(value);\n if (budgetTokens !== undefined)\n reasoningConfig.budgetTokens = budgetTokens;\n }\n if (key === \"reasoning_effort\") reasoningConfig.maxReasoningEffort = value;\n setProviderOption(options, target, \"reasoningConfig\", reasoningConfig);\n return;\n }\n\n const mappings: Record<string, string> = {\n additional_model_request_fields: \"additionalModelRequestFields\",\n anthropic_beta: \"anthropicBeta\",\n service_tier: \"serviceTier\",\n };\n const directKeys = new Set([\n \"additionalModelRequestFields\",\n \"anthropicBeta\",\n \"serviceTier\",\n ]);\n if (!mappings[key] && !directKeys.has(key)) return;\n const optionKey = mappings[key] ?? key;\n\n if (key === \"additional_model_request_fields\") {\n mergeObjectOption(options, target, optionKey, value);\n return;\n }\n\n if (key === \"anthropic_beta\") {\n setProviderOption(options, target, optionKey, parseStringList(value));\n return;\n }\n\n setProviderOption(options, target, optionKey, typedValue(value));\n}\n\nfunction addGatewayOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n): void {\n const target: ProviderOptionsKey = \"gateway\";\n const listKeys = new Set([\"only\", \"order\", \"tags\", \"models\"]);\n const objectKeys = new Set([\"byok\", \"provider_timeouts\"]);\n const mappings: Record<string, string> = {\n zero_data_retention: \"zeroDataRetention\",\n disallow_prompt_training: \"disallowPromptTraining\",\n hipaa_compliant: \"hipaaCompliant\",\n quota_entity_id: \"quotaEntityId\",\n provider_timeouts: \"providerTimeouts\",\n };\n const directKeys = new Set([\n \"sort\",\n \"user\",\n \"zeroDataRetention\",\n \"disallowPromptTraining\",\n \"hipaaCompliant\",\n \"quotaEntityId\",\n \"providerTimeouts\",\n ]);\n if (\n !mappings[key] &&\n !directKeys.has(key) &&\n !listKeys.has(key) &&\n !objectKeys.has(key)\n ) {\n return;\n }\n const optionKey = mappings[key] ?? key;\n\n if (listKeys.has(key)) {\n setProviderOption(options, target, optionKey, parseStringList(value));\n return;\n }\n\n if (objectKeys.has(key)) {\n mergeObjectOption(options, target, optionKey, value);\n return;\n }\n\n setProviderOption(options, target, optionKey, typedValue(value));\n}\n\nfunction addOpenRouterOption(\n options: AiSdkProviderOptions,\n key: string,\n value: string,\n): void {\n const target: ProviderOptionsKey = \"openrouter\";\n\n if (key === \"models\") {\n setProviderOption(options, target, \"models\", parseStringList(value));\n return;\n }\n\n if (key === \"reasoning\") {\n mergeObjectOption(options, target, \"reasoning\", value);\n return;\n }\n\n if (key === \"reasoning_effort\") {\n const current = options[target]?.reasoning;\n setProviderOption(options, target, \"reasoning\", {\n ...(current && typeof current === \"object\" ? current : {}),\n effort: value,\n });\n return;\n }\n\n if (key === \"reasoning_max_tokens\" || key === \"max_reasoning_tokens\") {\n const current = options[target]?.reasoning;\n const maxTokens = parseNumber(value);\n if (maxTokens !== undefined) {\n setProviderOption(options, target, \"reasoning\", {\n ...(current && typeof current === \"object\" ? current : {}),\n max_tokens: maxTokens,\n });\n }\n return;\n }\n\n if (key === \"reasoning_enabled\" || key === \"reasoning_exclude\") {\n const current = options[target]?.reasoning;\n const parsed = parseBoolean(value);\n if (parsed !== undefined) {\n setProviderOption(options, target, \"reasoning\", {\n ...(current && typeof current === \"object\" ? current : {}),\n [key === \"reasoning_enabled\" ? \"enabled\" : \"exclude\"]: parsed,\n });\n }\n return;\n }\n\n if (key === \"user\") {\n setProviderOption(options, target, \"user\", value);\n }\n}\n\nfunction addFlexibleProviderOption(\n options: AiSdkProviderOptions,\n target: ProviderOptionsKey,\n key: string,\n value: string,\n): void {\n setProviderOption(options, target, key, typedValue(value));\n}\n\nfunction addProviderSpecificOption(\n options: AiSdkProviderOptions,\n provider: Provider,\n key: string,\n value: string,\n includeGatewayOptions: boolean,\n): void {\n if (provider === \"vercel\") {\n if (includeGatewayOptions) addGatewayOption(options, key, value);\n return;\n }\n\n if (provider === \"openai\") addOpenAiOption(options, key, value);\n if (provider === \"azure\") addOpenAiOption(options, key, value, \"azure\");\n if (provider === \"anthropic\") addAnthropicOption(options, key, value);\n if (provider === \"google\") addGoogleOption(options, key, value);\n if (provider === \"google-vertex\")\n addGoogleOption(options, key, value, \"vertex\");\n if (provider === \"mistral\") addMistralOption(options, key, value);\n if (provider === \"cohere\") addCohereOption(options, key, value);\n if (provider === \"bedrock\") addBedrockOption(options, key, value);\n if (provider === \"openrouter\") addOpenRouterOption(options, key, value);\n if (provider === \"xai\") addOpenAiOption(options, key, value, \"xai\");\n if (provider === \"groq\") addOpenAiOption(options, key, value, \"groq\");\n if (provider === \"fal\") addFlexibleProviderOption(options, \"fal\", key, value);\n if (provider === \"deepinfra\")\n addOpenAiOption(options, key, value, \"deepinfra\");\n if (provider === \"black-forest-labs\")\n addFlexibleProviderOption(options, \"blackForestLabs\", key, value);\n if (provider === \"together\") addOpenAiOption(options, key, value, \"together\");\n if (provider === \"fireworks\")\n addOpenAiOption(options, key, value, \"fireworks\");\n if (provider === \"deepseek\") addOpenAiOption(options, key, value, \"deepseek\");\n if (provider === \"moonshotai\")\n addOpenAiOption(options, key, value, \"moonshotai\");\n if (provider === \"perplexity\")\n addOpenAiOption(options, key, value, \"perplexity\");\n if (provider === \"alibaba\") addOpenAiOption(options, key, value, \"alibaba\");\n if (provider === \"cerebras\") addOpenAiOption(options, key, value, \"cerebras\");\n if (provider === \"replicate\")\n addFlexibleProviderOption(options, \"replicate\", key, value);\n if (provider === \"prodia\")\n addFlexibleProviderOption(options, \"prodia\", key, value);\n if (provider === \"luma\")\n addFlexibleProviderOption(options, \"luma\", key, value);\n if (provider === \"bytedance\")\n addFlexibleProviderOption(options, \"bytedance\", key, value);\n if (provider === \"kling\")\n addFlexibleProviderOption(options, \"kling\", key, value);\n if (provider === \"elevenlabs\")\n addFlexibleProviderOption(options, \"elevenlabs\", key, value);\n if (provider === \"assemblyai\")\n addFlexibleProviderOption(options, \"assemblyai\", key, value);\n if (provider === \"deepgram\")\n addFlexibleProviderOption(options, \"deepgram\", key, value);\n if (provider === \"gladia\")\n addFlexibleProviderOption(options, \"gladia\", key, value);\n if (provider === \"lmnt\")\n addFlexibleProviderOption(options, \"lmnt\", key, value);\n if (provider === \"hume\")\n addFlexibleProviderOption(options, \"hume\", key, value);\n if (provider === \"revai\")\n addFlexibleProviderOption(options, \"revai\", key, value);\n if (provider === \"baseten\") addOpenAiOption(options, key, value, \"baseten\");\n if (provider === \"huggingface\")\n addOpenAiOption(options, key, value, \"huggingface\");\n}\n\n/**\n * Build AI SDK `providerOptions` from an LLM connection config.\n *\n * Common model call settings such as `temperature`, `topP`, and\n * `maxOutputTokens` are intentionally not emitted here. This helper only emits\n * provider-specific AI SDK options under the correct provider key.\n */\nexport function createAiSdkProviderOptions(\n configOrResult: AiSdkProviderOptionsInput,\n options: AiSdkProviderOptionsOptions = {},\n): AiSdkProviderOptionsResult {\n const normalized =\n typeof configOrResult === \"string\"\n ? normalize(parse(configOrResult), options)\n : \"changes\" in configOrResult && \"subProvider\" in configOrResult\n ? configOrResult\n : normalize(configOrResult, options);\n const providerOptions: AiSdkProviderOptions = {};\n\n if (!normalized.provider) {\n return {\n provider: normalized.provider,\n subProvider: normalized.subProvider,\n providerOptions,\n };\n }\n\n const includeGatewayOptions =\n options.includeGatewayOptions ?? normalized.provider === \"vercel\";\n\n for (const [key, value] of Object.entries(normalized.config.params)) {\n addProviderSpecificOption(\n providerOptions,\n normalized.provider,\n key,\n value,\n includeGatewayOptions,\n );\n }\n\n if (\n normalized.provider !== \"vercel\" &&\n !providerOptions[providerOptionsKey(normalized.provider)]\n ) {\n return {\n provider: normalized.provider,\n subProvider: normalized.subProvider,\n providerOptions: {},\n };\n }\n\n return {\n provider: normalized.provider,\n subProvider: normalized.subProvider,\n providerOptions,\n };\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
normalize
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-NZR5DUX5.js";
|
|
4
4
|
import {
|
|
5
5
|
parse
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-TQJ2ABCT.js";
|
|
7
7
|
import {
|
|
8
8
|
PARAM_SPECS,
|
|
9
9
|
PROVIDER_PARAMS,
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
canHostOpenAIModels,
|
|
13
13
|
detectBedrockModelFamily,
|
|
14
14
|
isReasoningModel
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-OCJX4QFJ.js";
|
|
16
16
|
|
|
17
17
|
// src/validate.ts
|
|
18
18
|
function buildReverseParamMap(provider) {
|
|
@@ -173,4 +173,4 @@ function validate(connectionString, options = {}) {
|
|
|
173
173
|
export {
|
|
174
174
|
validate
|
|
175
175
|
};
|
|
176
|
-
//# sourceMappingURL=chunk-
|
|
176
|
+
//# sourceMappingURL=chunk-7HE4RH6X.js.map
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
isGatewayProvider,
|
|
12
12
|
isReasoningModel,
|
|
13
13
|
providerFromHostAlias
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-OCJX4QFJ.js";
|
|
15
15
|
|
|
16
16
|
// src/normalize.ts
|
|
17
17
|
function normalize(config, options = {}) {
|
|
@@ -114,4 +114,4 @@ function normalize(config, options = {}) {
|
|
|
114
114
|
export {
|
|
115
115
|
normalize
|
|
116
116
|
};
|
|
117
|
-
//# sourceMappingURL=chunk-
|
|
117
|
+
//# sourceMappingURL=chunk-NZR5DUX5.js.map
|
|
@@ -4,8 +4,10 @@ function hasOwn(object, key) {
|
|
|
4
4
|
}
|
|
5
5
|
var HOST_ALIASES = {
|
|
6
6
|
openai: "api.openai.com",
|
|
7
|
+
azure: "models.inference.ai.azure.com",
|
|
7
8
|
anthropic: "api.anthropic.com",
|
|
8
9
|
google: "generativelanguage.googleapis.com",
|
|
10
|
+
"google-vertex": "aiplatform.googleapis.com",
|
|
9
11
|
aistudio: "generativelanguage.googleapis.com",
|
|
10
12
|
mistral: "api.mistral.ai",
|
|
11
13
|
cohere: "api.cohere.com",
|
|
@@ -15,8 +17,16 @@ var HOST_ALIASES = {
|
|
|
15
17
|
alibaba: "dashscope-intl.aliyuncs.com",
|
|
16
18
|
alibabacloud: "dashscope-intl.aliyuncs.com",
|
|
17
19
|
dashscope: "dashscope-intl.aliyuncs.com",
|
|
20
|
+
groq: "api.groq.com",
|
|
21
|
+
fal: "fal.run",
|
|
18
22
|
fireworks: "api.fireworks.ai",
|
|
19
23
|
fireworksai: "api.fireworks.ai",
|
|
24
|
+
"black-forest-labs": "api.bfl.ai",
|
|
25
|
+
bfl: "api.bfl.ai",
|
|
26
|
+
deepseek: "api.deepseek.com",
|
|
27
|
+
moonshotai: "api.moonshot.ai",
|
|
28
|
+
moonshot: "api.moonshot.ai",
|
|
29
|
+
perplexity: "api.perplexity.ai",
|
|
20
30
|
venice: "api.venice.ai",
|
|
21
31
|
parasail: "api.parasail.io",
|
|
22
32
|
deepinfra: "api.deepinfra.com",
|
|
@@ -25,6 +35,23 @@ var HOST_ALIASES = {
|
|
|
25
35
|
novitaai: "api.novita.ai",
|
|
26
36
|
grok: "api.x.ai",
|
|
27
37
|
xai: "api.x.ai",
|
|
38
|
+
together: "api.together.xyz",
|
|
39
|
+
togetherai: "api.together.xyz",
|
|
40
|
+
cerebras: "api.cerebras.ai",
|
|
41
|
+
replicate: "api.replicate.com",
|
|
42
|
+
prodia: "api.prodia.com",
|
|
43
|
+
luma: "api.lumalabs.ai",
|
|
44
|
+
bytedance: "ark.cn-beijing.volces.com",
|
|
45
|
+
kling: "api.klingai.com",
|
|
46
|
+
elevenlabs: "api.elevenlabs.io",
|
|
47
|
+
assemblyai: "api.assemblyai.com",
|
|
48
|
+
deepgram: "api.deepgram.com",
|
|
49
|
+
gladia: "api.gladia.io",
|
|
50
|
+
lmnt: "api.lmnt.com",
|
|
51
|
+
hume: "api.hume.ai",
|
|
52
|
+
revai: "api.rev.ai",
|
|
53
|
+
baseten: "api.baseten.co",
|
|
54
|
+
huggingface: "api-inference.huggingface.co",
|
|
28
55
|
wandb: "api.inference.wandb.ai",
|
|
29
56
|
weightsandbiases: "api.inference.wandb.ai",
|
|
30
57
|
baidu: "qianfan.baidubce.com",
|
|
@@ -33,6 +60,18 @@ var HOST_ALIASES = {
|
|
|
33
60
|
xiaomi: "api.xiaomimimo.com",
|
|
34
61
|
minimax: "api.minimax.io"
|
|
35
62
|
};
|
|
63
|
+
var HOST_ALIAS_PROVIDERS = {
|
|
64
|
+
aistudio: "google",
|
|
65
|
+
vertex: "google-vertex",
|
|
66
|
+
grok: "xai",
|
|
67
|
+
bfl: "black-forest-labs",
|
|
68
|
+
moonshot: "moonshotai",
|
|
69
|
+
alibaba: "alibaba",
|
|
70
|
+
alibabacloud: "alibaba",
|
|
71
|
+
dashscope: "alibaba",
|
|
72
|
+
togetherai: "together",
|
|
73
|
+
fireworksai: "fireworks"
|
|
74
|
+
};
|
|
36
75
|
function readProcessEnv() {
|
|
37
76
|
return typeof process !== "undefined" && process.env ? process.env : {};
|
|
38
77
|
}
|
|
@@ -69,6 +108,9 @@ function providerFromHostAlias(alias) {
|
|
|
69
108
|
if (hasOwn(PROVIDER_PARAMS, normalizedAlias)) {
|
|
70
109
|
return normalizedAlias;
|
|
71
110
|
}
|
|
111
|
+
if (hasOwn(HOST_ALIAS_PROVIDERS, normalizedAlias)) {
|
|
112
|
+
return HOST_ALIAS_PROVIDERS[normalizedAlias];
|
|
113
|
+
}
|
|
72
114
|
return void 0;
|
|
73
115
|
}
|
|
74
116
|
function detectProvider(host) {
|
|
@@ -76,6 +118,34 @@ function detectProvider(host) {
|
|
|
76
118
|
if (host.includes("openrouter")) return "openrouter";
|
|
77
119
|
if (host.includes("gateway.ai.vercel")) return "vercel";
|
|
78
120
|
if (host.includes("amazonaws") || host.includes("bedrock")) return "bedrock";
|
|
121
|
+
if (host.includes("aiplatform.googleapis")) return "google-vertex";
|
|
122
|
+
if (host.includes("api.x.ai")) return "xai";
|
|
123
|
+
if (host.includes("groq")) return "groq";
|
|
124
|
+
if (host.includes("fal.run") || host.includes("fal.ai")) return "fal";
|
|
125
|
+
if (host.includes("deepinfra")) return "deepinfra";
|
|
126
|
+
if (host.includes("bfl.ai")) return "black-forest-labs";
|
|
127
|
+
if (host.includes("together")) return "together";
|
|
128
|
+
if (host.includes("fireworks")) return "fireworks";
|
|
129
|
+
if (host.includes("deepseek")) return "deepseek";
|
|
130
|
+
if (host.includes("moonshot")) return "moonshotai";
|
|
131
|
+
if (host.includes("perplexity")) return "perplexity";
|
|
132
|
+
if (host.includes("dashscope") || host.includes("aliyuncs")) return "alibaba";
|
|
133
|
+
if (host.includes("cerebras")) return "cerebras";
|
|
134
|
+
if (host.includes("replicate")) return "replicate";
|
|
135
|
+
if (host.includes("prodia")) return "prodia";
|
|
136
|
+
if (host.includes("lumalabs") || host.includes("luma")) return "luma";
|
|
137
|
+
if (host.includes("volces") || host.includes("bytedance")) return "bytedance";
|
|
138
|
+
if (host.includes("kling")) return "kling";
|
|
139
|
+
if (host.includes("elevenlabs")) return "elevenlabs";
|
|
140
|
+
if (host.includes("assemblyai")) return "assemblyai";
|
|
141
|
+
if (host.includes("deepgram")) return "deepgram";
|
|
142
|
+
if (host.includes("gladia")) return "gladia";
|
|
143
|
+
if (host.includes("lmnt")) return "lmnt";
|
|
144
|
+
if (host.includes("hume")) return "hume";
|
|
145
|
+
if (host.includes("rev.ai")) return "revai";
|
|
146
|
+
if (host.includes("baseten")) return "baseten";
|
|
147
|
+
if (host.includes("huggingface")) return "huggingface";
|
|
148
|
+
if (host.includes("azure")) return "azure";
|
|
79
149
|
if (host.includes("openai")) return "openai";
|
|
80
150
|
if (host.includes("anthropic") || host.includes("claude")) return "anthropic";
|
|
81
151
|
if (host.includes("googleapis") || host.includes("google")) return "google";
|
|
@@ -130,6 +200,33 @@ var ALIASES = {
|
|
|
130
200
|
cachePoint: "cache",
|
|
131
201
|
cache_point: "cache"
|
|
132
202
|
};
|
|
203
|
+
var OPENAI_COMPATIBLE_PARAMS = {
|
|
204
|
+
temperature: "temperature",
|
|
205
|
+
max_tokens: "max_tokens",
|
|
206
|
+
top_p: "top_p",
|
|
207
|
+
top_k: "top_k",
|
|
208
|
+
frequency_penalty: "frequency_penalty",
|
|
209
|
+
presence_penalty: "presence_penalty",
|
|
210
|
+
stop: "stop",
|
|
211
|
+
n: "n",
|
|
212
|
+
seed: "seed",
|
|
213
|
+
stream: "stream",
|
|
214
|
+
effort: "reasoning_effort"
|
|
215
|
+
};
|
|
216
|
+
var GOOGLE_COMPATIBLE_PARAMS = {
|
|
217
|
+
temperature: "temperature",
|
|
218
|
+
max_tokens: "maxOutputTokens",
|
|
219
|
+
top_p: "topP",
|
|
220
|
+
top_k: "topK",
|
|
221
|
+
frequency_penalty: "frequencyPenalty",
|
|
222
|
+
presence_penalty: "presencePenalty",
|
|
223
|
+
stop: "stopSequences",
|
|
224
|
+
n: "candidateCount",
|
|
225
|
+
stream: "stream",
|
|
226
|
+
seed: "seed",
|
|
227
|
+
responseMimeType: "responseMimeType",
|
|
228
|
+
responseSchema: "responseSchema"
|
|
229
|
+
};
|
|
133
230
|
var PROVIDER_PARAMS = {
|
|
134
231
|
openai: {
|
|
135
232
|
temperature: "temperature",
|
|
@@ -143,6 +240,7 @@ var PROVIDER_PARAMS = {
|
|
|
143
240
|
stream: "stream",
|
|
144
241
|
effort: "reasoning_effort"
|
|
145
242
|
},
|
|
243
|
+
azure: OPENAI_COMPATIBLE_PARAMS,
|
|
146
244
|
anthropic: {
|
|
147
245
|
temperature: "temperature",
|
|
148
246
|
max_tokens: "max_tokens",
|
|
@@ -168,6 +266,7 @@ var PROVIDER_PARAMS = {
|
|
|
168
266
|
responseMimeType: "responseMimeType",
|
|
169
267
|
responseSchema: "responseSchema"
|
|
170
268
|
},
|
|
269
|
+
"google-vertex": GOOGLE_COMPATIBLE_PARAMS,
|
|
171
270
|
mistral: {
|
|
172
271
|
temperature: "temperature",
|
|
173
272
|
max_tokens: "max_tokens",
|
|
@@ -231,8 +330,139 @@ var PROVIDER_PARAMS = {
|
|
|
231
330
|
seed: "seed",
|
|
232
331
|
stream: "stream",
|
|
233
332
|
effort: "reasoning_effort"
|
|
333
|
+
},
|
|
334
|
+
xai: OPENAI_COMPATIBLE_PARAMS,
|
|
335
|
+
groq: OPENAI_COMPATIBLE_PARAMS,
|
|
336
|
+
fal: {},
|
|
337
|
+
deepinfra: OPENAI_COMPATIBLE_PARAMS,
|
|
338
|
+
"black-forest-labs": {},
|
|
339
|
+
together: OPENAI_COMPATIBLE_PARAMS,
|
|
340
|
+
fireworks: OPENAI_COMPATIBLE_PARAMS,
|
|
341
|
+
deepseek: OPENAI_COMPATIBLE_PARAMS,
|
|
342
|
+
moonshotai: OPENAI_COMPATIBLE_PARAMS,
|
|
343
|
+
perplexity: OPENAI_COMPATIBLE_PARAMS,
|
|
344
|
+
alibaba: OPENAI_COMPATIBLE_PARAMS,
|
|
345
|
+
cerebras: OPENAI_COMPATIBLE_PARAMS,
|
|
346
|
+
replicate: {},
|
|
347
|
+
prodia: {},
|
|
348
|
+
luma: {},
|
|
349
|
+
bytedance: {},
|
|
350
|
+
kling: {},
|
|
351
|
+
elevenlabs: {},
|
|
352
|
+
assemblyai: {},
|
|
353
|
+
deepgram: {},
|
|
354
|
+
gladia: {},
|
|
355
|
+
lmnt: {},
|
|
356
|
+
hume: {},
|
|
357
|
+
revai: {},
|
|
358
|
+
baseten: OPENAI_COMPATIBLE_PARAMS,
|
|
359
|
+
huggingface: OPENAI_COMPATIBLE_PARAMS
|
|
360
|
+
};
|
|
361
|
+
var OPENAI_COMPATIBLE_PARAM_SPECS = {
|
|
362
|
+
temperature: {
|
|
363
|
+
type: "number",
|
|
364
|
+
min: 0,
|
|
365
|
+
max: 2,
|
|
366
|
+
default: 0.7,
|
|
367
|
+
description: "Controls randomness"
|
|
368
|
+
},
|
|
369
|
+
max_tokens: {
|
|
370
|
+
type: "number",
|
|
371
|
+
min: 1,
|
|
372
|
+
default: 4096,
|
|
373
|
+
description: "Maximum output tokens"
|
|
374
|
+
},
|
|
375
|
+
top_p: {
|
|
376
|
+
type: "number",
|
|
377
|
+
min: 0,
|
|
378
|
+
max: 1,
|
|
379
|
+
default: 1,
|
|
380
|
+
description: "Nucleus sampling"
|
|
381
|
+
},
|
|
382
|
+
top_k: {
|
|
383
|
+
type: "number",
|
|
384
|
+
min: 0,
|
|
385
|
+
default: 40,
|
|
386
|
+
description: "Top-K sampling"
|
|
387
|
+
},
|
|
388
|
+
frequency_penalty: {
|
|
389
|
+
type: "number",
|
|
390
|
+
min: -2,
|
|
391
|
+
max: 2,
|
|
392
|
+
default: 0,
|
|
393
|
+
description: "Penalize frequent tokens"
|
|
394
|
+
},
|
|
395
|
+
presence_penalty: {
|
|
396
|
+
type: "number",
|
|
397
|
+
min: -2,
|
|
398
|
+
max: 2,
|
|
399
|
+
default: 0,
|
|
400
|
+
description: "Penalize repeated topics"
|
|
401
|
+
},
|
|
402
|
+
stop: { type: "string", description: "Stop sequences" },
|
|
403
|
+
n: { type: "number", min: 1, default: 1, description: "Completions count" },
|
|
404
|
+
seed: { type: "number", description: "Random seed" },
|
|
405
|
+
stream: { type: "boolean", default: false, description: "Stream response" },
|
|
406
|
+
reasoning_effort: {
|
|
407
|
+
type: "string",
|
|
408
|
+
values: ["none", "minimal", "low", "medium", "high", "xhigh"],
|
|
409
|
+
default: "medium",
|
|
410
|
+
description: "Reasoning effort"
|
|
234
411
|
}
|
|
235
412
|
};
|
|
413
|
+
var GOOGLE_COMPATIBLE_PARAM_SPECS = {
|
|
414
|
+
temperature: {
|
|
415
|
+
type: "number",
|
|
416
|
+
min: 0,
|
|
417
|
+
max: 2,
|
|
418
|
+
default: 0.7,
|
|
419
|
+
description: "Controls randomness"
|
|
420
|
+
},
|
|
421
|
+
maxOutputTokens: {
|
|
422
|
+
type: "number",
|
|
423
|
+
min: 1,
|
|
424
|
+
default: 4096,
|
|
425
|
+
description: "Maximum output tokens"
|
|
426
|
+
},
|
|
427
|
+
topP: {
|
|
428
|
+
type: "number",
|
|
429
|
+
min: 0,
|
|
430
|
+
max: 1,
|
|
431
|
+
default: 1,
|
|
432
|
+
description: "Nucleus sampling"
|
|
433
|
+
},
|
|
434
|
+
topK: {
|
|
435
|
+
type: "number",
|
|
436
|
+
min: 0,
|
|
437
|
+
default: 40,
|
|
438
|
+
description: "Top-K sampling"
|
|
439
|
+
},
|
|
440
|
+
frequencyPenalty: {
|
|
441
|
+
type: "number",
|
|
442
|
+
min: -2,
|
|
443
|
+
max: 2,
|
|
444
|
+
default: 0,
|
|
445
|
+
description: "Penalize frequent tokens"
|
|
446
|
+
},
|
|
447
|
+
presencePenalty: {
|
|
448
|
+
type: "number",
|
|
449
|
+
min: -2,
|
|
450
|
+
max: 2,
|
|
451
|
+
default: 0,
|
|
452
|
+
description: "Penalize repeated topics"
|
|
453
|
+
},
|
|
454
|
+
stopSequences: { type: "string", description: "Stop sequences" },
|
|
455
|
+
candidateCount: {
|
|
456
|
+
type: "number",
|
|
457
|
+
min: 1,
|
|
458
|
+
default: 1,
|
|
459
|
+
description: "Candidate count"
|
|
460
|
+
},
|
|
461
|
+
stream: { type: "boolean", default: false, description: "Stream response" },
|
|
462
|
+
seed: { type: "number", description: "Random seed" },
|
|
463
|
+
responseMimeType: { type: "string", description: "Response MIME type" },
|
|
464
|
+
responseSchema: { type: "string", description: "Response schema" }
|
|
465
|
+
};
|
|
236
466
|
var PARAM_SPECS = {
|
|
237
467
|
openai: {
|
|
238
468
|
temperature: {
|
|
@@ -280,6 +510,7 @@ var PARAM_SPECS = {
|
|
|
280
510
|
description: "Reasoning effort"
|
|
281
511
|
}
|
|
282
512
|
},
|
|
513
|
+
azure: OPENAI_COMPATIBLE_PARAM_SPECS,
|
|
283
514
|
anthropic: {
|
|
284
515
|
temperature: {
|
|
285
516
|
type: "number",
|
|
@@ -381,6 +612,7 @@ var PARAM_SPECS = {
|
|
|
381
612
|
responseMimeType: { type: "string", description: "Response MIME type" },
|
|
382
613
|
responseSchema: { type: "string", description: "Response schema" }
|
|
383
614
|
},
|
|
615
|
+
"google-vertex": GOOGLE_COMPATIBLE_PARAM_SPECS,
|
|
384
616
|
mistral: {
|
|
385
617
|
temperature: {
|
|
386
618
|
type: "number",
|
|
@@ -626,7 +858,33 @@ var PARAM_SPECS = {
|
|
|
626
858
|
default: "medium",
|
|
627
859
|
description: "Reasoning effort"
|
|
628
860
|
}
|
|
629
|
-
}
|
|
861
|
+
},
|
|
862
|
+
xai: OPENAI_COMPATIBLE_PARAM_SPECS,
|
|
863
|
+
groq: OPENAI_COMPATIBLE_PARAM_SPECS,
|
|
864
|
+
fal: {},
|
|
865
|
+
deepinfra: OPENAI_COMPATIBLE_PARAM_SPECS,
|
|
866
|
+
"black-forest-labs": {},
|
|
867
|
+
together: OPENAI_COMPATIBLE_PARAM_SPECS,
|
|
868
|
+
fireworks: OPENAI_COMPATIBLE_PARAM_SPECS,
|
|
869
|
+
deepseek: OPENAI_COMPATIBLE_PARAM_SPECS,
|
|
870
|
+
moonshotai: OPENAI_COMPATIBLE_PARAM_SPECS,
|
|
871
|
+
perplexity: OPENAI_COMPATIBLE_PARAM_SPECS,
|
|
872
|
+
alibaba: OPENAI_COMPATIBLE_PARAM_SPECS,
|
|
873
|
+
cerebras: OPENAI_COMPATIBLE_PARAM_SPECS,
|
|
874
|
+
replicate: {},
|
|
875
|
+
prodia: {},
|
|
876
|
+
luma: {},
|
|
877
|
+
bytedance: {},
|
|
878
|
+
kling: {},
|
|
879
|
+
elevenlabs: {},
|
|
880
|
+
assemblyai: {},
|
|
881
|
+
deepgram: {},
|
|
882
|
+
gladia: {},
|
|
883
|
+
lmnt: {},
|
|
884
|
+
hume: {},
|
|
885
|
+
revai: {},
|
|
886
|
+
baseten: OPENAI_COMPATIBLE_PARAM_SPECS,
|
|
887
|
+
huggingface: OPENAI_COMPATIBLE_PARAM_SPECS
|
|
630
888
|
};
|
|
631
889
|
function isReasoningModel(model) {
|
|
632
890
|
const name = model.includes("/") ? model.split("/").pop() : model;
|
|
@@ -683,28 +941,84 @@ function bedrockSupportsCaching(model) {
|
|
|
683
941
|
var CACHE_VALUES = {
|
|
684
942
|
openai: void 0,
|
|
685
943
|
// OpenAI auto-caches; no explicit param
|
|
944
|
+
azure: void 0,
|
|
686
945
|
anthropic: "ephemeral",
|
|
687
946
|
google: void 0,
|
|
688
947
|
// Google uses explicit caching API, not a param
|
|
948
|
+
"google-vertex": void 0,
|
|
689
949
|
mistral: void 0,
|
|
690
950
|
cohere: void 0,
|
|
691
951
|
bedrock: "ephemeral",
|
|
692
952
|
// Supported for Claude models on Bedrock
|
|
693
953
|
openrouter: void 0,
|
|
694
954
|
// Depends on underlying provider
|
|
695
|
-
vercel: void 0
|
|
955
|
+
vercel: void 0,
|
|
696
956
|
// Depends on underlying provider
|
|
957
|
+
xai: void 0,
|
|
958
|
+
groq: void 0,
|
|
959
|
+
fal: void 0,
|
|
960
|
+
deepinfra: void 0,
|
|
961
|
+
"black-forest-labs": void 0,
|
|
962
|
+
together: void 0,
|
|
963
|
+
fireworks: void 0,
|
|
964
|
+
deepseek: void 0,
|
|
965
|
+
moonshotai: void 0,
|
|
966
|
+
perplexity: void 0,
|
|
967
|
+
alibaba: void 0,
|
|
968
|
+
cerebras: void 0,
|
|
969
|
+
replicate: void 0,
|
|
970
|
+
prodia: void 0,
|
|
971
|
+
luma: void 0,
|
|
972
|
+
bytedance: void 0,
|
|
973
|
+
kling: void 0,
|
|
974
|
+
elevenlabs: void 0,
|
|
975
|
+
assemblyai: void 0,
|
|
976
|
+
deepgram: void 0,
|
|
977
|
+
gladia: void 0,
|
|
978
|
+
lmnt: void 0,
|
|
979
|
+
hume: void 0,
|
|
980
|
+
revai: void 0,
|
|
981
|
+
baseten: void 0,
|
|
982
|
+
huggingface: void 0
|
|
697
983
|
};
|
|
698
984
|
var CACHE_TTLS = {
|
|
699
985
|
openai: void 0,
|
|
986
|
+
azure: void 0,
|
|
700
987
|
anthropic: ["5m", "1h"],
|
|
701
988
|
google: void 0,
|
|
989
|
+
"google-vertex": void 0,
|
|
702
990
|
mistral: void 0,
|
|
703
991
|
cohere: void 0,
|
|
704
992
|
bedrock: ["5m", "1h"],
|
|
705
993
|
// Claude on Bedrock uses same TTLs as direct Anthropic
|
|
706
994
|
openrouter: void 0,
|
|
707
|
-
vercel: void 0
|
|
995
|
+
vercel: void 0,
|
|
996
|
+
xai: void 0,
|
|
997
|
+
groq: void 0,
|
|
998
|
+
fal: void 0,
|
|
999
|
+
deepinfra: void 0,
|
|
1000
|
+
"black-forest-labs": void 0,
|
|
1001
|
+
together: void 0,
|
|
1002
|
+
fireworks: void 0,
|
|
1003
|
+
deepseek: void 0,
|
|
1004
|
+
moonshotai: void 0,
|
|
1005
|
+
perplexity: void 0,
|
|
1006
|
+
alibaba: void 0,
|
|
1007
|
+
cerebras: void 0,
|
|
1008
|
+
replicate: void 0,
|
|
1009
|
+
prodia: void 0,
|
|
1010
|
+
luma: void 0,
|
|
1011
|
+
bytedance: void 0,
|
|
1012
|
+
kling: void 0,
|
|
1013
|
+
elevenlabs: void 0,
|
|
1014
|
+
assemblyai: void 0,
|
|
1015
|
+
deepgram: void 0,
|
|
1016
|
+
gladia: void 0,
|
|
1017
|
+
lmnt: void 0,
|
|
1018
|
+
hume: void 0,
|
|
1019
|
+
revai: void 0,
|
|
1020
|
+
baseten: void 0,
|
|
1021
|
+
huggingface: void 0
|
|
708
1022
|
};
|
|
709
1023
|
var DURATION_RE = /^\d+[mh]$/;
|
|
710
1024
|
|
|
@@ -727,4 +1041,4 @@ export {
|
|
|
727
1041
|
CACHE_TTLS,
|
|
728
1042
|
DURATION_RE
|
|
729
1043
|
};
|
|
730
|
-
//# sourceMappingURL=chunk-
|
|
1044
|
+
//# sourceMappingURL=chunk-OCJX4QFJ.js.map
|