catwalk icon indicating copy to clipboard operation
catwalk copied to clipboard

Provider request: Synthetic.new

Open TheSingular opened this issue 2 months ago • 10 comments

Description

I'd like to request support for Synthetic.new, a platform that runs open source LLMs, including GLM-4.6, Kimi K2 and MiniMax-M2.

Here's the link to the website: https://synthetic.new/

And here's the link to the API docs: https://dev.synthetic.new/docs/api/overview

TheSingular avatar Oct 27 '25 11:10 TheSingular

I'll add the relevant provider entries here (I had help from crush itself to make it):

crush-synthetic-anthropic.json crush-synthetic-openai.json

TheSingular avatar Oct 27 '25 12:10 TheSingular

#100 #99 I add the relevant stuff and add a provider, that said mine are definitely different as I lowered the max token amount. Perhaps I should increase it as what I have is more similar to a chat, that said if you fill the entire window up thhe model will just error out, so not sure if there is a huge point to using the max token to the context limit.

Diogenesoftoronto avatar Oct 31 '25 23:10 Diogenesoftoronto

When I prepared those with the help of crush, it set all default_max_tokens parameters to 4096. I manually set them to the context model itself so as not to be limited. Actual parameters can be taken from other providers hosting the same models.

Also, the "hf:" prefix for model ids is a requirement with synthetic, it won't work without that. Finally, I'll update the json files I've uploaded here soon, a few things have changed since.

Edit: The only two exceptions to this are GLM-4.6 and Minimax-M2. Those two are limited to 64k output tokens by synthetic itself.

TheSingular avatar Nov 01 '25 04:11 TheSingular

@Diogenesoftoronto Just letting you know that I have updated the provider files above.

TheSingular avatar Nov 01 '25 18:11 TheSingular

Noted. Saw you working on it in the synthetic discord.

Diogenesoftoronto avatar Nov 01 '25 20:11 Diogenesoftoronto

Apparently I have forgotten to fix the openai endpoint (type was mistakenly written as "openai" instead of "openai-compat) on this file

Fixed now.

TheSingular avatar Nov 01 '25 20:11 TheSingular

I used the openai-compat file that you provided and set the issue ready for review. Thanks for the work! @TheSingular

Diogenesoftoronto avatar Nov 04 '25 22:11 Diogenesoftoronto

You too!

TheSingular avatar Nov 04 '25 22:11 TheSingular

It's been merged, though I'd note that Kimi K2 Thinking is mislabeled with a duplicate Kimi K2 Instruct name 👀

Kaylebor avatar Nov 15 '25 11:11 Kaylebor

It's been merged, though I'd note that Kimi K2 Thinking is mislabeled with a duplicate Kimi K2 Instruct name 👀

https://github.com/charmbracelet/catwalk/pull/103

Diogenesoftoronto avatar Nov 16 '25 06:11 Diogenesoftoronto

One other thing: Synthetic has a /models endpoint which lists their always-on models (as well as on-demand models the current account may have used recently). Can Catwalk leverage this?

Kaylebor avatar Dec 09 '25 15:12 Kaylebor

FYI: The /models endpoint is a recent addition that did not exist at the time of the original request.

TheSingular avatar Dec 09 '25 15:12 TheSingular

FYI: The /models endpoint is a recent addition that did not exist at the time of the original request.

True. Maybe this would fit better in a new request then, and leave this one for general provider JSON tracking instead.

Kaylebor avatar Dec 12 '25 08:12 Kaylebor