Which image and video models on Sume have open weights?

Sume's catalog is hosted. Where vendors publish weights for families Sume lists (Qwen-Image, MiniMax H3, FLUX.2) and why a null hugging_face_id proves nothing.

5 min readSume
All posts

Sume does not publish a per-model open-weights flag, so the answer comes from the vendors. Three families on Sume's catalog have weights somewhere on a vendor page: Qwen Image (Apache 2.0 weights for the original Qwen-Image), MiniMax H3 (a community-licensed release, with the Max variant not on the card), and FLUX.2 (only the dev model is open, and it is not the one Sume lists). Wan 3.0 and Ideogram V3 have no weights on the vendor pages I read.

None of that says what Sume runs behind a model id. Sume's docs say upstream provider identity stays internal, so a family having open weights does not mean your call uses them. All vendor facts here were read on 2026-10-03.

Which Sume rows have vendor-published weights?

The table matches Sume's catalog ids from the Image and Video docs against what each vendor's own page shows. "Not found" means not on the page I read, not proof that none exist.

Sume catalog ids against vendor-published weights, read 2026-10-03
Sume idVendor weights on the vendor pageLicence as shownCaveat
qwen/qwen-imageQwen/Qwen-Image on Hugging Face, 20B parameters, released Aug 4 2025Apache 2.0Sume does not say which build serves the id
black-forest-labs/flux.2-pro and flux.2-flexBFL lists pro and flex as API only; FLUX.2 dev is the open-weights modelDev is non-commercial per BFL's pricing pageDev is not a Sume id
ideogram/ideogram-v3Ideogram's Hugging Face organisation lists only Ideogram 4 repositoriesIdeogram 4 is non-commercialV3 weights not found; Ideogram 4 is not a Sume id
minimax-h3MiniMaxAI/MiniMax-H3: 33B parameters, FL2VA and Ref2VA checkpointsMiniMax H3 Community License AgreementSume does not say it runs the released checkpoints
minimax-h3-maxCard lists H3-Base; H3-Regenerate-2K is described as not yet open-sourcedSame community licenceNo Max weights found on the card
wan-3.0Wan-AI organisation lists Wan2.2 models; no Wan 3.0 or 2.7 weightsNo licence shown on the organisation pageThe open family is older than the hosted one

Why is hugging_face_id null on every Sume video model?

The Video docs show each row of GET /v1/videos/models with a hugging_face_id field, and the sample value is null. That field mirrors an OpenRouter field; Sume's catalog leaves it empty. Reading null as "closed model" is wrong: MiniMax H3 has a public card and the field is still empty. Use the vendor's page to answer the weights question, and use the catalog to answer what you can call.

Does the licence on the weights apply to a Sume call?

Generally no, because a hosted call is governed by the terms of the service you use, not by the licence on a download you never made. The weights licence matters when you run the files yourself. The practical exception is a model you chose because of its licence: if you want Apache 2.0 weights so you can fine-tune, a hosted id does not give you that, since Sume's Image API has no field for custom weights.

  • Want to fine-tune: download the weights and host them; Sume cannot take them.
  • Want to ship client work without a licence negotiation: use a hosted id and read the service terms.
  • Want to test before downloading 20B or 33B parameters: call the Sume row for the same family first, accepting that the build may differ.

How do you test an open-weights family before you download it?

Use the hosted row as a probe. It will not match your local build exactly, but it shows whether the family handles your prompts. This script lists the catalog rows that map to the families above, with the fields that matter for a test:

import os
import requests

H = {"Authorization": f"Bearer {os.environ['SUME_API_KEY']}"}
img = requests.get("https://api.sume.com/v1/images/models", headers=H, timeout=30).json()["data"]
vid = requests.get("https://api.sume.com/v1/videos/models", headers=H, timeout=30).json()["data"]
for m in img:
    if any(k in m["id"] for k in ("qwen", "flux", "ideogram")):
        print("image", m["id"])
for m in vid:
    if any(k in m["id"] for k in ("wan", "minimax")):
        print("video", m["id"], m.get("supported_durations"), m.get("hugging_face_id"))

Sources

Related posts

More in Comparisons

All Comparisons posts

Written by Sume