diff --git a/providers/chuizi/logo.svg b/providers/chuizi/logo.svg new file mode 100644 index 000000000..c76103c88 --- /dev/null +++ b/providers/chuizi/logo.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/providers/chuizi/models/anthropic/claude-haiku-4-5.toml b/providers/chuizi/models/anthropic/claude-haiku-4-5.toml new file mode 100644 index 000000000..35c2febe2 --- /dev/null +++ b/providers/chuizi/models/anthropic/claude-haiku-4-5.toml @@ -0,0 +1,24 @@ +name = "Claude Haiku 4.5" +family = "claude" +release_date = "2025-10-15" +last_updated = "2025-10-15" +attachment = true +reasoning = false +temperature = true +tool_call = true +structured_output = true +open_weights = false + +[cost] +input = 1.05 +output = 5.25 +cache_read = 0.105 +cache_write = 1.3125 + +[limit] +context = 200_000 +output = 32_000 + +[modalities] +input = ["text", "image"] +output = ["text"] diff --git a/providers/chuizi/models/anthropic/claude-opus-4-6.toml b/providers/chuizi/models/anthropic/claude-opus-4-6.toml new file mode 100644 index 000000000..1c79c3815 --- /dev/null +++ b/providers/chuizi/models/anthropic/claude-opus-4-6.toml @@ -0,0 +1,27 @@ +name = "Claude Opus 4.6" +family = "claude" +release_date = "2026-02-15" +last_updated = "2026-02-15" +attachment = true +reasoning = true +temperature = true +tool_call = true +structured_output = true +open_weights = false + +[cost] +input = 15.75 +output = 78.75 +cache_read = 1.575 +cache_write = 19.6875 + +[limit] +context = 200_000 +output = 32_000 + +[modalities] +input = ["text", "image"] +output = ["text"] + +[interleaved] +field = "reasoning_content" diff --git a/providers/chuizi/models/anthropic/claude-sonnet-4-5.toml b/providers/chuizi/models/anthropic/claude-sonnet-4-5.toml new file mode 100644 index 000000000..815bf84bc --- /dev/null +++ b/providers/chuizi/models/anthropic/claude-sonnet-4-5.toml @@ -0,0 +1,24 @@ +name = "Claude Sonnet 4.5" +family = "claude" +release_date = "2025-09-29" +last_updated = "2025-09-29" +attachment = true +reasoning = true +temperature = true +tool_call = true +structured_output = true +open_weights = false + +[cost] +input = 3.15 +output = 15.75 +cache_read = 0.315 +cache_write = 3.9375 + +[limit] +context = 200_000 +output = 64_000 + +[modalities] +input = ["text", "image"] +output = ["text"] diff --git a/providers/chuizi/models/anthropic/claude-sonnet-4-6.toml b/providers/chuizi/models/anthropic/claude-sonnet-4-6.toml new file mode 100644 index 000000000..ab3bc7a19 --- /dev/null +++ b/providers/chuizi/models/anthropic/claude-sonnet-4-6.toml @@ -0,0 +1,24 @@ +name = "Claude Sonnet 4.6" +family = "claude" +release_date = "2026-02-15" +last_updated = "2026-02-15" +attachment = true +reasoning = true +temperature = true +tool_call = true +structured_output = true +open_weights = false + +[cost] +input = 3.15 +output = 15.75 +cache_read = 0.315 +cache_write = 3.9375 + +[limit] +context = 200_000 +output = 64_000 + +[modalities] +input = ["text", "image"] +output = ["text"] diff --git a/providers/chuizi/models/deepseek/deepseek-chat.toml b/providers/chuizi/models/deepseek/deepseek-chat.toml new file mode 100644 index 000000000..5207d75f8 --- /dev/null +++ b/providers/chuizi/models/deepseek/deepseek-chat.toml @@ -0,0 +1,23 @@ +name = "DeepSeek V3.2" +family = "deepseek" +release_date = "2025-12-01" +last_updated = "2026-02-28" +attachment = false +reasoning = false +temperature = true +tool_call = true +structured_output = true +open_weights = true + +[cost] +input = 0.294 +output = 1.176 +cache_read = 0.029 + +[limit] +context = 131_072 +output = 8_192 + +[modalities] +input = ["text"] +output = ["text"] diff --git a/providers/chuizi/models/deepseek/deepseek-r1.toml b/providers/chuizi/models/deepseek/deepseek-r1.toml new file mode 100644 index 000000000..3a2a99bae --- /dev/null +++ b/providers/chuizi/models/deepseek/deepseek-r1.toml @@ -0,0 +1,26 @@ +name = "DeepSeek R1" +family = "deepseek" +release_date = "2025-01-20" +last_updated = "2025-05-28" +attachment = false +reasoning = true +temperature = true +tool_call = false +structured_output = false +open_weights = true + +[cost] +input = 0.588 +output = 2.352 +cache_read = 0.029 + +[limit] +context = 131_072 +output = 65_536 + +[modalities] +input = ["text"] +output = ["text"] + +[interleaved] +field = "reasoning_content" diff --git a/providers/chuizi/models/google/gemini-2.5-flash.toml b/providers/chuizi/models/google/gemini-2.5-flash.toml new file mode 100644 index 000000000..4d7800e20 --- /dev/null +++ b/providers/chuizi/models/google/gemini-2.5-flash.toml @@ -0,0 +1,23 @@ +name = "Gemini 2.5 Flash" +family = "gemini" +release_date = "2025-06-17" +last_updated = "2025-06-17" +attachment = true +reasoning = true +temperature = true +tool_call = true +structured_output = true +open_weights = false + +[cost] +input = 0.315 +output = 2.625 +cache_read = 0.0788 + +[limit] +context = 1_048_576 +output = 65_536 + +[modalities] +input = ["text", "image", "audio", "video"] +output = ["text"] diff --git a/providers/chuizi/models/google/gemini-2.5-pro.toml b/providers/chuizi/models/google/gemini-2.5-pro.toml new file mode 100644 index 000000000..c1f789ebd --- /dev/null +++ b/providers/chuizi/models/google/gemini-2.5-pro.toml @@ -0,0 +1,26 @@ +name = "Gemini 2.5 Pro" +family = "gemini" +release_date = "2025-06-17" +last_updated = "2025-06-17" +attachment = true +reasoning = true +temperature = true +tool_call = true +structured_output = true +open_weights = false + +[cost] +input = 1.3125 +output = 10.5 +cache_read = 0.328 + +[limit] +context = 2_097_152 +output = 65_536 + +[modalities] +input = ["text", "image", "audio", "video"] +output = ["text"] + +[interleaved] +field = "reasoning_content" diff --git a/providers/chuizi/models/meta/llama-4-maverick.toml b/providers/chuizi/models/meta/llama-4-maverick.toml new file mode 100644 index 000000000..d6f85c7aa --- /dev/null +++ b/providers/chuizi/models/meta/llama-4-maverick.toml @@ -0,0 +1,22 @@ +name = "Llama 4 Maverick" +family = "llama" +release_date = "2025-04-05" +last_updated = "2025-04-05" +attachment = true +reasoning = false +temperature = true +tool_call = true +structured_output = false +open_weights = true + +[cost] +input = 0.1995 +output = 0.7875 + +[limit] +context = 1_048_576 +output = 8_192 + +[modalities] +input = ["text", "image"] +output = ["text"] diff --git a/providers/chuizi/models/moonshot/kimi-k2.5.toml b/providers/chuizi/models/moonshot/kimi-k2.5.toml new file mode 100644 index 000000000..f87d88491 --- /dev/null +++ b/providers/chuizi/models/moonshot/kimi-k2.5.toml @@ -0,0 +1,25 @@ +name = "Kimi K2.5" +family = "kimi" +release_date = "2025-11-01" +last_updated = "2025-11-01" +attachment = false +reasoning = true +temperature = true +tool_call = true +structured_output = true +open_weights = true + +[cost] +input = 2.52 +output = 12.6 + +[limit] +context = 200_000 +output = 65_536 + +[modalities] +input = ["text"] +output = ["text"] + +[interleaved] +field = "reasoning_content" diff --git a/providers/chuizi/models/openai/gpt-4.1-mini.toml b/providers/chuizi/models/openai/gpt-4.1-mini.toml new file mode 100644 index 000000000..cfc9a1dde --- /dev/null +++ b/providers/chuizi/models/openai/gpt-4.1-mini.toml @@ -0,0 +1,23 @@ +name = "GPT-4.1 mini" +family = "gpt" +release_date = "2025-04-14" +last_updated = "2025-04-14" +attachment = true +reasoning = false +temperature = true +tool_call = true +structured_output = true +open_weights = false + +[cost] +input = 0.42 +output = 1.68 +cache_read = 0.105 + +[limit] +context = 200_000 +output = 32_768 + +[modalities] +input = ["text", "image"] +output = ["text"] diff --git a/providers/chuizi/models/openai/gpt-4.1.toml b/providers/chuizi/models/openai/gpt-4.1.toml new file mode 100644 index 000000000..77bbf6fe3 --- /dev/null +++ b/providers/chuizi/models/openai/gpt-4.1.toml @@ -0,0 +1,23 @@ +name = "GPT-4.1" +family = "gpt" +release_date = "2025-04-14" +last_updated = "2025-04-14" +attachment = true +reasoning = false +temperature = true +tool_call = true +structured_output = true +open_weights = false + +[cost] +input = 2.1 +output = 8.4 +cache_read = 0.525 + +[limit] +context = 200_000 +output = 32_768 + +[modalities] +input = ["text", "image"] +output = ["text"] diff --git a/providers/chuizi/models/openai/gpt-5-mini.toml b/providers/chuizi/models/openai/gpt-5-mini.toml new file mode 100644 index 000000000..0d9f01bce --- /dev/null +++ b/providers/chuizi/models/openai/gpt-5-mini.toml @@ -0,0 +1,26 @@ +name = "GPT-5 mini" +family = "gpt" +release_date = "2025-09-01" +last_updated = "2025-09-01" +attachment = true +reasoning = true +temperature = true +tool_call = true +structured_output = true +open_weights = false + +[cost] +input = 0.2625 +output = 2.1 +cache_read = 0.02625 + +[limit] +context = 400_000 +output = 128_000 + +[modalities] +input = ["text", "image"] +output = ["text"] + +[interleaved] +field = "reasoning_content" diff --git a/providers/chuizi/models/openai/gpt-5.1.toml b/providers/chuizi/models/openai/gpt-5.1.toml new file mode 100644 index 000000000..3474a837e --- /dev/null +++ b/providers/chuizi/models/openai/gpt-5.1.toml @@ -0,0 +1,26 @@ +name = "GPT-5.1" +family = "gpt" +release_date = "2025-11-20" +last_updated = "2025-11-20" +attachment = true +reasoning = true +temperature = true +tool_call = true +structured_output = true +open_weights = false + +[cost] +input = 1.3125 +output = 10.5 +cache_read = 0.13125 + +[limit] +context = 400_000 +output = 128_000 + +[modalities] +input = ["text", "image"] +output = ["text"] + +[interleaved] +field = "reasoning_content" diff --git a/providers/chuizi/models/openai/gpt-5.toml b/providers/chuizi/models/openai/gpt-5.toml new file mode 100644 index 000000000..90efa90c6 --- /dev/null +++ b/providers/chuizi/models/openai/gpt-5.toml @@ -0,0 +1,26 @@ +name = "GPT-5" +family = "gpt" +release_date = "2025-09-01" +last_updated = "2025-09-01" +attachment = true +reasoning = true +temperature = true +tool_call = true +structured_output = true +open_weights = false + +[cost] +input = 1.3125 +output = 10.5 +cache_read = 0.13125 + +[limit] +context = 400_000 +output = 128_000 + +[modalities] +input = ["text", "image"] +output = ["text"] + +[interleaved] +field = "reasoning_content" diff --git a/providers/chuizi/models/openai/o4-mini.toml b/providers/chuizi/models/openai/o4-mini.toml new file mode 100644 index 000000000..19d889889 --- /dev/null +++ b/providers/chuizi/models/openai/o4-mini.toml @@ -0,0 +1,26 @@ +name = "o4-mini" +family = "gpt" +release_date = "2025-04-16" +last_updated = "2025-04-16" +attachment = true +reasoning = true +temperature = true +tool_call = true +structured_output = true +open_weights = false + +[cost] +input = 1.155 +output = 4.62 +cache_read = 0.2888 + +[limit] +context = 200_000 +output = 100_000 + +[modalities] +input = ["text", "image"] +output = ["text"] + +[interleaved] +field = "reasoning_content" diff --git a/providers/chuizi/models/qwen/qwen3-coder.toml b/providers/chuizi/models/qwen/qwen3-coder.toml new file mode 100644 index 000000000..f4b3c268c --- /dev/null +++ b/providers/chuizi/models/qwen/qwen3-coder.toml @@ -0,0 +1,22 @@ +name = "Qwen3 Coder" +family = "qwen" +release_date = "2025-07-22" +last_updated = "2025-07-22" +attachment = false +reasoning = false +temperature = true +tool_call = true +structured_output = true +open_weights = true + +[cost] +input = 2.1 +output = 8.4 + +[limit] +context = 262_144 +output = 65_536 + +[modalities] +input = ["text"] +output = ["text"] diff --git a/providers/chuizi/models/qwen/qwen3-max.toml b/providers/chuizi/models/qwen/qwen3-max.toml new file mode 100644 index 000000000..a9382168c --- /dev/null +++ b/providers/chuizi/models/qwen/qwen3-max.toml @@ -0,0 +1,22 @@ +name = "Qwen3 Max" +family = "qwen" +release_date = "2025-09-05" +last_updated = "2025-09-05" +attachment = true +reasoning = true +temperature = true +tool_call = true +structured_output = true +open_weights = false + +[cost] +input = 2.52 +output = 10.08 + +[limit] +context = 1_048_576 +output = 8_192 + +[modalities] +input = ["text", "image"] +output = ["text"] diff --git a/providers/chuizi/models/xai/grok-3.toml b/providers/chuizi/models/xai/grok-3.toml new file mode 100644 index 000000000..1604ca997 --- /dev/null +++ b/providers/chuizi/models/xai/grok-3.toml @@ -0,0 +1,22 @@ +name = "Grok 3" +family = "grok" +release_date = "2025-02-17" +last_updated = "2025-02-17" +attachment = true +reasoning = false +temperature = true +tool_call = true +structured_output = true +open_weights = false + +[cost] +input = 3.15 +output = 15.75 + +[limit] +context = 131_072 +output = 16_384 + +[modalities] +input = ["text", "image"] +output = ["text"] diff --git a/providers/chuizi/models/xai/grok-4.toml b/providers/chuizi/models/xai/grok-4.toml new file mode 100644 index 000000000..5bdcc5f18 --- /dev/null +++ b/providers/chuizi/models/xai/grok-4.toml @@ -0,0 +1,26 @@ +name = "Grok 4" +family = "grok" +release_date = "2025-07-10" +last_updated = "2025-07-10" +attachment = true +reasoning = true +temperature = true +tool_call = true +structured_output = true +open_weights = false + +[cost] +input = 3.15 +output = 15.75 +cache_read = 0.7875 + +[limit] +context = 256_000 +output = 32_768 + +[modalities] +input = ["text", "image"] +output = ["text"] + +[interleaved] +field = "reasoning_content" diff --git a/providers/chuizi/models/zhipu/glm-4.6.toml b/providers/chuizi/models/zhipu/glm-4.6.toml new file mode 100644 index 000000000..108abdcc8 --- /dev/null +++ b/providers/chuizi/models/zhipu/glm-4.6.toml @@ -0,0 +1,22 @@ +name = "GLM-4.6" +family = "glm" +release_date = "2025-10-01" +last_updated = "2025-10-01" +attachment = false +reasoning = true +temperature = true +tool_call = true +structured_output = true +open_weights = true + +[cost] +input = 0.525 +output = 2.1 + +[limit] +context = 128_000 +output = 32_768 + +[modalities] +input = ["text"] +output = ["text"] diff --git a/providers/chuizi/provider.toml b/providers/chuizi/provider.toml new file mode 100644 index 000000000..f58edc91a --- /dev/null +++ b/providers/chuizi/provider.toml @@ -0,0 +1,5 @@ +name = "Chuizi.AI" +env = ["CHUIZI_API_KEY"] +npm = "@ai-sdk/openai-compatible" +api = "https://api.chuizi.ai/v1" +doc = "https://chuizi.ai/docs"