From 09c7f864f281bb19f0424c0a47c22f11e622933a Mon Sep 17 00:00:00 2001 From: Aiden Cline Date: Wed, 10 Jun 2026 16:05:11 -0500 Subject: [PATCH 1/4] Audit Together AI model catalog and reasoning --- .../models/LiquidAI/LFM2-24B-A2B.toml | 21 +++++++++++++++ .../models/MiniMaxAI/MiniMax-M2.5.toml | 3 ++- .../models/MiniMaxAI/MiniMax-M2.7.toml | 1 + .../Qwen/Qwen2.5-7B-Instruct-Turbo.toml | 22 +++++++++++++++ .../Qwen3-Coder-480B-A35B-Instruct-FP8.toml | 1 + .../models/Qwen/Qwen3-Coder-Next-FP8.toml | 3 ++- .../models/Qwen/Qwen3.5-397B-A17B.toml | 1 + .../togetherai/models/Qwen/Qwen3.5-9B.toml | 23 ++++++++++++++++ .../togetherai/models/Qwen/Qwen3.6-Plus.toml | 1 + .../togetherai/models/Qwen/Qwen3.7-Max.toml | 2 +- .../models/deepcogito/cogito-v2-1-671b.toml | 22 +++++++++++++++ .../models/deepseek-ai/DeepSeek-R1.toml | 2 ++ .../models/deepseek-ai/DeepSeek-V3-1.toml | 2 ++ .../models/deepseek-ai/DeepSeek-V3.toml | 3 ++- .../models/deepseek-ai/DeepSeek-V4-Pro.toml | 1 + .../models/google/gemma-3n-E4B-it.toml | 22 +++++++++++++++ .../models/google/gemma-4-31B-it.toml | 2 +- .../Meta-Llama-3-8B-Instruct-Lite.toml | 21 +++++++++++++++ .../models/moonshotai/Kimi-K2.5.toml | 2 ++ .../models/moonshotai/Kimi-K2.6.toml | 1 + .../nvidia/nemotron-3-ultra-550b-a55b.toml | 1 + .../models/openai/gpt-oss-120b.toml | 1 + .../togetherai/models/openai/gpt-oss-20b.toml | 23 ++++++++++++++++ .../models/pearl-ai/gemma-4-31b-it.toml | 21 +++++++++++++++ .../togetherai/models/zai-org/GLM-5.1.toml | 1 + .../togetherai/models/zai-org/GLM-5.toml | 27 +++++++++++++++++++ 26 files changed, 225 insertions(+), 5 deletions(-) create mode 100644 providers/togetherai/models/LiquidAI/LFM2-24B-A2B.toml create mode 100644 providers/togetherai/models/Qwen/Qwen2.5-7B-Instruct-Turbo.toml create mode 100644 providers/togetherai/models/Qwen/Qwen3.5-9B.toml create mode 100644 providers/togetherai/models/deepcogito/cogito-v2-1-671b.toml create mode 100644 providers/togetherai/models/google/gemma-3n-E4B-it.toml create mode 100644 providers/togetherai/models/meta-llama/Meta-Llama-3-8B-Instruct-Lite.toml create mode 100644 providers/togetherai/models/openai/gpt-oss-20b.toml create mode 100644 providers/togetherai/models/pearl-ai/gemma-4-31b-it.toml create mode 100644 providers/togetherai/models/zai-org/GLM-5.toml diff --git a/providers/togetherai/models/LiquidAI/LFM2-24B-A2B.toml b/providers/togetherai/models/LiquidAI/LFM2-24B-A2B.toml new file mode 100644 index 000000000..d8143bc43 --- /dev/null +++ b/providers/togetherai/models/LiquidAI/LFM2-24B-A2B.toml @@ -0,0 +1,21 @@ +name = "LFM2-24B-A2B" +family = "liquid" +release_date = "2026-02-25" +last_updated = "2026-02-25" +attachment = false +reasoning = false +temperature = true +tool_call = false +open_weights = true + +[cost] +input = 0.03 +output = 0.12 + +[limit] +context = 32_768 +output = 32_768 + +[modalities] +input = ["text"] +output = ["text"] diff --git a/providers/togetherai/models/MiniMaxAI/MiniMax-M2.5.toml b/providers/togetherai/models/MiniMaxAI/MiniMax-M2.5.toml index d5a54df1d..c697c0ac8 100644 --- a/providers/togetherai/models/MiniMaxAI/MiniMax-M2.5.toml +++ b/providers/togetherai/models/MiniMaxAI/MiniMax-M2.5.toml @@ -3,7 +3,8 @@ family = "minimax" release_date = "2026-02-12" last_updated = "2026-02-12" attachment = false -reasoning = true +reasoning = false +status = "deprecated" temperature = true tool_call = true open_weights = true diff --git a/providers/togetherai/models/MiniMaxAI/MiniMax-M2.7.toml b/providers/togetherai/models/MiniMaxAI/MiniMax-M2.7.toml index 5cde1c425..94dcb5060 100644 --- a/providers/togetherai/models/MiniMaxAI/MiniMax-M2.7.toml +++ b/providers/togetherai/models/MiniMaxAI/MiniMax-M2.7.toml @@ -4,6 +4,7 @@ release_date = "2026-03-18" last_updated = "2026-03-18" attachment = false reasoning = true +reasoning_options = [] temperature = true tool_call = true structured_output = true diff --git a/providers/togetherai/models/Qwen/Qwen2.5-7B-Instruct-Turbo.toml b/providers/togetherai/models/Qwen/Qwen2.5-7B-Instruct-Turbo.toml new file mode 100644 index 000000000..406d4b032 --- /dev/null +++ b/providers/togetherai/models/Qwen/Qwen2.5-7B-Instruct-Turbo.toml @@ -0,0 +1,22 @@ +name = "Qwen 2.5 7B Instruct Turbo" +family = "qwen" +release_date = "2024-09-19" +last_updated = "2024-09-19" +attachment = false +reasoning = false +temperature = true +tool_call = true +structured_output = true +open_weights = true + +[cost] +input = 0.30 +output = 0.30 + +[limit] +context = 32_768 +output = 32_768 + +[modalities] +input = ["text"] +output = ["text"] diff --git a/providers/togetherai/models/Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8.toml b/providers/togetherai/models/Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8.toml index d554ce5b8..718f1e143 100644 --- a/providers/togetherai/models/Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8.toml +++ b/providers/togetherai/models/Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8.toml @@ -4,6 +4,7 @@ release_date = "2025-07-23" last_updated = "2025-07-23" attachment = false reasoning = false +status = "deprecated" temperature = true knowledge = "2025-04" tool_call = true diff --git a/providers/togetherai/models/Qwen/Qwen3-Coder-Next-FP8.toml b/providers/togetherai/models/Qwen/Qwen3-Coder-Next-FP8.toml index a16084866..5508493d8 100644 --- a/providers/togetherai/models/Qwen/Qwen3-Coder-Next-FP8.toml +++ b/providers/togetherai/models/Qwen/Qwen3-Coder-Next-FP8.toml @@ -3,7 +3,8 @@ family = "qwen" release_date = "2026-02-03" last_updated = "2026-02-03" attachment = false -reasoning = true +reasoning = false +status = "deprecated" temperature = true knowledge = "2026-02-03" tool_call = true diff --git a/providers/togetherai/models/Qwen/Qwen3.5-397B-A17B.toml b/providers/togetherai/models/Qwen/Qwen3.5-397B-A17B.toml index 009aea160..d3135daf8 100644 --- a/providers/togetherai/models/Qwen/Qwen3.5-397B-A17B.toml +++ b/providers/togetherai/models/Qwen/Qwen3.5-397B-A17B.toml @@ -4,6 +4,7 @@ release_date = "2026-02-16" last_updated = "2026-02-16" attachment = false reasoning = true +reasoning_options = [{ type = "toggle" }] temperature = true tool_call = true open_weights = true diff --git a/providers/togetherai/models/Qwen/Qwen3.5-9B.toml b/providers/togetherai/models/Qwen/Qwen3.5-9B.toml new file mode 100644 index 000000000..6e01d3b74 --- /dev/null +++ b/providers/togetherai/models/Qwen/Qwen3.5-9B.toml @@ -0,0 +1,23 @@ +name = "Qwen3.5 9B" +family = "qwen" +release_date = "2026-03-03" +last_updated = "2026-03-03" +attachment = true +reasoning = true +reasoning_options = [{ type = "toggle" }] +temperature = true +tool_call = true +structured_output = true +open_weights = true + +[cost] +input = 0.17 +output = 0.25 + +[limit] +context = 262_144 +output = 65_536 + +[modalities] +input = ["text", "image"] +output = ["text"] diff --git a/providers/togetherai/models/Qwen/Qwen3.6-Plus.toml b/providers/togetherai/models/Qwen/Qwen3.6-Plus.toml index 671dd5dd4..2ec61c0bc 100644 --- a/providers/togetherai/models/Qwen/Qwen3.6-Plus.toml +++ b/providers/togetherai/models/Qwen/Qwen3.6-Plus.toml @@ -4,6 +4,7 @@ release_date = "2026-04-30" last_updated = "2026-04-30" attachment = false reasoning = true +reasoning_options = [{ type = "toggle" }] temperature = true tool_call = true open_weights = true diff --git a/providers/togetherai/models/Qwen/Qwen3.7-Max.toml b/providers/togetherai/models/Qwen/Qwen3.7-Max.toml index 6a839a31a..65b3d7bd4 100644 --- a/providers/togetherai/models/Qwen/Qwen3.7-Max.toml +++ b/providers/togetherai/models/Qwen/Qwen3.7-Max.toml @@ -3,7 +3,7 @@ family = "qwen" release_date = "2026-05-21" last_updated = "2026-05-21" attachment = false -reasoning = true +reasoning = false temperature = true tool_call = true open_weights = false diff --git a/providers/togetherai/models/deepcogito/cogito-v2-1-671b.toml b/providers/togetherai/models/deepcogito/cogito-v2-1-671b.toml new file mode 100644 index 000000000..eb7734feb --- /dev/null +++ b/providers/togetherai/models/deepcogito/cogito-v2-1-671b.toml @@ -0,0 +1,22 @@ +name = "Cogito v2.1 671B" +family = "cogito" +release_date = "2025-11-13" +last_updated = "2025-11-13" +attachment = false +reasoning = true +reasoning_options = [{ type = "toggle" }] +temperature = true +tool_call = false +open_weights = false + +[cost] +input = 1.25 +output = 1.25 + +[limit] +context = 163_840 +output = 163_840 + +[modalities] +input = ["text"] +output = ["text"] diff --git a/providers/togetherai/models/deepseek-ai/DeepSeek-R1.toml b/providers/togetherai/models/deepseek-ai/DeepSeek-R1.toml index a0d216cc8..b74387c95 100644 --- a/providers/togetherai/models/deepseek-ai/DeepSeek-R1.toml +++ b/providers/togetherai/models/deepseek-ai/DeepSeek-R1.toml @@ -4,6 +4,8 @@ release_date = "2025-01-20" last_updated = "2025-03-24" attachment = false reasoning = true +reasoning_options = [] +status = "deprecated" temperature = true knowledge = "2024-07" tool_call = false diff --git a/providers/togetherai/models/deepseek-ai/DeepSeek-V3-1.toml b/providers/togetherai/models/deepseek-ai/DeepSeek-V3-1.toml index 301a2a44d..33ab302d4 100644 --- a/providers/togetherai/models/deepseek-ai/DeepSeek-V3-1.toml +++ b/providers/togetherai/models/deepseek-ai/DeepSeek-V3-1.toml @@ -4,6 +4,8 @@ release_date = "2025-08-21" last_updated = "2025-08-21" attachment = false reasoning = true +reasoning_options = [{ type = "toggle" }] +status = "deprecated" temperature = true tool_call = true knowledge = "2025-08" diff --git a/providers/togetherai/models/deepseek-ai/DeepSeek-V3.toml b/providers/togetherai/models/deepseek-ai/DeepSeek-V3.toml index 87fd1bd15..71a308d1d 100644 --- a/providers/togetherai/models/deepseek-ai/DeepSeek-V3.toml +++ b/providers/togetherai/models/deepseek-ai/DeepSeek-V3.toml @@ -3,7 +3,8 @@ family = "deepseek" release_date = "2024-12-26" last_updated = "2025-05-29" attachment = false -reasoning = true +reasoning = false +status = "deprecated" temperature = true knowledge = "2024-07" tool_call = true diff --git a/providers/togetherai/models/deepseek-ai/DeepSeek-V4-Pro.toml b/providers/togetherai/models/deepseek-ai/DeepSeek-V4-Pro.toml index cf331117c..6f61aa6ae 100644 --- a/providers/togetherai/models/deepseek-ai/DeepSeek-V4-Pro.toml +++ b/providers/togetherai/models/deepseek-ai/DeepSeek-V4-Pro.toml @@ -4,6 +4,7 @@ release_date = "2026-04-24" last_updated = "2026-04-24" attachment = false reasoning = true +reasoning_options = [{ type = "toggle" }, { type = "effort", values = ["high", "max"] }] structured_output = true temperature = true tool_call = true diff --git a/providers/togetherai/models/google/gemma-3n-E4B-it.toml b/providers/togetherai/models/google/gemma-3n-E4B-it.toml new file mode 100644 index 000000000..803a7c9a2 --- /dev/null +++ b/providers/togetherai/models/google/gemma-3n-E4B-it.toml @@ -0,0 +1,22 @@ +name = "Gemma 3N E4B Instruct" +family = "gemma" +release_date = "2025-05-20" +last_updated = "2025-05-20" +attachment = false +reasoning = false +temperature = true +tool_call = false +structured_output = true +open_weights = true + +[cost] +input = 0.06 +output = 0.12 + +[limit] +context = 32_768 +output = 32_768 + +[modalities] +input = ["text"] +output = ["text"] diff --git a/providers/togetherai/models/google/gemma-4-31B-it.toml b/providers/togetherai/models/google/gemma-4-31B-it.toml index 9efee4bc3..a1fd3f20a 100644 --- a/providers/togetherai/models/google/gemma-4-31B-it.toml +++ b/providers/togetherai/models/google/gemma-4-31B-it.toml @@ -3,7 +3,7 @@ family = "gemma" release_date = "2026-04-07" last_updated = "2026-04-07" attachment = true -reasoning = true +reasoning = false temperature = true knowledge = "2025-01" tool_call = true diff --git a/providers/togetherai/models/meta-llama/Meta-Llama-3-8B-Instruct-Lite.toml b/providers/togetherai/models/meta-llama/Meta-Llama-3-8B-Instruct-Lite.toml new file mode 100644 index 000000000..d0143618b --- /dev/null +++ b/providers/togetherai/models/meta-llama/Meta-Llama-3-8B-Instruct-Lite.toml @@ -0,0 +1,21 @@ +name = "Meta Llama 3 8B Instruct Lite" +family = "llama" +release_date = "2024-04-18" +last_updated = "2024-04-18" +attachment = false +reasoning = false +temperature = true +tool_call = false +open_weights = true + +[cost] +input = 0.14 +output = 0.14 + +[limit] +context = 8_192 +output = 8_192 + +[modalities] +input = ["text"] +output = ["text"] diff --git a/providers/togetherai/models/moonshotai/Kimi-K2.5.toml b/providers/togetherai/models/moonshotai/Kimi-K2.5.toml index 89a314027..f108317e4 100644 --- a/providers/togetherai/models/moonshotai/Kimi-K2.5.toml +++ b/providers/togetherai/models/moonshotai/Kimi-K2.5.toml @@ -4,6 +4,8 @@ release_date = "2026-01-27" last_updated = "2026-01-27" attachment = false reasoning = true +reasoning_options = [{ type = "toggle" }] +status = "deprecated" temperature = true tool_call = true knowledge = "2026-01" diff --git a/providers/togetherai/models/moonshotai/Kimi-K2.6.toml b/providers/togetherai/models/moonshotai/Kimi-K2.6.toml index bf9ba197f..e40fda569 100644 --- a/providers/togetherai/models/moonshotai/Kimi-K2.6.toml +++ b/providers/togetherai/models/moonshotai/Kimi-K2.6.toml @@ -4,6 +4,7 @@ release_date = "2026-04-21" last_updated = "2026-04-21" attachment = true reasoning = true +reasoning_options = [{ type = "toggle" }] structured_output = true temperature = true tool_call = true diff --git a/providers/togetherai/models/nvidia/nemotron-3-ultra-550b-a55b.toml b/providers/togetherai/models/nvidia/nemotron-3-ultra-550b-a55b.toml index 9cbcadc1f..24d04529a 100644 --- a/providers/togetherai/models/nvidia/nemotron-3-ultra-550b-a55b.toml +++ b/providers/togetherai/models/nvidia/nemotron-3-ultra-550b-a55b.toml @@ -5,6 +5,7 @@ release_date = "2026-06-04" last_updated = "2026-06-04" attachment = false reasoning = true +reasoning_options = [{ type = "toggle" }] structured_output = true temperature = true tool_call = true diff --git a/providers/togetherai/models/openai/gpt-oss-120b.toml b/providers/togetherai/models/openai/gpt-oss-120b.toml index f476f5edc..fd436daf5 100644 --- a/providers/togetherai/models/openai/gpt-oss-120b.toml +++ b/providers/togetherai/models/openai/gpt-oss-120b.toml @@ -4,6 +4,7 @@ release_date = "2025-08-05" last_updated = "2025-08-05" attachment = false reasoning = true +reasoning_options = [{ type = "effort", values = ["low", "medium", "high"] }] temperature = true tool_call = true knowledge = "2025-08" diff --git a/providers/togetherai/models/openai/gpt-oss-20b.toml b/providers/togetherai/models/openai/gpt-oss-20b.toml new file mode 100644 index 000000000..0daef1a57 --- /dev/null +++ b/providers/togetherai/models/openai/gpt-oss-20b.toml @@ -0,0 +1,23 @@ +name = "GPT OSS 20B" +family = "gpt-oss" +release_date = "2025-08-05" +last_updated = "2025-08-05" +attachment = false +reasoning = true +reasoning_options = [{ type = "effort", values = ["low", "medium", "high"] }] +temperature = true +tool_call = true +structured_output = true +open_weights = true + +[cost] +input = 0.05 +output = 0.20 + +[limit] +context = 131_072 +output = 131_072 + +[modalities] +input = ["text"] +output = ["text"] diff --git a/providers/togetherai/models/pearl-ai/gemma-4-31b-it.toml b/providers/togetherai/models/pearl-ai/gemma-4-31b-it.toml new file mode 100644 index 000000000..9246c4244 --- /dev/null +++ b/providers/togetherai/models/pearl-ai/gemma-4-31b-it.toml @@ -0,0 +1,21 @@ +name = "Pearl AI Gemma 4 31B Instruct" +family = "gemma" +release_date = "2026-04-07" +last_updated = "2026-04-07" +attachment = false +reasoning = false +temperature = true +tool_call = false +open_weights = false + +[cost] +input = 0.28 +output = 0.86 + +[limit] +context = 32_000 +output = 32_000 + +[modalities] +input = ["text"] +output = ["text"] diff --git a/providers/togetherai/models/zai-org/GLM-5.1.toml b/providers/togetherai/models/zai-org/GLM-5.1.toml index fd156a83b..828179350 100644 --- a/providers/togetherai/models/zai-org/GLM-5.1.toml +++ b/providers/togetherai/models/zai-org/GLM-5.1.toml @@ -4,6 +4,7 @@ release_date = "2026-04-07" last_updated = "2026-04-07" attachment = false reasoning = true +reasoning_options = [{ type = "toggle" }] temperature = true structured_output = true knowledge = "2025-11" diff --git a/providers/togetherai/models/zai-org/GLM-5.toml b/providers/togetherai/models/zai-org/GLM-5.toml new file mode 100644 index 000000000..027c5cb36 --- /dev/null +++ b/providers/togetherai/models/zai-org/GLM-5.toml @@ -0,0 +1,27 @@ +name = "GLM-5" +base_model = "zhipuai/glm-5" +family = "glm" +release_date = "2026-02-11" +last_updated = "2026-02-11" +attachment = false +reasoning = true +reasoning_options = [{ type = "toggle" }] +temperature = true +tool_call = true +structured_output = true +open_weights = true + +[interleaved] +field = "reasoning_content" + +[cost] +input = 1.00 +output = 3.20 + +[limit] +context = 202_752 +output = 131_072 + +[modalities] +input = ["text"] +output = ["text"] From cb4fd81c59669527118013ff883fa6694e142cb7 Mon Sep 17 00:00:00 2001 From: Aiden Cline Date: Wed, 10 Jun 2026 19:51:01 -0500 Subject: [PATCH 2/4] Correct Together Qwen reasoning metadata --- .../models/Qwen/Qwen3-235B-A22B-Instruct-2507-tput.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/providers/togetherai/models/Qwen/Qwen3-235B-A22B-Instruct-2507-tput.toml b/providers/togetherai/models/Qwen/Qwen3-235B-A22B-Instruct-2507-tput.toml index 16476098a..fe4f45dd8 100644 --- a/providers/togetherai/models/Qwen/Qwen3-235B-A22B-Instruct-2507-tput.toml +++ b/providers/togetherai/models/Qwen/Qwen3-235B-A22B-Instruct-2507-tput.toml @@ -3,7 +3,7 @@ family = "qwen" release_date = "2025-07-25" last_updated = "2025-07-25" attachment = false -reasoning = true +reasoning = false temperature = true knowledge = "2025-07" tool_call = true @@ -19,4 +19,4 @@ output = 262_144 [modalities] input = ["text"] -output = ["text"] \ No newline at end of file +output = ["text"] From 8807bb006979a309bb952da032ccbadd4abc72ff Mon Sep 17 00:00:00 2001 From: Aiden Cline Date: Wed, 10 Jun 2026 23:12:12 -0500 Subject: [PATCH 3/4] Correct Together reasoning and pricing metadata --- providers/togetherai/models/MiniMaxAI/MiniMax-M2.5.toml | 2 +- .../togetherai/models/deepseek-ai/DeepSeek-V4-Pro.toml | 4 ++-- providers/togetherai/models/google/gemma-4-31B-it.toml | 7 ++++--- providers/togetherai/models/pearl-ai/gemma-4-31b-it.toml | 2 +- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/providers/togetherai/models/MiniMaxAI/MiniMax-M2.5.toml b/providers/togetherai/models/MiniMaxAI/MiniMax-M2.5.toml index c697c0ac8..70e50b05a 100644 --- a/providers/togetherai/models/MiniMaxAI/MiniMax-M2.5.toml +++ b/providers/togetherai/models/MiniMaxAI/MiniMax-M2.5.toml @@ -3,7 +3,7 @@ family = "minimax" release_date = "2026-02-12" last_updated = "2026-02-12" attachment = false -reasoning = false +reasoning = true status = "deprecated" temperature = true tool_call = true diff --git a/providers/togetherai/models/deepseek-ai/DeepSeek-V4-Pro.toml b/providers/togetherai/models/deepseek-ai/DeepSeek-V4-Pro.toml index 6f61aa6ae..d56e4dff8 100644 --- a/providers/togetherai/models/deepseek-ai/DeepSeek-V4-Pro.toml +++ b/providers/togetherai/models/deepseek-ai/DeepSeek-V4-Pro.toml @@ -14,8 +14,8 @@ open_weights = true field = "reasoning_content" [cost] -input = 2.10 -output = 4.40 +input = 1.74 +output = 3.48 cache_read = 0.20 [limit] diff --git a/providers/togetherai/models/google/gemma-4-31B-it.toml b/providers/togetherai/models/google/gemma-4-31B-it.toml index a1fd3f20a..d38bd3aef 100644 --- a/providers/togetherai/models/google/gemma-4-31B-it.toml +++ b/providers/togetherai/models/google/gemma-4-31B-it.toml @@ -3,15 +3,16 @@ family = "gemma" release_date = "2026-04-07" last_updated = "2026-04-07" attachment = true -reasoning = false +reasoning = true +structured_output = true temperature = true knowledge = "2025-01" tool_call = true open_weights = true [cost] -input = 0.20 -output = 0.50 +input = 0.39 +output = 0.97 [limit] context = 262_144 diff --git a/providers/togetherai/models/pearl-ai/gemma-4-31b-it.toml b/providers/togetherai/models/pearl-ai/gemma-4-31b-it.toml index 9246c4244..6065fdbdc 100644 --- a/providers/togetherai/models/pearl-ai/gemma-4-31b-it.toml +++ b/providers/togetherai/models/pearl-ai/gemma-4-31b-it.toml @@ -3,7 +3,7 @@ family = "gemma" release_date = "2026-04-07" last_updated = "2026-04-07" attachment = false -reasoning = false +reasoning = true temperature = true tool_call = false open_weights = false From 1e76995f8e60c71aba5d3b02b8f074214d28e9d4 Mon Sep 17 00:00:00 2001 From: Aiden Cline Date: Wed, 10 Jun 2026 23:15:34 -0500 Subject: [PATCH 4/4] Test resolved Together provider matrix --- .../core/test/togetherai-generated.test.ts | 101 ++++++++++++++++++ 1 file changed, 101 insertions(+) create mode 100644 packages/core/test/togetherai-generated.test.ts diff --git a/packages/core/test/togetherai-generated.test.ts b/packages/core/test/togetherai-generated.test.ts new file mode 100644 index 000000000..cbfab5335 --- /dev/null +++ b/packages/core/test/togetherai-generated.test.ts @@ -0,0 +1,101 @@ +import { expect, test } from "bun:test"; +import path from "node:path"; + +import { generate } from "../src/index.js"; + +const expected = { + "LiquidAI/LFM2-24B-A2B": ["active", false, undefined], + "MiniMaxAI/MiniMax-M2.5": ["deprecated", true, undefined], + "MiniMaxAI/MiniMax-M2.7": ["active", true, []], + "Qwen/Qwen2.5-7B-Instruct-Turbo": ["active", false, undefined], + "Qwen/Qwen3-235B-A22B-Instruct-2507-tput": ["active", false, undefined], + "Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8": ["deprecated", false, undefined], + "Qwen/Qwen3-Coder-Next-FP8": ["deprecated", false, undefined], + "Qwen/Qwen3.5-397B-A17B": ["active", true, [{ type: "toggle" }]], + "Qwen/Qwen3.5-9B": ["active", true, [{ type: "toggle" }]], + "Qwen/Qwen3.6-Plus": ["active", true, [{ type: "toggle" }]], + "Qwen/Qwen3.7-Max": ["active", false, undefined], + "deepcogito/cogito-v2-1-671b": ["active", true, [{ type: "toggle" }]], + "deepseek-ai/DeepSeek-R1": ["deprecated", true, []], + "deepseek-ai/DeepSeek-V3": ["deprecated", false, undefined], + "deepseek-ai/DeepSeek-V3-1": ["deprecated", true, [{ type: "toggle" }]], + "deepseek-ai/DeepSeek-V4-Pro": [ + "active", + true, + [{ type: "toggle" }, { type: "effort", values: ["high", "max"] }], + ], + "essentialai/Rnj-1-Instruct": ["active", false, undefined], + "google/gemma-3n-E4B-it": ["active", false, undefined], + "google/gemma-4-31B-it": ["active", true, undefined], + "meta-llama/Llama-3.3-70B-Instruct-Turbo": ["active", false, undefined], + "meta-llama/Meta-Llama-3-8B-Instruct-Lite": ["active", false, undefined], + "moonshotai/Kimi-K2.5": ["deprecated", true, [{ type: "toggle" }]], + "moonshotai/Kimi-K2.6": ["active", true, [{ type: "toggle" }]], + "nvidia/nemotron-3-ultra-550b-a55b": ["active", true, [{ type: "toggle" }]], + "openai/gpt-oss-120b": [ + "active", + true, + [{ type: "effort", values: ["low", "medium", "high"] }], + ], + "openai/gpt-oss-20b": [ + "active", + true, + [{ type: "effort", values: ["low", "medium", "high"] }], + ], + "pearl-ai/gemma-4-31b-it": ["active", true, undefined], + "zai-org/GLM-5": ["active", true, [{ type: "toggle" }]], + "zai-org/GLM-5.1": ["active", true, [{ type: "toggle" }]], +} as const; + +test("generated Together matrix is exhaustive and resolved", async () => { + const root = path.join(import.meta.dirname, "..", "..", ".."); + const providers = await generate(path.join(root, "providers")); + const models = providers.togetherai?.models; + + expect(models).toBeDefined(); + expect(Object.keys(models ?? {}).sort()).toEqual(Object.keys(expected).sort()); + + const active: string[] = []; + const deprecated: string[] = []; + const unresolved: string[] = []; + const fixed: string[] = []; + + for (const [id, [lifecycle, reasoning, reasoningOptions]] of Object.entries(expected)) { + const model = models?.[id]; + expect(model, id).toBeDefined(); + expect(model?.status ?? "active", `${id} lifecycle`).toBe(lifecycle); + expect(model?.reasoning, `${id} reasoning`).toBe(reasoning); + expect(model?.reasoning_options, `${id} controls`).toEqual(reasoningOptions); + + const encoded = JSON.stringify(model); + expect(encoded, `${id} resolved metadata`).not.toContain("base_model"); + + (lifecycle === "deprecated" ? deprecated : active).push(id); + if (reasoning && reasoningOptions === undefined) unresolved.push(id); + if (reasoningOptions?.length === 0) fixed.push(id); + if (!reasoning) expect(model?.reasoning_options, `${id} non-reasoning controls`).toBeUndefined(); + } + + expect(active).toHaveLength(22); + expect(deprecated).toHaveLength(7); + expect(unresolved.sort()).toEqual([ + "MiniMaxAI/MiniMax-M2.5", + "google/gemma-4-31B-it", + "pearl-ai/gemma-4-31b-it", + ]); + expect(fixed.sort()).toEqual([ + "MiniMaxAI/MiniMax-M2.7", + "deepseek-ai/DeepSeek-R1", + ]); + + expect(models?.["deepseek-ai/DeepSeek-V4-Pro"]?.cost).toMatchObject({ + input: 1.74, + output: 3.48, + cache_read: 0.2, + }); + expect(models?.["google/gemma-4-31B-it"]).toMatchObject({ + reasoning: true, + structured_output: true, + cost: { input: 0.39, output: 0.97 }, + }); +});