Add Infersia provider - #3900
Conversation
Action items
|
60de47b to
84ed6f5
Compare
|
Thanks — the ID one was a real bug, and a good catch. All three addressed: 1. [high] Model IDs must be the provider's API IDs — fixed. You're right. I had the provider files under IDs are now 2. [medium] Shared Also correct, and it was a copy from the 32B sibling as you guessed. Both new 3. [medium] Infersia's 14B 16,384 is our served cap, not a copy. From { "id": "qwen/qwen3-14b", "context_length": 131072, "max_completion_tokens": 16384 }For contrast, our own 8B reports Happy to add a sync module if you'd like the data pulled from |
|
No actionable findings. |
84ed6f5 to
85dd792
Compare
Action items
|
85dd792 to
f52463e
Compare
|
Good catch, and a real one — fixed. You're right that Now matches the peers you pointed at: base_model = "stepfun/step-3.7-flash"
base_model_omit = ["limit.input"]I took the omit rather than setting Worth stating why our context is below the others' 262,144, since it is the
|
Adds the Infersia provider with three Qwen3 models and StepFun Step 3.7 Flash, plus shared models/ metadata for Qwen3 14B and 8B, which the catalogue did not have.
f52463e to
898095f
Compare
|
No actionable findings. |
1 similar comment
|
No actionable findings. |
Declares the reasoning controls verified against the live endpoint: `enable_thinking` as a chat-template toggle (thinking defaults off) and the top-level OpenAI `reasoning_effort` field over DeepSeek's published low/high/max levels. On a short prompt, 280 completion tokens with thinking off against 7,972 at max effort. Deliberation is returned on both the streaming and non-streaming paths and billed as completion tokens; `interleaved` is the bare flag because the response field is vLLM's `reasoning`, which the schema's field enum cannot name — claiming reasoning_content would point clients at an empty key. Context is 1_048_576 — the model's full window, larger than the base entry's rounded 1_000_000 — against completions capped at 32_768. Two fixes to the Step 3.7 Flash entry while here. Its base_model_omit justification argued against a 131_072 context since raised to 262_144; the omit is still right, but now because the inherited 256_000 input ceiling sits below the window and would understate what a caller may send. Both entries also named the hardware they run on, which is not something this catalogue records for any other provider.
10b5feb to
f14f24e
Compare
Action items
|
…hs up top The toggle+effort pair on DeepSeek no longer lists "none" — off is the toggle, not an effort level, and the only depth value that verifiably changes anything is "max". Each file using a template kwarg now states the exact wire path in its leading comment block. The provider files are override-only now: reasoning, identical limits and identical modalities restated from the base entries are dropped and inherited through the merge instead. The 3.6-35B modality narrowing (text+image against the base's four) stays, because it is a real delta. The StepFun cost comment read as citing rates the numbers contradicted; it now says plainly that the authored values are Infersia's own, priced under StepFun's published $0.20/$1.15/$0.04.
|
All four addressed in df65ed7. Reasoning shape (DeepSeek): now Override-only: StepFun cost comment: reworded so the numbers and the prose cannot be read against each other — the authored values are Infersia's own rates, deliberately under StepFun's published $0.20/$1.15/$0.04. |
|
No actionable findings. |
anomalyco#3957 factored DeepSeek V4 Flash 0731 into its own lab entry and moved every provider onto it. This still pointed at the April preview and hand-copied name, description and both dates — which is the same override-only violation the review already raised, arriving by a different route: the fields stopped being deltas when the canonical entry started carrying them. Now inherits `deepseek/deepseek-v4-flash-0731` and keeps only what genuinely differs here: the served window, our completion cap, pricing, and the reasoning controls verified against the endpoint. Also merges dev, so the branch is current.
|
OpenRouter already has 14B/8B — checking whether those should use the new lab bases and how they define limits. |
Retired from the live catalogue 2026-08-06; the feed at /v1/models no longer returns it, so the entry would advertise a model the provider does not serve. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
Pushed 68a58f5 dropping |
|
No actionable findings. |
Adds Infersia as a provider, with the four models we serve, plus shared
models/metadata entries for Qwen3 14B and 8B, which the catalogue does nothave yet.
Infersia is an OpenAI-compatible inference API serving open-weight models with
prepaid per-token billing. Endpoint
https://api.infersia.com/v1, docs athttps://infersia.com/docs.
What this adds
providers/infersia/provider.tomlproviders/infersia/logo.svgcurrentColor, square viewBox, no fixed sizeproviders/infersia/models/qwen/qwen3.6-35b-a3b.tomlproviders/infersia/models/qwen/qwen3-14b.tomlproviders/infersia/models/qwen/qwen3-8b.tomlmodels/alibaba/qwen3-14b.tomlmodels/alibaba/qwen3-8b.tomlThe two new
models/entries follow the shape of the existingmodels/alibaba/qwen3-32b.toml, including itsknowledge = "2025-04"convention, so the three sibling Qwen3 dense models stay consistent.
Note the two directories are keyed differently on purpose:
models/by the labthat trained the weights (
alibaba), andproviders/infersia/models/by the IDour own API answers to (
qwen), matching how OpenRouter files the same models.Pricing and limits
USD per million tokens, matching what our
/v1/modelspublishes:Sources: https://infersia.com/models/qwen/qwen3.6-35b-a3b,
https://infersia.com/models/qwen/qwen3-14b,
https://infersia.com/models/qwen/qwen3-8b, and
https://api.infersia.com/v1/models for the limits. Each TOML repeats its
sources in a top-of-file comment.
The 35B provider entry overrides
[limit]: the base entry declaresoutput = 65_536, we cap completions at 32,768.reasoning_optionsAll three are Qwen3 hybrid-thinking models. We expose the standard toggle, so
each entry declares it with the request syntax as a comment:
Infersia defaults thinking off, so an ordinary chat turn does not spend
several hundred unrequested reasoning tokens; an explicit
chat_template_kwargsis passed through untouched. Verified in both directions against production —
default returns no reasoning content,
enable_thinking: truereturns it.Modalities
The 35B is listed as
["text", "image"]. Its base entry also carries video andaudio: the weights support them, our endpoint does not accept them, so the
provider entry narrows the list. Image input is verified end to end — the model
answers correctly and vLLM reports
multimodal_tokens: {image: 64}, which wemeter and bill.
The 14B and 8B are text-only.
Verification
bun validatepasses on a clean checkout with these files applied.through
@ai-sdk/openai-compatible, the package declared inprovider.toml.alibaba/…ids resolve on our API, so an id copied from models.dev worksas-is; unknown slugs still return
model_not_found.Happy to add a sync module if you would like one —
/v1/modelspublishescontext, output ceiling, pricing and modalities, so it could populate these
authoritatively. It seemed premature for three hand-authored models.