diff --git a/providers/neuralwatt/README.md b/providers/neuralwatt/README.md index f4b00c063..e3e2397c5 100644 --- a/providers/neuralwatt/README.md +++ b/providers/neuralwatt/README.md @@ -12,22 +12,33 @@ Model Categories Reasoning Models (with interleaved thinking): - glm-5.2 — GLM 5.2, reasoning enabled -- zai-org/GLM-5.1-FP8 — GLM 5.1 FP8, reasoning enabled +- glm-5.2-short — GLM 5.2 Short, reasoning enabled - moonshotai/Kimi-K2.5 — Kimi K2.5, reasoning + image input - moonshotai/Kimi-K2.6 — Kimi K2.6, reasoning + image input +- moonshotai/Kimi-K2.7-Code — Kimi K2.7 Code, reasoning + image input - Qwen/Qwen3.5-397B-A17B-FP8 — Qwen3.5 397B, reasoning enabled - Qwen/Qwen3.6-35B-A3B — Qwen3.6 35B A3B, reasoning enabled Fast Variants (optimized for speed, non-reasoning): -- glm-5-fast — GLM 5 Fast -- glm-5.1-fast — GLM 5.1 Fast +- glm-5.2-fast — GLM 5.2 Fast +- glm-5.2-short-fast — GLM 5.2 Short Fast - kimi-k2.5-fast — Kimi K2.5 Fast, image input - kimi-k2.6-fast — Kimi K2.6 Fast, image input - qwen3.5-397b-fast — Qwen3.5 397B Fast - qwen3.6-35b-fast — Qwen3.6 35B Fast +Flex Variants (streaming required, discounted): +- glm-5.2-flex — GLM 5.2 Flex, reasoning enabled +- glm-5.2-short-flex — GLM 5.2 Short Flex, reasoning enabled +- glm-5.2-short-fast-flex — GLM 5.2 Short Fast Flex +- kimi-k2.6-flex — Kimi K2.6 Flex, reasoning + image input +- kimi-k2.7-code-flex — Kimi K2.7 Code Flex, reasoning + image input + Notes -- Model IDs, pricing, and limits sourced directly from the Neuralwatt API +- Standard model IDs, pricing, and limits are sourced directly from the Neuralwatt API; flex pricing applies the official 0.5 docs multiplier to the corresponding standard rates +- Cache reads are billed at 25% of the input token price; there is no separate cache-write charge - Neuralwatt provides real-time energy consumption data (Joules/kWh) per request - "Fast" variants are optimized for lower latency without reasoning +- Flex requires streaming; non-streaming requests fall back to the standard tier +- Official Neuralwatt docs currently describe Flex as a 50% token-pricing discount, including cached-input billing - Vision models support image input via OpenAI-compatible API diff --git a/providers/neuralwatt/models/Qwen/Qwen3.5-397B-A17B-FP8.toml b/providers/neuralwatt/models/Qwen/Qwen3.5-397B-A17B-FP8.toml index bd1e1bcb0..6231221a1 100644 --- a/providers/neuralwatt/models/Qwen/Qwen3.5-397B-A17B-FP8.toml +++ b/providers/neuralwatt/models/Qwen/Qwen3.5-397B-A17B-FP8.toml @@ -12,6 +12,7 @@ open_weights = true [cost] input = 0.69 output = 4.14 +cache_read = 0.1725 [limit] context = 262_128 @@ -22,4 +23,4 @@ input = ["text"] output = ["text"] [interleaved] -field = "reasoning_content" +field = "reasoning_content" \ No newline at end of file diff --git a/providers/neuralwatt/models/Qwen/Qwen3.6-35B-A3B.toml b/providers/neuralwatt/models/Qwen/Qwen3.6-35B-A3B.toml index a28e141c1..74ee5e67b 100644 --- a/providers/neuralwatt/models/Qwen/Qwen3.6-35B-A3B.toml +++ b/providers/neuralwatt/models/Qwen/Qwen3.6-35B-A3B.toml @@ -12,6 +12,7 @@ open_weights = true [cost] input = 0.29 output = 1.15 +cache_read = 0.0725 [limit] context = 131_056 @@ -22,4 +23,4 @@ input = ["text", "image"] output = ["text"] [interleaved] -field = "reasoning_content" +field = "reasoning_content" \ No newline at end of file diff --git a/providers/neuralwatt/models/glm-5.1-fast.toml b/providers/neuralwatt/models/glm-5.1-fast.toml deleted file mode 100644 index 797b4d388..000000000 --- a/providers/neuralwatt/models/glm-5.1-fast.toml +++ /dev/null @@ -1,21 +0,0 @@ -name = "GLM 5.1 Fast" -family = "glm" -release_date = "2026-04-07" -last_updated = "2026-04-07" -attachment = false -reasoning = false -temperature = true -tool_call = true -open_weights = true - -[cost] -input = 1.1 -output = 3.6 - -[limit] -context = 202_736 -output = 202_736 - -[modalities] -input = ["text"] -output = ["text"] diff --git a/providers/neuralwatt/models/glm-5.2-fast.toml b/providers/neuralwatt/models/glm-5.2-fast.toml new file mode 100644 index 000000000..0df6ffce3 --- /dev/null +++ b/providers/neuralwatt/models/glm-5.2-fast.toml @@ -0,0 +1,22 @@ +name = "GLM 5.2 Fast" +family = "glm" +release_date = "2026-06-17" +last_updated = "2026-06-17" +attachment = false +reasoning = false +temperature = true +tool_call = true +open_weights = true + +[cost] +input = 1.45 +output = 4.5 +cache_read = 0.3625 + +[limit] +context = 1_048_560 +output = 1_048_560 + +[modalities] +input = ["text"] +output = ["text"] \ No newline at end of file diff --git a/providers/neuralwatt/models/glm-5.2-flex.toml b/providers/neuralwatt/models/glm-5.2-flex.toml new file mode 100644 index 000000000..585304de9 --- /dev/null +++ b/providers/neuralwatt/models/glm-5.2-flex.toml @@ -0,0 +1,27 @@ +name = "GLM 5.2 Flex" +family = "glm" +release_date = "2026-06-17" +last_updated = "2026-06-17" +attachment = false +reasoning = true +reasoning_options = [ + { type = "toggle" }, + { type = "effort", values = ["none", "minimal", "low", "medium", "high", "xhigh", "max"] }, + { type = "budget_tokens" }, +] +temperature = true +tool_call = true +open_weights = true + +[cost] +input = 0.725 +output = 2.25 +cache_read = 0.18125 + +[limit] +context = 1_048_560 +output = 1_048_560 + +[modalities] +input = ["text"] +output = ["text"] diff --git a/providers/neuralwatt/models/glm-5-fast.toml b/providers/neuralwatt/models/glm-5.2-short-fast-flex.toml similarity index 50% rename from providers/neuralwatt/models/glm-5-fast.toml rename to providers/neuralwatt/models/glm-5.2-short-fast-flex.toml index 9affa7989..1af1a6507 100644 --- a/providers/neuralwatt/models/glm-5-fast.toml +++ b/providers/neuralwatt/models/glm-5.2-short-fast-flex.toml @@ -1,7 +1,7 @@ -name = "GLM 5 Fast" +name = "GLM 5.2 Short Fast Flex" family = "glm" -release_date = "2026-04-07" -last_updated = "2026-04-07" +release_date = "2026-06-17" +last_updated = "2026-06-17" attachment = false reasoning = false temperature = true @@ -9,12 +9,13 @@ tool_call = true open_weights = true [cost] -input = 1.1 -output = 3.6 +input = 0.725 +output = 2.25 +cache_read = 0.18125 [limit] -context = 202_736 -output = 202_736 +context = 199_984 +output = 199_984 [modalities] input = ["text"] diff --git a/providers/neuralwatt/models/glm-5.2-short-fast.toml b/providers/neuralwatt/models/glm-5.2-short-fast.toml new file mode 100644 index 000000000..186d8b9dc --- /dev/null +++ b/providers/neuralwatt/models/glm-5.2-short-fast.toml @@ -0,0 +1,22 @@ +name = "GLM 5.2 Short Fast" +family = "glm" +release_date = "2026-06-17" +last_updated = "2026-06-17" +attachment = false +reasoning = false +temperature = true +tool_call = true +open_weights = true + +[cost] +input = 1.45 +output = 4.5 +cache_read = 0.3625 + +[limit] +context = 199_984 +output = 199_984 + +[modalities] +input = ["text"] +output = ["text"] \ No newline at end of file diff --git a/providers/neuralwatt/models/glm-5.2-short-flex.toml b/providers/neuralwatt/models/glm-5.2-short-flex.toml new file mode 100644 index 000000000..ff1086ad7 --- /dev/null +++ b/providers/neuralwatt/models/glm-5.2-short-flex.toml @@ -0,0 +1,27 @@ +name = "GLM 5.2 Short Flex" +family = "glm" +release_date = "2026-06-17" +last_updated = "2026-06-17" +attachment = false +reasoning = true +reasoning_options = [ + { type = "toggle" }, + { type = "effort", values = ["none", "minimal", "low", "medium", "high", "xhigh", "max"] }, + { type = "budget_tokens" }, +] +temperature = true +tool_call = true +open_weights = true + +[cost] +input = 0.725 +output = 2.25 +cache_read = 0.18125 + +[limit] +context = 199_984 +output = 199_984 + +[modalities] +input = ["text"] +output = ["text"] diff --git a/providers/neuralwatt/models/glm-5.2-short.toml b/providers/neuralwatt/models/glm-5.2-short.toml index 03faf9aab..a1aa3c1a2 100644 --- a/providers/neuralwatt/models/glm-5.2-short.toml +++ b/providers/neuralwatt/models/glm-5.2-short.toml @@ -1,10 +1,14 @@ -name = "GLM 5.2 short" +name = "GLM 5.2 Short" family = "glm" release_date = "2026-06-17" last_updated = "2026-06-17" attachment = false reasoning = true -reasoning_options = [{ type = "effort", values = ["minimal", "low", "medium", "high", "xhigh"] }] +reasoning_options = [ + { type = "toggle" }, + { type = "effort", values = ["none", "minimal", "low", "medium", "high", "xhigh", "max"] }, + { type = "budget_tokens" }, +] temperature = true tool_call = true open_weights = true @@ -12,10 +16,11 @@ open_weights = true [cost] input = 1.45 output = 4.5 +cache_read = 0.3625 [limit] -context = 200_000 -output = 200_000 +context = 199_984 +output = 199_984 [modalities] input = ["text"] diff --git a/providers/neuralwatt/models/glm-5.2.toml b/providers/neuralwatt/models/glm-5.2.toml index ab16bdf5d..db8a85871 100644 --- a/providers/neuralwatt/models/glm-5.2.toml +++ b/providers/neuralwatt/models/glm-5.2.toml @@ -4,7 +4,11 @@ release_date = "2026-06-17" last_updated = "2026-06-17" attachment = false reasoning = true -reasoning_options = [{ type = "effort", values = ["minimal", "low", "medium", "high", "xhigh"] }] +reasoning_options = [ + { type = "toggle" }, + { type = "effort", values = ["none", "minimal", "low", "medium", "high", "xhigh", "max"] }, + { type = "budget_tokens" }, +] temperature = true tool_call = true open_weights = true @@ -12,6 +16,7 @@ open_weights = true [cost] input = 1.45 output = 4.5 +cache_read = 0.3625 [limit] context = 1_048_560 diff --git a/providers/neuralwatt/models/kimi-k2.5-fast.toml b/providers/neuralwatt/models/kimi-k2.5-fast.toml index 4198b1300..6216454a4 100644 --- a/providers/neuralwatt/models/kimi-k2.5-fast.toml +++ b/providers/neuralwatt/models/kimi-k2.5-fast.toml @@ -11,6 +11,7 @@ open_weights = true [cost] input = 0.52 output = 2.59 +cache_read = 0.13 [limit] context = 262_128 @@ -18,4 +19,4 @@ output = 262_128 [modalities] input = ["text", "image"] -output = ["text"] +output = ["text"] \ No newline at end of file diff --git a/providers/neuralwatt/models/kimi-k2.6-fast.toml b/providers/neuralwatt/models/kimi-k2.6-fast.toml index 95d675f5b..438589968 100644 --- a/providers/neuralwatt/models/kimi-k2.6-fast.toml +++ b/providers/neuralwatt/models/kimi-k2.6-fast.toml @@ -11,6 +11,7 @@ open_weights = true [cost] input = 0.69 output = 3.22 +cache_read = 0.1725 [limit] context = 262_128 @@ -18,6 +19,4 @@ output = 262_128 [modalities] input = ["text", "image"] -output = ["text"] - - +output = ["text"] \ No newline at end of file diff --git a/providers/neuralwatt/models/kimi-k2.6-flex.toml b/providers/neuralwatt/models/kimi-k2.6-flex.toml new file mode 100644 index 000000000..ff9963779 --- /dev/null +++ b/providers/neuralwatt/models/kimi-k2.6-flex.toml @@ -0,0 +1,26 @@ +name = "Kimi K2.6 Flex" +family = "kimi-k2" +release_date = "2026-04-21" +last_updated = "2026-04-21" +attachment = true +reasoning = true +reasoning_options = [{ type = "toggle" }] +temperature = true +tool_call = true +open_weights = true + +[cost] +input = 0.345 +output = 1.61 +cache_read = 0.08625 + +[limit] +context = 262_128 +output = 262_128 + +[modalities] +input = ["text", "image"] +output = ["text"] + +[interleaved] +field = "reasoning_content" diff --git a/providers/neuralwatt/models/kimi-k2.7-code-flex.toml b/providers/neuralwatt/models/kimi-k2.7-code-flex.toml new file mode 100644 index 000000000..10945afba --- /dev/null +++ b/providers/neuralwatt/models/kimi-k2.7-code-flex.toml @@ -0,0 +1,11 @@ +base_model = "moonshotai/kimi-k2.7-code" +name = "Kimi K2.7 Code Flex" + +[cost] +input = 0.475 +output = 2 +cache_read = 0.11875 + +[modalities] +input = ["text", "image"] +output = ["text"] diff --git a/providers/neuralwatt/models/moonshotai/Kimi-K2.5.toml b/providers/neuralwatt/models/moonshotai/Kimi-K2.5.toml index e6e7e08bd..cb937cdf4 100644 --- a/providers/neuralwatt/models/moonshotai/Kimi-K2.5.toml +++ b/providers/neuralwatt/models/moonshotai/Kimi-K2.5.toml @@ -12,6 +12,7 @@ open_weights = true [cost] input = 0.52 output = 2.59 +cache_read = 0.13 [limit] context = 262_128 @@ -22,4 +23,4 @@ input = ["text", "image"] output = ["text"] [interleaved] -field = "reasoning_content" +field = "reasoning_content" \ No newline at end of file diff --git a/providers/neuralwatt/models/moonshotai/Kimi-K2.6.toml b/providers/neuralwatt/models/moonshotai/Kimi-K2.6.toml index c6d8e72f0..c3b29dafe 100644 --- a/providers/neuralwatt/models/moonshotai/Kimi-K2.6.toml +++ b/providers/neuralwatt/models/moonshotai/Kimi-K2.6.toml @@ -12,6 +12,7 @@ open_weights = true [cost] input = 0.69 output = 3.22 +cache_read = 0.1725 [limit] context = 262_128 @@ -22,4 +23,4 @@ input = ["text", "image"] output = ["text"] [interleaved] -field = "reasoning_content" +field = "reasoning_content" \ No newline at end of file diff --git a/providers/neuralwatt/models/moonshotai/Kimi-K2.7-Code.toml b/providers/neuralwatt/models/moonshotai/Kimi-K2.7-Code.toml index 77746fa71..021f06e30 100644 --- a/providers/neuralwatt/models/moonshotai/Kimi-K2.7-Code.toml +++ b/providers/neuralwatt/models/moonshotai/Kimi-K2.7-Code.toml @@ -4,7 +4,8 @@ reasoning_options = [] [cost] input = 0.95 output = 4 +cache_read = 0.2375 [modalities] input = ["text", "image"] -output = ["text"] +output = ["text"] \ No newline at end of file diff --git a/providers/neuralwatt/models/qwen3.5-397b-fast.toml b/providers/neuralwatt/models/qwen3.5-397b-fast.toml index 14c1f8ea0..022f15639 100644 --- a/providers/neuralwatt/models/qwen3.5-397b-fast.toml +++ b/providers/neuralwatt/models/qwen3.5-397b-fast.toml @@ -11,6 +11,7 @@ open_weights = true [cost] input = 0.69 output = 4.14 +cache_read = 0.1725 [limit] context = 262_128 @@ -18,4 +19,4 @@ output = 262_128 [modalities] input = ["text"] -output = ["text"] +output = ["text"] \ No newline at end of file diff --git a/providers/neuralwatt/models/qwen3.6-35b-fast.toml b/providers/neuralwatt/models/qwen3.6-35b-fast.toml index 53ec205f4..e6d0dcc0b 100644 --- a/providers/neuralwatt/models/qwen3.6-35b-fast.toml +++ b/providers/neuralwatt/models/qwen3.6-35b-fast.toml @@ -11,6 +11,7 @@ open_weights = true [cost] input = 0.29 output = 1.15 +cache_read = 0.0725 [limit] context = 131_056 @@ -18,4 +19,4 @@ output = 131_056 [modalities] input = ["text", "image"] -output = ["text"] +output = ["text"] \ No newline at end of file diff --git a/providers/neuralwatt/models/zai-org/GLM-5.1-FP8.toml b/providers/neuralwatt/models/zai-org/GLM-5.1-FP8.toml deleted file mode 100644 index 1d35519c0..000000000 --- a/providers/neuralwatt/models/zai-org/GLM-5.1-FP8.toml +++ /dev/null @@ -1,25 +0,0 @@ -name = "GLM 5.1 FP8" -family = "glm" -release_date = "2026-04-07" -last_updated = "2026-04-07" -attachment = false -reasoning = true -reasoning_options = [{ type = "toggle" }] -temperature = true -tool_call = true -open_weights = true - -[cost] -input = 1.1 -output = 3.6 - -[limit] -context = 202_736 -output = 202_736 - -[modalities] -input = ["text"] -output = ["text"] - -[interleaved] -field = "reasoning_content" diff --git a/providers/neuralwatt/provider.toml b/providers/neuralwatt/provider.toml index 6e207a1b2..c7784906c 100644 --- a/providers/neuralwatt/provider.toml +++ b/providers/neuralwatt/provider.toml @@ -5,6 +5,12 @@ npm = "@ai-sdk/openai-compatible" # `thinking_token_budget` (no bounds or disable sentinel documented). Native # toggles use `chat_template_kwargs.enable_thinking = true|false`; GLM-5.2 also # accepts `reasoning_effort`, with the model-specific normalization documented. +# Flex tier uses either a `-flex` model ID or `service_tier = "flex"` and +# requires `stream = true`; non-streaming requests fall through to the standard +# tier. The official Energy Methodology docs currently state a 0.5 flex pricing +# multiplier. # https://portal.neuralwatt.com/docs/api/chat-completions (accessed 2026-06-25) +# https://portal.neuralwatt.com/docs/guides/flex-tier +# https://portal.neuralwatt.com/docs/energy-methodology (accessed 2026-06-28) api = "https://api.neuralwatt.com/v1" doc = "https://portal.neuralwatt.com/docs"