diff --git a/packages-ext/providers/scripts/utils/extra.ts b/packages-ext/providers/scripts/utils/extra.ts index d9fc19b..77806bf 100644 --- a/packages-ext/providers/scripts/utils/extra.ts +++ b/packages-ext/providers/scripts/utils/extra.ts @@ -26,19 +26,6 @@ export const extraProviders: CodeGenProvider[] = [ models: [], name: 'Novita AI', }, - { - apiKey: ['SILICON_FLOW_API_KEY'], - baseURL: 'https://api.siliconflow.cn/v1/', - capabilities: { - embed: true, - speech: true, - transcription: true, - }, - doc: 'https://docs.siliconflow.com/en/userguide/quickstart#4-3-call-via-openai-interface', - id: 'silicon-flow', - models: [], - name: 'SiliconFlow', - }, { apiKey: ['STEPFUN_API_KEY'], baseURL: 'https://api.stepfun.com/v1/', diff --git a/packages-ext/providers/scripts/utils/overrides.ts b/packages-ext/providers/scripts/utils/overrides.ts index 5accbbb..5d60577 100644 --- a/packages-ext/providers/scripts/utils/overrides.ts +++ b/packages-ext/providers/scripts/utils/overrides.ts @@ -63,6 +63,16 @@ export const overrides: Record> = { 'perplexity': { api: 'https://api.perplexity.ai/', }, + 'siliconflow': { + _capabilities: { + embed: true, + speech: true, + transcription: true, + }, + _overrides: { + create: 'SiliconFlow', + }, + }, 'xai': { api: 'https://api.x.ai/v1/', }, diff --git a/packages-ext/providers/src/generated/create.ts b/packages-ext/providers/src/generated/create.ts index 03e0618..83311ad 100644 --- a/packages-ext/providers/src/generated/create.ts +++ b/packages-ext/providers/src/generated/create.ts @@ -95,12 +95,21 @@ export const createGroq = (apiKey: string, baseURL = 'https://api.groq.com/opena createEmbedProvider({ apiKey, baseURL }), ) +/** + * Create a Bailing Provider + * @see {@link https://alipaytbox.yuque.com/sxs0ba/ling/intro} + */ +export const createBailing = (apiKey: string, baseURL = 'https://api.tbox.cn/api/llm/v1/chat/completions') => merge( + createChatProvider<'Ling-1T' | 'Ring-1T'>({ apiKey, baseURL }), + createModelProvider({ apiKey, baseURL }), +) + /** * Create a GitHub Copilot Provider * @see {@link https://docs.github.com/en/copilot} */ export const createGithubCopilot = (apiKey: string, baseURL = 'https://api.githubcopilot.com') => merge( - createChatProvider<'gemini-2.0-flash-001' | 'claude-opus-4' | 'grok-code-fast-1' | 'gpt-5.1-codex' | 'claude-haiku-4.5' | 'gemini-3-pro-preview' | 'oswe-vscode-prime' | 'claude-3.5-sonnet' | 'gpt-5.1-codex-mini' | 'o3-mini' | 'gpt-5.1' | 'gpt-5-codex' | 'gpt-4o' | 'gpt-4.1' | 'o4-mini' | 'claude-opus-41' | 'gpt-5-mini' | 'claude-3.7-sonnet' | 'gemini-2.5-pro' | 'o3' | 'claude-sonnet-4' | 'gpt-5' | 'claude-3.7-sonnet-thought' | 'claude-sonnet-4.5'>({ apiKey, baseURL }), + createChatProvider<'gemini-2.0-flash-001' | 'claude-opus-4' | 'grok-code-fast-1' | 'gpt-5.1-codex' | 'claude-haiku-4.5' | 'gemini-3-pro-preview' | 'oswe-vscode-prime' | 'claude-3.5-sonnet' | 'gpt-5.1-codex-mini' | 'o3-mini' | 'gpt-5.1' | 'gpt-5-codex' | 'gpt-4o' | 'gpt-4.1' | 'o4-mini' | 'claude-opus-41' | 'gpt-5-mini' | 'claude-3.7-sonnet' | 'gemini-2.5-pro' | 'o3' | 'claude-sonnet-4' | 'gpt-5' | 'claude-3.7-sonnet-thought' | 'claude-opus-4.5' | 'claude-sonnet-4.5'>({ apiKey, baseURL }), createModelProvider({ apiKey, baseURL }), ) @@ -159,6 +168,15 @@ export const createChutes = (apiKey: string, baseURL = 'https://llm.chutes.ai/v1 createModelProvider({ apiKey, baseURL }), ) +/** + * Create a AgentRouter Provider + * @see {@link https://docs.agentrouter.org} + */ +export const createAgentrouter = (apiKey: string, baseURL = 'https://agentrouter.org/v1') => merge( + createChatProvider<'claude-3-5-sonnet-20241022' | 'deepseek-r1-0528' | 'claude-sonnet-4-20250514-thinking' | 'glm-4.5' | 'claude-3-5-sonnet-20240620' | 'gemini-3-pro-preview' | 'claude-3-7-sonnet-20250219-thinking' | 'deepseek-v3.1' | 'claude-sonnet-4-5-20250929' | 'kimi-k2-thinking' | 'gpt-5.1' | 'claude-sonnet-4-20250514' | 'glm-4.6' | 'claude-opus-4-20250514' | 'claude-3-5-haiku-20241022' | 'claude-3-7-sonnet-20250219' | 'gpt-5' | 'claude-opus-4-20250514-thinking' | 'deepseek-v3.2' | 'claude-haiku-4-5-20251001'>({ apiKey, baseURL }), + createModelProvider({ apiKey, baseURL }), +) + /** * Create a Cortecs Provider * @see {@link https://api.cortecs.ai/v1/models} @@ -186,6 +204,18 @@ export const createBaseten = (apiKey: string, baseURL = 'https://inference.baset createModelProvider({ apiKey, baseURL }), ) +/** + * Create a SiliconFlow Provider + * @see {@link https://cloud.siliconflow.com/models} + */ +export const createSiliconFlow = (apiKey: string, baseURL = 'https://api.siliconflow.com/v1') => merge( + createChatProvider<'deepseek-ai-deepseek-r1-distill-qwen-7b' | 'z-ai-glm-4.5-air' | 'qwen-qwen2.5-72b-instruct-128k' | 'deepseek-ai-deepseek-vl2' | 'moonshotai-kimi-dev-72b' | 'qwen-qwen2.5-coder-32b-instruct' | 'qwen-qwen3-omni-30b-a3b-captioner' | 'qwen-qwen3-vl-235b-a22b-thinking' | 'thudm-glm-z1-9b-0414' | 'qwen-qwen3-vl-30b-a3b-thinking' | 'deepseek-ai-deepseek-v3.2-exp' | 'qwen-qwen2.5-vl-32b-instruct' | 'qwen-qwen3-235b-a22b-thinking-2507' | 'qwen-qwen3-vl-32b-instruct' | 'inclusionai-ling-flash-2.0' | 'moonshotai-kimi-k2-instruct' | 'inclusionai-ling-mini-2.0' | 'qwen-qwen3-coder-480b-a35b-instruct' | 'qwen-qwen3-omni-30b-a3b-instruct' | 'moonshotai-kimi-k2-instruct-0905' | 'qwen-qwen3-30b-a3b-thinking-2507' | 'qwen-qwen3-14b' | 'deepseek-ai-deepseek-r1' | 'deepseek-ai-deepseek-v3.1' | 'z-ai-glm-4.5' | 'qwen-qwen3-30b-a3b-instruct-2507' | 'zai-org-glm-4.5v' | 'inclusionai-ring-flash-2.0' | 'thudm-glm-z1-32b-0414' | 'qwen-qwen2.5-vl-72b-instruct' | 'qwen-qwen3-vl-32b-thinking' | 'tencent-hunyuan-mt-7b' | 'qwen-qwen3-30b-a3b' | 'openai-gpt-oss-120b' | 'minimaxai-minimax-m1-80k' | 'deepseek-ai-deepseek-v3.1-terminus' | 'zai-org-glm-4.5-air' | 'thudm-glm-4-9b-0414' | 'qwen-qwen3-coder-30b-a3b-instruct' | 'qwen-qwq-32b' | 'stepfun-ai-step3' | 'thudm-glm-4.1v-9b-thinking' | 'qwen-qwen3-next-80b-a3b-thinking' | 'qwen-qwen3-vl-235b-a22b-instruct' | 'zai-org-glm-4.5' | 'deepseek-ai-deepseek-r1-distill-qwen-14b' | 'deepseek-ai-deepseek-v3' | 'openai-gpt-oss-20b' | 'qwen-qwen2.5-7b-instruct' | 'qwen-qwen2.5-32b-instruct' | 'minimaxai-minimax-m2' | 'bytedance-seed-seed-oss-36b-instruct' | 'qwen-qwen2.5-vl-7b-instruct' | 'qwen-qwen3-vl-8b-thinking' | 'qwen-qwen3-vl-8b-instruct' | 'nex-agi-deepseek-v3.1-nex-n1' | 'qwen-qwen3-8b' | 'qwen-qwen2.5-72b-instruct' | 'qwen-qwen3-235b-a22b' | 'meta-llama-meta-llama-3.1-8b-instruct' | 'qwen-qwen3-235b-a22b-instruct-2507' | 'baidu-ernie-4.5-300b-a47b' | 'qwen-qwen3-omni-30b-a3b-thinking' | 'zai-org-glm-4.6' | 'qwen-qwen3-32b' | 'tencent-hunyuan-a13b-instruct' | 'thudm-glm-4-32b-0414' | 'deepseek-ai-deepseek-r1-distill-qwen-32b' | 'qwen-qwen3-next-80b-a3b-instruct' | 'qwen-qwen3-vl-30b-a3b-instruct' | 'moonshotai-kimi-k2-thinking' | 'qwen-qwen2.5-14b-instruct'>({ apiKey, baseURL }), + createModelProvider({ apiKey, baseURL }), + createEmbedProvider({ apiKey, baseURL }), + createSpeechProvider({ apiKey, baseURL }), + createTranscriptionProvider({ apiKey, baseURL }), +) + /** * Create a Hugging Face Provider * @see {@link https://huggingface.co/docs/inference-providers} @@ -200,7 +230,7 @@ export const createHuggingface = (apiKey: string, baseURL = 'https://router.hugg * @see {@link https://opencode.ai/docs/zen} */ export const createOpencode = (apiKey: string, baseURL = 'https://opencode.ai/zen/v1') => merge( - createChatProvider<'qwen3-coder' | 'claude-opus-4-1' | 'kimi-k2' | 'gpt-5.1-codex' | 'claude-haiku-4-5' | 'gemini-3-pro' | 'claude-sonnet-4-5' | 'alpha-gd4' | 'alpha-kimi-k2-thinking' | 'gpt-5.1' | 'alpha-minimax-m2' | 'gpt-5-nano' | 'gpt-5-codex' | 'big-pickle' | 'claude-3-5-haiku' | 'glm-4.6' | 'grok-code' | 'alpha-doubao-seed-code' | 'claude-sonnet-4' | 'gpt-5'>({ apiKey, baseURL }), + createChatProvider<'qwen3-coder' | 'claude-opus-4-1' | 'kimi-k2' | 'gpt-5.1-codex' | 'claude-haiku-4-5' | 'claude-opus-4-5' | 'gemini-3-pro' | 'claude-sonnet-4-5' | 'alpha-gd4' | 'kimi-k2-thinking' | 'gpt-5.1' | 'alpha-minimax-m2' | 'gpt-5-nano' | 'gpt-5-codex' | 'big-pickle' | 'claude-3-5-haiku' | 'glm-4.6' | 'grok-code' | 'alpha-doubao-seed-code' | 'claude-sonnet-4' | 'gpt-5'>({ apiKey, baseURL }), createModelProvider({ apiKey, baseURL }), ) @@ -368,7 +398,7 @@ export const createInference = (apiKey: string, baseURL = 'https://inference.net * @see {@link https://requesty.ai/solution/llm-routing/models} */ export const createRequesty = (apiKey: string, baseURL = 'https://router.requesty.ai/v1') => merge( - createChatProvider<'xai/grok-4' | 'xai/grok-4-fast' | 'google/gemini-2.5-flash' | 'google/gemini-2.5-pro' | 'openai/gpt-4.1-mini' | 'openai/gpt-5-nano' | 'openai/gpt-4.1' | 'openai/o4-mini' | 'openai/gpt-5-mini' | 'openai/gpt-4o-mini' | 'openai/gpt-5' | 'anthropic/claude-opus-4' | 'anthropic/claude-opus-4-1' | 'anthropic/claude-haiku-4-5' | 'anthropic/claude-sonnet-4-5' | 'anthropic/claude-3-7-sonnet' | 'anthropic/claude-sonnet-4'>({ apiKey, baseURL }), + createChatProvider<'xai/grok-4' | 'xai/grok-4-fast' | 'google/gemini-3-pro-preview' | 'google/gemini-2.5-flash' | 'google/gemini-2.5-pro' | 'openai/gpt-4.1-mini' | 'openai/gpt-5-nano' | 'openai/gpt-4.1' | 'openai/o4-mini' | 'openai/gpt-5-mini' | 'openai/gpt-4o-mini' | 'openai/gpt-5' | 'anthropic/claude-opus-4' | 'anthropic/claude-opus-4-1' | 'anthropic/claude-haiku-4-5' | 'anthropic/claude-opus-4-5' | 'anthropic/claude-sonnet-4-5' | 'anthropic/claude-3-7-sonnet' | 'anthropic/claude-sonnet-4'>({ apiKey, baseURL }), createModelProvider({ apiKey, baseURL }), ) @@ -390,12 +420,21 @@ export const createLmstudio = (apiKey: string, baseURL = 'http://127.0.0.1:1234/ createModelProvider({ apiKey, baseURL }), ) +/** + * Create a IO Intelligence Provider + * @see {@link https://io.net/docs/guides/intelligence/io-intelligence} + */ +export const createIoIntelligence = (apiKey: string, baseURL = 'https://api.intelligence.io.solutions/api/v1') => merge( + createChatProvider<'deepseek-ai-deepseek-r1-0528' | 'mistralai-magistral-small-2506' | 'intel-qwen3-coder-480b-a35b-instruct-int4-mixed-ar' | 'qwen-qwen3-235b-a22b-thinking-2507' | 'mistralai-devstral-small-2505' | 'qwen-qwen2-5-vl-32b-instruct' | 'moonshotai-kimi-k2-instruct-0905' | 'meta-llama-llama-4-maverick-17b-128e-instruct-fp8' | 'openai-gpt-oss-120b' | 'meta-llama-llama-3-3-70b-instruct' | 'zai-org-glm-4-6' | 'openai-gpt-oss-20b' | 'mistralai-mistral-large-instruct-2411' | 'meta-llama-llama-3-2-90b-vision-instruct' | 'mistralai-mistral-nemo-instruct-2407' | 'qwen-qwen3-next-80b-a3b-instruct' | 'moonshotai-kimi-k2-thinking'>({ apiKey, baseURL }), + createModelProvider({ apiKey, baseURL }), +) + /** * Create a Fireworks AI Provider * @see {@link https://fireworks.ai/docs/} */ export const createFireworks = (apiKey: string, baseURL = 'https://api.fireworks.ai/inference/v1/') => merge( - createChatProvider<'accounts/fireworks/models/deepseek-r1-0528' | 'accounts/fireworks/models/deepseek-v3p1' | 'accounts/fireworks/models/minimax-m2' | 'accounts/fireworks/models/deepseek-v3-0324' | 'accounts/fireworks/models/kimi-k2-instruct' | 'accounts/fireworks/models/qwen3-235b-a22b' | 'accounts/fireworks/models/gpt-oss-20b' | 'accounts/fireworks/models/gpt-oss-120b' | 'accounts/fireworks/models/glm-4p5-air' | 'accounts/fireworks/models/qwen3-coder-480b-a35b-instruct' | 'accounts/fireworks/models/glm-4p5'>({ apiKey, baseURL }), + createChatProvider<'accounts/fireworks/models/deepseek-r1-0528' | 'accounts/fireworks/models/deepseek-v3p1' | 'accounts/fireworks/models/minimax-m2' | 'accounts/fireworks/models/deepseek-v3-0324' | 'accounts/fireworks/models/kimi-k2-thinking' | 'accounts/fireworks/models/kimi-k2-instruct' | 'accounts/fireworks/models/qwen3-235b-a22b' | 'accounts/fireworks/models/gpt-oss-20b' | 'accounts/fireworks/models/gpt-oss-120b' | 'accounts/fireworks/models/glm-4p5-air' | 'accounts/fireworks/models/qwen3-coder-480b-a35b-instruct' | 'accounts/fireworks/models/glm-4p5'>({ apiKey, baseURL }), createModelProvider({ apiKey, baseURL }), ) @@ -440,7 +479,7 @@ export const createPoe = (apiKey: string, baseURL = 'https://api.poe.com/v1') => * @see {@link https://inference-docs.cerebras.ai/models/overview} */ export const createCerebras = (apiKey: string, baseURL = 'https://api.cerebras.ai/v1/') => merge( - createChatProvider<'qwen-3-235b-a22b-instruct-2507' | 'zai-glm-4.6' | 'qwen-3-coder-480b' | 'gpt-oss-120b'>({ apiKey, baseURL }), + createChatProvider<'qwen-3-235b-a22b-instruct-2507' | 'zai-glm-4.6' | 'gpt-oss-120b'>({ apiKey, baseURL }), createModelProvider({ apiKey, baseURL }), createEmbedProvider({ apiKey, baseURL }), ) @@ -463,18 +502,6 @@ export const createNovita = (apiKey: string, baseURL = 'https://api.novita.ai/v3 createModelProvider({ apiKey, baseURL }), ) -/** - * Create a SiliconFlow Provider - * @see {@link https://docs.siliconflow.com/en/userguide/quickstart#4-3-call-via-openai-interface} - */ -export const createSiliconFlow = (apiKey: string, baseURL = 'https://api.siliconflow.cn/v1/') => merge( - createChatProvider({ apiKey, baseURL }), - createModelProvider({ apiKey, baseURL }), - createEmbedProvider({ apiKey, baseURL }), - createSpeechProvider({ apiKey, baseURL }), - createTranscriptionProvider({ apiKey, baseURL }), -) - /** * Create a StepFun Provider * @see {@link https://www.stepfun.com} diff --git a/packages-ext/providers/src/generated/index.ts b/packages-ext/providers/src/generated/index.ts index eea9cd6..edabd27 100644 --- a/packages-ext/providers/src/generated/index.ts +++ b/packages-ext/providers/src/generated/index.ts @@ -13,6 +13,7 @@ import { createNvidia, createUpstage, createGroq, + createBailing, createGithubCopilot, createMistral, createNebius, @@ -20,9 +21,11 @@ import { createAlibabaCn, createVenice, createChutes, + createAgentrouter, createCortecs, createGithubModels, createBaseten, + createSiliconFlow, createHuggingface, createOpencode, createFastrouter, @@ -45,6 +48,7 @@ import { createRequesty, createMorph, createLmstudio, + createIoIntelligence, createFireworks, createModelscope, createLlama, @@ -53,7 +57,6 @@ import { createCerebras, createMinimaxi, createNovita, - createSiliconFlow, createStepfun, createTencentHunyuan, } from './create' @@ -148,6 +151,15 @@ export const upstage = createUpstage(process.env.UPSTAGE_API_KEY ?? '') */ export const groq = createGroq(process.env.GROQ_API_KEY ?? '') +/** + * Bailing Provider + * @see {@link https://alipaytbox.yuque.com/sxs0ba/ling/intro} + * @remarks + * - baseURL - `https://api.tbox.cn/api/llm/v1/chat/completions` + * - apiKey - `BAILING_API_TOKEN` + */ +export const bailing = createBailing(process.env.BAILING_API_TOKEN ?? '') + /** * GitHub Copilot Provider * @see {@link https://docs.github.com/en/copilot} @@ -211,6 +223,15 @@ export const venice = createVenice(process.env.VENICE_API_KEY ?? '') */ export const chutes = createChutes(process.env.CHUTES_API_KEY ?? '') +/** + * AgentRouter Provider + * @see {@link https://docs.agentrouter.org} + * @remarks + * - baseURL - `https://agentrouter.org/v1` + * - apiKey - `AGENTROUTER_API_KEY` + */ +export const agentrouter = createAgentrouter(process.env.AGENTROUTER_API_KEY ?? '') + /** * Cortecs Provider * @see {@link https://api.cortecs.ai/v1/models} @@ -238,6 +259,15 @@ export const githubModels = createGithubModels(process.env.GITHUB_TOKEN ?? '') */ export const baseten = createBaseten(process.env.BASETEN_API_KEY ?? '') +/** + * SiliconFlow Provider + * @see {@link https://cloud.siliconflow.com/models} + * @remarks + * - baseURL - `https://api.siliconflow.com/v1` + * - apiKey - `SILICONFLOW_API_KEY` + */ +export const siliconflow = createSiliconFlow(process.env.SILICONFLOW_API_KEY ?? '') + /** * Hugging Face Provider * @see {@link https://huggingface.co/docs/inference-providers} @@ -436,6 +466,15 @@ export const morph = createMorph(process.env.MORPH_API_KEY ?? '') */ export const lmstudio = createLmstudio(process.env.LMSTUDIO_API_KEY ?? '') +/** + * IO Intelligence Provider + * @see {@link https://io.net/docs/guides/intelligence/io-intelligence} + * @remarks + * - baseURL - `https://api.intelligence.io.solutions/api/v1` + * - apiKey - `IOINTELLIGENCE_API_KEY` + */ +export const ioIntelligence = createIoIntelligence(process.env.IOINTELLIGENCE_API_KEY ?? '') + /** * Fireworks AI Provider * @see {@link https://fireworks.ai/docs/} @@ -508,15 +547,6 @@ export const minimaxi = createMinimaxi(process.env.MINIMAX_API_KEY ?? '') */ export const novita = createNovita(process.env.NOVITA_API_KEY ?? '') -/** - * SiliconFlow Provider - * @see {@link https://docs.siliconflow.com/en/userguide/quickstart#4-3-call-via-openai-interface} - * @remarks - * - baseURL - `https://api.siliconflow.cn/v1/` - * - apiKey - `SILICON_FLOW_API_KEY` - */ -export const siliconFlow = createSiliconFlow(process.env.SILICON_FLOW_API_KEY ?? '') - /** * StepFun Provider * @see {@link https://www.stepfun.com} diff --git a/packages-ext/providers/src/generated/types.ts b/packages-ext/providers/src/generated/types.ts index 9af597e..dcde7db 100644 --- a/packages-ext/providers/src/generated/types.ts +++ b/packages-ext/providers/src/generated/types.ts @@ -2,12 +2,12 @@ /* eslint-disable perfectionist/sort-union-types */ -export type OpenrouterModels = 'moonshotai/kimi-k2' | 'moonshotai/kimi-k2-0905' | 'moonshotai/kimi-dev-72b:free' | 'moonshotai/kimi-k2-thinking' | 'moonshotai/kimi-k2-0905:exacto' | 'moonshotai/kimi-k2:free' | 'thudm/glm-z1-32b:free' | 'nousresearch/hermes-4-70b' | 'nousresearch/hermes-4-405b' | 'nousresearch/deephermes-3-llama-3-8b-preview' | 'nvidia/nemotron-nano-9b-v2' | 'x-ai/grok-4' | 'x-ai/grok-code-fast-1' | 'x-ai/grok-3' | 'x-ai/grok-4-fast' | 'x-ai/grok-3-beta' | 'x-ai/grok-3-mini-beta' | 'x-ai/grok-3-mini' | 'x-ai/grok-4.1-fast' | 'kwaipilot/kat-coder-pro:free' | 'cognitivecomputations/dolphin3.0-mistral-24b' | 'cognitivecomputations/dolphin3.0-r1-mistral-24b' | 'deepseek/deepseek-chat-v3.1' | 'deepseek/deepseek-r1:free' | 'deepseek/deepseek-v3-base:free' | 'deepseek/deepseek-v3.1-terminus' | 'deepseek/deepseek-r1-0528-qwen3-8b:free' | 'deepseek/deepseek-chat-v3-0324' | 'deepseek/deepseek-r1-0528:free' | 'deepseek/deepseek-r1-distill-llama-70b' | 'deepseek/deepseek-r1-distill-qwen-14b' | 'deepseek/deepseek-v3.1-terminus:exacto' | 'featherless/qwerky-72b' | 'tngtech/deepseek-r1t2-chimera:free' | 'minimax/minimax-m1' | 'minimax/minimax-m2' | 'minimax/minimax-01' | 'google/gemini-2.0-flash-001' | 'google/gemma-2-9b-it:free' | 'google/gemini-3-pro-preview' | 'google/gemini-2.5-flash' | 'google/gemini-2.5-pro-preview-05-06' | 'google/gemma-3n-e4b-it' | 'google/gemini-2.5-flash-lite' | 'google/gemini-2.5-pro-preview-06-05' | 'google/gemini-2.5-flash-preview-09-2025' | 'google/gemini-2.5-pro' | 'google/gemma-3-12b-it' | 'google/gemma-3n-e4b-it:free' | 'google/gemini-2.5-flash-lite-preview-09-2025' | 'google/gemini-2.0-flash-exp:free' | 'google/gemma-3-27b-it' | 'microsoft/mai-ds-r1:free' | 'openai/gpt-5.1-codex' | 'openai/gpt-4.1-mini' | 'openai/gpt-5-chat' | 'openai/gpt-5.1-codex-mini' | 'openai/gpt-5.1' | 'openai/gpt-5-nano' | 'openai/gpt-5-codex' | 'openai/gpt-4.1' | 'openai/gpt-oss-120b:exacto' | 'openai/o4-mini' | 'openai/gpt-5.1-chat' | 'openai/gpt-5-mini' | 'openai/gpt-5-image' | 'openai/gpt-oss-20b' | 'openai/gpt-oss-120b' | 'openai/gpt-4o-mini' | 'openai/gpt-5' | 'openai/gpt-5-pro' | 'openrouter/sherlock-think-alpha' | 'openrouter/sherlock-dash-alpha' | 'z-ai/glm-4.5' | 'z-ai/glm-4.5-air' | 'z-ai/glm-4.5v' | 'z-ai/glm-4.6' | 'z-ai/glm-4.6:exacto' | 'z-ai/glm-4.5-air:free' | 'qwen/qwen3-coder' | 'qwen/qwen3-32b:free' | 'qwen/qwen3-next-80b-a3b-instruct' | 'qwen/qwen-2.5-coder-32b-instruct' | 'qwen/qwen3-235b-a22b:free' | 'qwen/qwq-32b:free' | 'qwen/qwen3-30b-a3b-thinking-2507' | 'qwen/qwen3-30b-a3b:free' | 'qwen/qwen2.5-vl-72b-instruct' | 'qwen/qwen3-14b:free' | 'qwen/qwen3-30b-a3b-instruct-2507' | 'qwen/qwen3-235b-a22b-thinking-2507' | 'qwen/qwen2.5-vl-32b-instruct:free' | 'qwen/qwen2.5-vl-72b-instruct:free' | 'qwen/qwen3-235b-a22b-07-25:free' | 'qwen/qwen3-coder:free' | 'qwen/qwen3-235b-a22b-07-25' | 'qwen/qwen3-8b:free' | 'qwen/qwen3-max' | 'qwen/qwen3-next-80b-a3b-thinking' | 'qwen/qwen3-coder:exacto' | 'mistralai/devstral-medium-2507' | 'mistralai/codestral-2508' | 'mistralai/mistral-7b-instruct:free' | 'mistralai/devstral-small-2505' | 'mistralai/mistral-small-3.2-24b-instruct' | 'mistralai/devstral-small-2505:free' | 'mistralai/mistral-small-3.2-24b-instruct:free' | 'mistralai/mistral-medium-3' | 'mistralai/mistral-small-3.1-24b-instruct' | 'mistralai/devstral-small-2507' | 'mistralai/mistral-medium-3.1' | 'mistralai/mistral-nemo:free' | 'rekaai/reka-flash-3' | 'meta-llama/llama-3.2-11b-vision-instruct' | 'meta-llama/llama-3.3-70b-instruct:free' | 'meta-llama/llama-4-scout:free' | 'anthropic/claude-opus-4' | 'anthropic/claude-haiku-4.5' | 'anthropic/claude-opus-4.1' | 'anthropic/claude-3.7-sonnet' | 'anthropic/claude-3.5-haiku' | 'anthropic/claude-sonnet-4' | 'anthropic/claude-sonnet-4.5' | 'sarvamai/sarvam-m:free' +export type OpenrouterModels = 'moonshotai/kimi-k2' | 'moonshotai/kimi-k2-0905' | 'moonshotai/kimi-dev-72b:free' | 'moonshotai/kimi-k2-thinking' | 'moonshotai/kimi-k2-0905:exacto' | 'moonshotai/kimi-k2:free' | 'thudm/glm-z1-32b:free' | 'nousresearch/hermes-4-70b' | 'nousresearch/hermes-4-405b' | 'nousresearch/deephermes-3-llama-3-8b-preview' | 'nvidia/nemotron-nano-9b-v2' | 'x-ai/grok-4' | 'x-ai/grok-code-fast-1' | 'x-ai/grok-3' | 'x-ai/grok-4-fast' | 'x-ai/grok-3-beta' | 'x-ai/grok-3-mini-beta' | 'x-ai/grok-3-mini' | 'x-ai/grok-4.1-fast' | 'kwaipilot/kat-coder-pro:free' | 'cognitivecomputations/dolphin3.0-mistral-24b' | 'cognitivecomputations/dolphin3.0-r1-mistral-24b' | 'deepseek/deepseek-chat-v3.1' | 'deepseek/deepseek-r1:free' | 'deepseek/deepseek-v3-base:free' | 'deepseek/deepseek-v3.1-terminus' | 'deepseek/deepseek-r1-0528-qwen3-8b:free' | 'deepseek/deepseek-chat-v3-0324' | 'deepseek/deepseek-r1-0528:free' | 'deepseek/deepseek-r1-distill-llama-70b' | 'deepseek/deepseek-r1-distill-qwen-14b' | 'deepseek/deepseek-v3.1-terminus:exacto' | 'featherless/qwerky-72b' | 'tngtech/deepseek-r1t2-chimera:free' | 'minimax/minimax-m1' | 'minimax/minimax-m2' | 'minimax/minimax-01' | 'google/gemini-2.0-flash-001' | 'google/gemma-2-9b-it:free' | 'google/gemini-3-pro-preview' | 'google/gemini-2.5-flash' | 'google/gemini-2.5-pro-preview-05-06' | 'google/gemma-3n-e4b-it' | 'google/gemini-2.5-flash-lite' | 'google/gemini-2.5-pro-preview-06-05' | 'google/gemini-2.5-flash-preview-09-2025' | 'google/gemini-2.5-pro' | 'google/gemma-3-12b-it' | 'google/gemma-3n-e4b-it:free' | 'google/gemini-2.5-flash-lite-preview-09-2025' | 'google/gemini-2.0-flash-exp:free' | 'google/gemma-3-27b-it' | 'microsoft/mai-ds-r1:free' | 'openai/gpt-oss-safeguard-20b' | 'openai/gpt-5.1-codex' | 'openai/gpt-4.1-mini' | 'openai/gpt-5-chat' | 'openai/gpt-5.1-codex-mini' | 'openai/gpt-5.1' | 'openai/gpt-5-nano' | 'openai/gpt-5-codex' | 'openai/gpt-4.1' | 'openai/gpt-oss-120b:exacto' | 'openai/o4-mini' | 'openai/gpt-5.1-chat' | 'openai/gpt-5-mini' | 'openai/gpt-5-image' | 'openai/gpt-oss-20b' | 'openai/gpt-oss-120b' | 'openai/gpt-4o-mini' | 'openai/gpt-5' | 'openai/gpt-5-pro' | 'z-ai/glm-4.5' | 'z-ai/glm-4.5-air' | 'z-ai/glm-4.5v' | 'z-ai/glm-4.6' | 'z-ai/glm-4.6:exacto' | 'z-ai/glm-4.5-air:free' | 'qwen/qwen3-coder' | 'qwen/qwen3-32b:free' | 'qwen/qwen3-next-80b-a3b-instruct' | 'qwen/qwen-2.5-coder-32b-instruct' | 'qwen/qwen3-235b-a22b:free' | 'qwen/qwen3-coder-flash' | 'qwen/qwq-32b:free' | 'qwen/qwen3-30b-a3b-thinking-2507' | 'qwen/qwen3-30b-a3b:free' | 'qwen/qwen2.5-vl-72b-instruct' | 'qwen/qwen3-14b:free' | 'qwen/qwen3-30b-a3b-instruct-2507' | 'qwen/qwen3-235b-a22b-thinking-2507' | 'qwen/qwen2.5-vl-32b-instruct:free' | 'qwen/qwen2.5-vl-72b-instruct:free' | 'qwen/qwen3-235b-a22b-07-25:free' | 'qwen/qwen3-coder:free' | 'qwen/qwen3-235b-a22b-07-25' | 'qwen/qwen3-8b:free' | 'qwen/qwen3-max' | 'qwen/qwen3-next-80b-a3b-thinking' | 'qwen/qwen3-coder:exacto' | 'mistralai/devstral-medium-2507' | 'mistralai/codestral-2508' | 'mistralai/mistral-7b-instruct:free' | 'mistralai/devstral-small-2505' | 'mistralai/mistral-small-3.2-24b-instruct' | 'mistralai/devstral-small-2505:free' | 'mistralai/mistral-small-3.2-24b-instruct:free' | 'mistralai/mistral-medium-3' | 'mistralai/mistral-small-3.1-24b-instruct' | 'mistralai/devstral-small-2507' | 'mistralai/mistral-medium-3.1' | 'mistralai/mistral-nemo:free' | 'rekaai/reka-flash-3' | 'meta-llama/llama-3.2-11b-vision-instruct' | 'meta-llama/llama-3.3-70b-instruct:free' | 'meta-llama/llama-4-scout:free' | 'anthropic/claude-opus-4' | 'anthropic/claude-haiku-4.5' | 'anthropic/claude-opus-4.1' | 'anthropic/claude-3.7-sonnet' | 'anthropic/claude-3.5-haiku' | 'anthropic/claude-sonnet-4' | 'anthropic/claude-opus-4.5' | 'anthropic/claude-sonnet-4.5' | 'sarvamai/sarvam-m:free' export type TogetheraiModels = 'moonshotai/Kimi-K2-Instruct' | 'openai/gpt-oss-120b' | 'meta-llama/Llama-3.3-70B-Instruct-Turbo' | 'Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8' | 'deepseek-ai/DeepSeek-R1' | 'deepseek-ai/DeepSeek-V3' -export type AzureModels = 'gpt-4.1-nano' | 'gpt-4' | 'claude-opus-4-1' | 'gpt-4-32k' | 'gpt-5.1-codex' | 'claude-haiku-4-5' | 'gpt-4.1-mini' | 'gpt-5-chat' | 'claude-sonnet-4-5' | 'gpt-3.5-turbo-0125' | 'gpt-4-turbo' | 'gpt-3.5-turbo-0613' | 'o1-preview' | 'gpt-5.1-codex-mini' | 'o3-mini' | 'gpt-5.1' | 'gpt-5-nano' | 'gpt-5-codex' | 'gpt-4o' | 'gpt-3.5-turbo-0301' | 'gpt-4.1' | 'o4-mini' | 'o1' | 'gpt-5.1-chat' | 'gpt-5-mini' | 'o1-mini' | 'gpt-3.5-turbo-instruct' | 'o3' | 'codex-mini' | 'gpt-4-turbo-vision' | 'gpt-4o-mini' | 'gpt-5' | 'gpt-3.5-turbo-1106' +export type AzureModels = 'gpt-4.1-nano' | 'gpt-4' | 'claude-opus-4-1' | 'gpt-4-32k' | 'gpt-5.1-codex' | 'claude-haiku-4-5' | 'claude-opus-4-5' | 'gpt-4.1-mini' | 'gpt-5-chat' | 'claude-sonnet-4-5' | 'gpt-3.5-turbo-0125' | 'gpt-4-turbo' | 'gpt-3.5-turbo-0613' | 'o1-preview' | 'gpt-5.1-codex-mini' | 'o3-mini' | 'gpt-5.1' | 'gpt-5-nano' | 'gpt-5-codex' | 'gpt-4o' | 'gpt-3.5-turbo-0301' | 'gpt-4.1' | 'o4-mini' | 'o1' | 'gpt-5.1-chat' | 'gpt-5-mini' | 'o1-mini' | 'gpt-3.5-turbo-instruct' | 'o3' | 'codex-mini' | 'gpt-4-turbo-vision' | 'gpt-4o-mini' | 'gpt-5' | 'gpt-3.5-turbo-1106' export type CloudflareWorkersAiModels = 'mistral-7b-instruct-v0.1-awq' | 'aura-1' | 'mistral-7b-instruct-v0.2' | 'tinyllama-1.1b-chat-v1.0' | 'qwen1.5-0.5b-chat' | 'llama-3.2-11b-vision-instruct' | 'llama-2-13b-chat-awq' | 'llama-3.1-8b-instruct-fp8' | 'whisper' | 'stable-diffusion-xl-base-1.0' | 'llama-2-7b-chat-fp16' | 'resnet-50' | 'stable-diffusion-v1-5-inpainting' | 'sqlcoder-7b-2' | 'llama-3-8b-instruct' | 'llama-2-7b-chat-hf-lora' | 'llama-3.1-8b-instruct' | 'openchat-3.5-0106' | 'openhermes-2.5-mistral-7b-awq' | 'lucid-origin' | 'bart-large-cnn' | 'flux-1-schnell' | 'deepseek-r1-distill-qwen-32b' | 'gemma-2b-it-lora' | 'una-cybertron-7b-v2-bf16' | 'm2m100-1.2b' | 'llama-3.2-3b-instruct' | 'qwen2.5-coder-32b-instruct' | 'stable-diffusion-v1-5-img2img' | 'gemma-7b-it-lora' | 'qwen1.5-14b-chat-awq' | 'qwen1.5-1.8b-chat' | 'mistral-small-3.1-24b-instruct' | 'gemma-7b-it' | 'llamaguard-7b-awq' | 'hermes-2-pro-mistral-7b' | 'falcon-7b-instruct' | 'llama-3.3-70b-instruct-fp8-fast' | 'llama-3-8b-instruct-awq' | 'phoenix-1.0' | 'phi-2' | 'dreamshaper-8-lcm' | 'discolm-german-7b-v1-awq' | 'llama-2-7b-chat-int8' | 'llama-3.2-1b-instruct' | 'whisper-large-v3-turbo' | 'llama-4-scout-17b-16e-instruct' | 'starling-lm-7b-beta' | 'deepseek-coder-6.7b-base-awq' | 'gemma-3-12b-it' | 'llama-guard-3-8b' | 'neural-chat-7b-v3-1-awq' | 'whisper-tiny-en' | 'stable-diffusion-xl-lightning' | 'mistral-7b-instruct-v0.1' | 'llava-1.5-7b-hf' | 'gpt-oss-20b' | 'deepseek-math-7b-instruct' | 'gpt-oss-120b' | 'melotts' | 'qwen1.5-7b-chat-awq' | 'llama-3.1-8b-instruct-fast' | 'nova-3' | 'llama-3.1-70b-instruct' | 'qwq-32b' | 'zephyr-7b-beta-awq' | 'deepseek-coder-6.7b-instruct-awq' | 'llama-3.1-8b-instruct-awq' | 'mistral-7b-instruct-v0.2-lora' | 'uform-gen2-qwen-500m' -export type AnthropicModels = 'claude-opus-4-0' | 'claude-3-5-sonnet-20241022' | 'claude-opus-4-1' | 'claude-haiku-4-5' | 'claude-3-5-sonnet-20240620' | 'claude-3-5-haiku-latest' | 'claude-3-opus-20240229' | 'claude-sonnet-4-5' | 'claude-sonnet-4-5-20250929' | 'claude-sonnet-4-20250514' | 'claude-opus-4-20250514' | 'claude-3-5-haiku-20241022' | 'claude-3-haiku-20240307' | 'claude-3-7-sonnet-20250219' | 'claude-3-7-sonnet-latest' | 'claude-sonnet-4-0' | 'claude-opus-4-1-20250805' | 'claude-3-sonnet-20240229' | 'claude-haiku-4-5-20251001' +export type AnthropicModels = 'claude-opus-4-0' | 'claude-3-5-sonnet-20241022' | 'claude-opus-4-1' | 'claude-haiku-4-5' | 'claude-3-5-sonnet-20240620' | 'claude-3-5-haiku-latest' | 'claude-opus-4-5' | 'claude-3-opus-20240229' | 'claude-opus-4-5-20251101' | 'claude-sonnet-4-5' | 'claude-sonnet-4-5-20250929' | 'claude-sonnet-4-20250514' | 'claude-opus-4-20250514' | 'claude-3-5-haiku-20241022' | 'claude-3-haiku-20240307' | 'claude-3-7-sonnet-20250219' | 'claude-3-7-sonnet-latest' | 'claude-sonnet-4-0' | 'claude-opus-4-1-20250805' | 'claude-3-sonnet-20240229' | 'claude-haiku-4-5-20251001' diff --git a/packages-ext/providers/src/manual/index.ts b/packages-ext/providers/src/manual/index.ts index 70ea5ba..dac376c 100644 --- a/packages-ext/providers/src/manual/index.ts +++ b/packages-ext/providers/src/manual/index.ts @@ -1,5 +1,6 @@ import process from 'node:process' +import { siliconflow } from '../generated' import { createAnthropic, createFeatherless, createOpenRouter, createTogetherAI } from './create' /** @@ -37,3 +38,6 @@ export const openrouter = createOpenRouter(process.env.OPENROUTER_API_KEY ?? '') * - apiKey - `TOGETHER_API_KEY` */ export const togetherai = createTogetherAI(process.env.TOGETHER_API_KEY ?? '') + +/** @deprecated use `siliconflow` instead. */ +export const siliconFlow = siliconflow