Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions providers/tokensmarket/logo.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
11 changes: 11 additions & 0 deletions providers/tokensmarket/models/MiniMax-M2.1.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Alibaba Cloud (DashScope) channel. For MiniMax models the adapter sets
# `thinking.type` to adaptive/disabled from the effort value and does not forward
# an effort ladder upstream, so the surface is a plain toggle.
base_model = "minimax/MiniMax-M2.1"
reasoning_options = [{ type = "toggle" }]

[cost]
input = 0.248
output = 0.992
cache_read = 0.024
cache_write = 0.312
11 changes: 11 additions & 0 deletions providers/tokensmarket/models/MiniMax-M2.5.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Alibaba Cloud (DashScope) channel. For MiniMax models the adapter sets
# `thinking.type` to adaptive/disabled from the effort value and does not forward
# an effort ladder upstream, so the surface is a plain toggle.
base_model = "minimax/MiniMax-M2.5"
reasoning_options = [{ type = "toggle" }]

[cost]
input = 0.248
output = 0.992
cache_read = 0.024
cache_write = 0.312
19 changes: 19 additions & 0 deletions providers/tokensmarket/models/claude-fable-5.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Claude Hub channel: raw passthrough to Anthropic /v1/messages, so the upstream
# reasoning surface survives unchanged. Modalities follow Token Market's own
# catalog, which lists text and image input only.
base_model = "anthropic/claude-fable-5"
structured_output = true

[[reasoning_options]]
type = "effort"
values = ["low", "medium", "high", "xhigh", "max"]

[cost]
input = 2.5
output = 12.5
cache_read = 0.25
cache_write = 3.125

[modalities]
input = ["text", "image"]
output = ["text"]
19 changes: 19 additions & 0 deletions providers/tokensmarket/models/claude-haiku-4-5.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Claude Hub channel: raw passthrough to Anthropic /v1/messages, so the upstream
# reasoning surface survives unchanged. Modalities follow Token Market's own
# catalog, which lists text and image input only.
base_model = "anthropic/claude-haiku-4-5"
structured_output = true

[[reasoning_options]]
type = "budget_tokens"
min = 1_024

[cost]
input = 0.25
output = 1.25
cache_read = 0.025
cache_write = 0.3125

[modalities]
input = ["text", "image"]
output = ["text"]
19 changes: 19 additions & 0 deletions providers/tokensmarket/models/claude-opus-4-8.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Claude Hub channel: raw passthrough to Anthropic /v1/messages, so the upstream
# reasoning surface survives unchanged. Modalities follow Token Market's own
# catalog, which lists text and image input only.
base_model = "anthropic/claude-opus-4-8"
structured_output = true

[[reasoning_options]]
type = "effort"
values = ["low", "medium", "high", "xhigh", "max"]

[cost]
input = 1.25
output = 6.25
cache_read = 0.125
cache_write = 1.5625

[modalities]
input = ["text", "image"]
output = ["text"]
21 changes: 21 additions & 0 deletions providers/tokensmarket/models/claude-opus-5.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Served over the Claude Hub channel, which is a raw passthrough to Anthropic
# /v1/messages (the channel adapter only rewrites the URL and forwards the
# anthropic-version / anthropic-beta headers), so the upstream reasoning surface
# survives unchanged. Modalities follow Token Market's own catalog, which lists
# text and image input only.
base_model = "anthropic/claude-opus-5"
structured_output = true

[[reasoning_options]]
type = "effort"
values = ["low", "medium", "high", "xhigh", "max"]

[cost]
input = 1.25
output = 6.25
cache_read = 0.125
cache_write = 1.5625

[modalities]
input = ["text", "image"]
output = ["text"]
25 changes: 25 additions & 0 deletions providers/tokensmarket/models/claude-sonnet-5.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Claude Hub channel: raw passthrough to Anthropic /v1/messages, so the upstream
# reasoning surface survives unchanged. Modalities follow Token Market's own
# catalog, which lists text and image input only.
# Toggle: `thinking.type = "adaptive"` (on, budget managed by Anthropic) |
# `thinking.type = "disabled"`. claude-sonnet-5 rejects manually-set extended
# thinking and sampling controls, so no budget_tokens option is listed.
base_model = "anthropic/claude-sonnet-5"
structured_output = true

[[reasoning_options]]
type = "toggle"

[[reasoning_options]]
type = "effort"
values = ["low", "medium", "high", "xhigh", "max"]

[cost]
input = 0.5
output = 2.5
cache_read = 0.05
cache_write = 0.625

[modalities]
input = ["text", "image"]
output = ["text"]
21 changes: 21 additions & 0 deletions providers/tokensmarket/models/deepseek-v4-flash.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Alibaba Cloud (DashScope) channel.
# Toggle: `enable_thinking = false` (effort "none") | `enable_thinking = true`.
# Effort: `reasoning_effort = high | max`; low/medium collapse to high and xhigh
# collapses to max on this channel, so only two levels are distinctly reachable.
# `thinking_budget` is projected for the Qwen family only, so no budget_tokens here.
base_model = "deepseek/deepseek-v4-flash"

[[reasoning_options]]
type = "toggle"

[[reasoning_options]]
type = "effort"
values = ["high", "max"]

[interleaved]
field = "reasoning_content"

[cost]
input = 0.22
output = 0.665
cache_read = 0.022
21 changes: 21 additions & 0 deletions providers/tokensmarket/models/deepseek-v4-pro.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Alibaba Cloud (DashScope) channel.
# Toggle: `enable_thinking = false` (effort "none") | `enable_thinking = true`.
# Effort: `reasoning_effort = high | max`; low/medium collapse to high and xhigh
# collapses to max on this channel, so only two levels are distinctly reachable.
# `thinking_budget` is projected for the Qwen family only, so no budget_tokens here.
base_model = "deepseek/deepseek-v4-pro"

[[reasoning_options]]
type = "toggle"

[[reasoning_options]]
type = "effort"
values = ["high", "max"]

[interleaved]
field = "reasoning_content"

[cost]
input = 0.665
output = 1.985
cache_read = 0.0665
15 changes: 15 additions & 0 deletions providers/tokensmarket/models/gemini-3.5-flash.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Gemini Hub channel. The adapter does not rewrite the reasoning fields, so the
# upstream Gemini effort ladder applies. Token Market's catalog lists text,
# image, audio, and video input (no PDF), so modalities are overridden.
base_model = "google/gemini-3.5-flash"
reasoning_options = [{ type = "effort", values = ["minimal", "low", "medium", "high"] }]

[cost]
input = 0.225
output = 1.35
cache_read = 0.0225
cache_write = 0.225

[modalities]
input = ["text", "image", "audio", "video"]
output = ["text"]
13 changes: 13 additions & 0 deletions providers/tokensmarket/models/glm-5.1.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Alibaba Cloud (DashScope) channel. The adapter maps effort "none" to
# `enable_thinking = false`, which is the toggle. GLM-5.1 on Model Studio
# documents no effort ladder (unlike 5.2), so only the toggle is exposed.
base_model = "zhipuai/glm-5.1"
reasoning_options = [{ type = "toggle" }]

[interleaved]
field = "reasoning_content"

[cost]
input = 0.88
output = 3.53
cache_read = 0.19
13 changes: 13 additions & 0 deletions providers/tokensmarket/models/glm-5.2.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Alibaba Cloud (DashScope) channel, which accepts the full
# reasoning_effort enum for GLM-5.2 ("none" disables reasoning, so no separate
# toggle is needed).
base_model = "zhipuai/glm-5.2"
reasoning_options = [{ type = "effort", values = ["none", "minimal", "low", "medium", "high", "xhigh", "max"] }]

[interleaved]
field = "reasoning_content"

[cost]
input = 0.944
output = 3.296
cache_read = 0.232
10 changes: 10 additions & 0 deletions providers/tokensmarket/models/gpt-5.4-mini.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# GPT Hub channel: the adapter only strips the gateway-canonical `reasoning`
# object and forwards native `reasoning_effort`. Upstream GPT-5.4 tops out at
# xhigh.
base_model = "openai/gpt-5.4-mini"
reasoning_options = [{ type = "effort", values = ["none", "low", "medium", "high", "xhigh"] }]

[cost]
input = 0.1125
output = 0.675
cache_read = 0.01125
13 changes: 13 additions & 0 deletions providers/tokensmarket/models/gpt-5.4-nano.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# GPT Hub channel: the adapter only strips the gateway-canonical `reasoning`
# object and forwards native `reasoning_effort`. Upstream GPT-5.4 tops out at
# xhigh.
# Cost: the catalog publishes no discounted rate for this model, so the listed
# vendor rate applies.
base_model = "openai/gpt-5.4-nano"
reasoning_options = [{ type = "effort", values = ["none", "low", "medium", "high", "xhigh"] }]

[cost]
input = 0.2
output = 1.25
cache_read = 0.02
cache_write = 0.2
16 changes: 16 additions & 0 deletions providers/tokensmarket/models/gpt-5.5.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# GPT Hub channel: the adapter only strips the gateway-canonical `reasoning`
# object and forwards native `reasoning_effort`. Upstream GPT-5.5 tops out at
# xhigh (max arrived with 5.6). Modalities follow Token Market's own catalog,
# which lists text and image input only.
base_model = "openai/gpt-5.5"
reasoning_options = [{ type = "effort", values = ["none", "low", "medium", "high", "xhigh"] }]

[cost]
input = 0.75
output = 4.5
cache_read = 0.075
cache_write = 0.75

[modalities]
input = ["text", "image"]
output = ["text"]
16 changes: 16 additions & 0 deletions providers/tokensmarket/models/gpt-5.6-luna.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# GPT Hub channel: the adapter only strips the gateway-canonical `reasoning`
# object and forwards native `reasoning_effort`, so the full upstream effort
# ladder is available. Modalities follow Token Market's own catalog, which lists
# text and image input only.
base_model = "openai/gpt-5.6-luna"
reasoning_options = [{ type = "effort", values = ["none", "low", "medium", "high", "xhigh", "max"] }]

[cost]
input = 0.03
output = 0.18
cache_read = 0.003
cache_write = 0.0375

[modalities]
input = ["text", "image"]
output = ["text"]
16 changes: 16 additions & 0 deletions providers/tokensmarket/models/gpt-5.6-sol.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# GPT Hub channel: the adapter only strips the gateway-canonical `reasoning`
# object and forwards native `reasoning_effort`, so the full upstream effort
# ladder is available. Modalities follow Token Market's own catalog, which lists
# text and image input only.
base_model = "openai/gpt-5.6-sol"
reasoning_options = [{ type = "effort", values = ["none", "low", "medium", "high", "xhigh", "max"] }]

[cost]
input = 0.75
output = 4.5
cache_read = 0.075
cache_write = 0.9375

[modalities]
input = ["text", "image"]
output = ["text"]
16 changes: 16 additions & 0 deletions providers/tokensmarket/models/gpt-5.6-terra.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# GPT Hub channel: the adapter only strips the gateway-canonical `reasoning`
# object and forwards native `reasoning_effort`, so the full upstream effort
# ladder is available. Modalities follow Token Market's own catalog, which lists
# text and image input only.
base_model = "openai/gpt-5.6-terra"
reasoning_options = [{ type = "effort", values = ["none", "low", "medium", "high", "xhigh", "max"] }]

[cost]
input = 0.3
output = 1.8
cache_read = 0.03
cache_write = 0.46875

[modalities]
input = ["text", "image"]
output = ["text"]
3 changes: 3 additions & 0 deletions providers/tokensmarket/models/gpt-image-2.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# GPT Hub channel. Billed per request ($0.01), a unit the per-token [cost]
# schema cannot express, so [cost] is omitted rather than misstated.
base_model = "openai/gpt-image-2"
12 changes: 12 additions & 0 deletions providers/tokensmarket/models/hy3.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Tencent Cloud channel. The adapter is a plain OpenAI-compatible passthrough
# that forwards `reasoning_effort` and does not project onto Tencent's
# `thinking.type`, so only the effort ladder is reachable. Aligned to the
# none|low|high surface established relays use for Hy3.
# https://cloud.tencent.com/document/product/1823/131208
base_model = "tencent/hy3"
reasoning_options = [{ type = "effort", values = ["none", "low", "high"] }]

[cost]
input = 0.147
output = 0.588
cache_read = 0.037
17 changes: 17 additions & 0 deletions providers/tokensmarket/models/kimi-k2.7-code.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Alibaba Cloud (DashScope) channel. The adapter maps effort "none" to
# `enable_thinking = false` and forwards `reasoning.budget_tokens` as
# `thinking_budget`; Model Studio documents no bounds for the budget on Kimi.
# Matches the declared surface of the DashScope peer providers on this same
# model ID (e.g. alibaba-token-plan/kimi-k2.7-code.toml), which cite
# https://www.alibabacloud.com/help/en/model-studio/kimi-api and
# https://www.alibabacloud.com/help/en/model-studio/deep-thinking for both fields.
base_model = "moonshotai/kimi-k2.7-code"
reasoning_options = [{ type = "toggle" }, { type = "budget_tokens" }]

[interleaved]
field = "reasoning_content"

[cost]
input = 0.768
output = 3.176
cache_read = 0.152
20 changes: 20 additions & 0 deletions providers/tokensmarket/models/kimi-k3.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Alibaba Cloud (DashScope) channel.
# Toggle: `enable_thinking = false` (effort "none") | `enable_thinking = true`.
# Effort: `reasoning_effort = high | max`; low/medium collapse to high and xhigh
# collapses to max on this channel, so only two levels are distinctly reachable.
base_model = "moonshotai/kimi-k3"

[[reasoning_options]]
type = "toggle"

[[reasoning_options]]
type = "effort"
values = ["high", "max"]

[interleaved]
field = "reasoning_content"

[cost]
input = 3.0
output = 15.0
cache_read = 0.3
16 changes: 16 additions & 0 deletions providers/tokensmarket/models/longcat-2.0.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# SiliconFlow.cn channel. The adapter maps effort "none" to
# `enable_thinking = false` and otherwise `enable_thinking = true`. First-party
# LongCat-2.0 documents only `{"thinking": {"type": "enabled"|"disabled"}}` — no
# reasoning budget for this model. `thinking_budget` (128-32,768) is a channel-wide
# dialect field the adapter also supports, but no LongCat-specific evidence backs
# it, so it's left out here.
base_model = "meituan/longcat-2.0"
reasoning_options = [{ type = "toggle" }]

[interleaved]
field = "reasoning_content"

[cost]
input = 0.75
output = 2.95
cache_read = 0.015
Loading
Loading