-
Notifications
You must be signed in to change notification settings - Fork 40
feat(catalog): add Meta's muse-spark-1.1 as a direct provider #774
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -324,6 +324,19 @@ var Models = []Model{ | |||||||||||||||||||||||
| {Provider: providers.ProviderGoogle, UpstreamID: "gemma-4-26b-a4b-it", Price: Pricing{InputUSDPer1M: 0.15, OutputUSDPer1M: 0.60, CacheReadMultiplier: 0.10}}, | ||||||||||||||||||||||||
| }}, | ||||||||||||||||||||||||
|
|
||||||||||||||||||||||||
| // --- Meta --- Muse Spark 1.1, GA 2026-07-09 (Meta's first paid model, | ||||||||||||||||||||||||
| // Meta Model API public preview, US-only). Bare ID (not "meta/"-prefixed): | ||||||||||||||||||||||||
| // direct first-party API like Anthropic/OpenAI/Google/xAI, not an | ||||||||||||||||||||||||
| // aggregator-hosted OSS entry. Native 1M context (Meta docs list | ||||||||||||||||||||||||
| // 1,048,576). Strong agentic/tool-use, mid-pack coding (SWE-Bench Pro | ||||||||||||||||||||||||
| // 61.5 vs opus-4.8's 69.2) — priced accordingly below the high tier's | ||||||||||||||||||||||||
| // flagships. Meta is the only wired provider (first-party, no OpenRouter | ||||||||||||||||||||||||
| // fallback yet); add one if/when it earns roster traffic. | ||||||||||||||||||||||||
|
Comment on lines
+327
to
+334
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
Was 8 lines; SWE-bench scores and context-window verbosity don't belong in catalog source. The genuine WHYs (bare-ID convention, single-provider note) fit in 3. |
||||||||||||||||||||||||
| {ID: "muse-spark-1.1", Tier: TierHigh, ContextWindow: 1_048_576, Providers: []ProviderBinding{ | ||||||||||||||||||||||||
| {Provider: providers.ProviderMeta, | ||||||||||||||||||||||||
| Price: Pricing{InputUSDPer1M: 1.25, OutputUSDPer1M: 4.25, CacheReadMultiplier: 0.15 / 1.25}}, | ||||||||||||||||||||||||
| }}, | ||||||||||||||||||||||||
|
|
||||||||||||||||||||||||
| // --- OSS pool --- | ||||||||||||||||||||||||
| // | ||||||||||||||||||||||||
| // Each row carries an ordered Providers list. Managed-prod ships only the | ||||||||||||||||||||||||
|
|
||||||||||||||||||||||||
| Original file line number | Diff line number | Diff line change | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -167,6 +167,14 @@ var registry = map[string]ModelSpec{ | |||||||||||||||||
| // rejects stop / presence / frequency penalties (CapReasoning strips stop). | ||||||||||||||||||
| "grok-4.5": openaiReasoning, | ||||||||||||||||||
|
|
||||||||||||||||||
| // muse-spark-1.1: OpenAI-compat reasoning_effort, mandatory (cannot | ||||||||||||||||||
| // disable), supports minimal/low/medium/high/xhigh upstream — but neither | ||||||||||||||||||
| // tier is in router.ReasoningCapabilities.Levels' ordered vocabulary yet, | ||||||||||||||||||
| // so it shares openaiReasoning's low/medium/high; a request for xhigh or | ||||||||||||||||||
| // minimal clamps to the nearest of those (nearestReasoningLevel) rather | ||||||||||||||||||
| // than 400ing. | ||||||||||||||||||
|
Comment on lines
+170
to
+175
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
Was 6 lines; "OpenAI-compat" and the registry/vocabulary detail are noise — the only non-obvious fact is the clamp-not-400 behavior. |
||||||||||||||||||
| "muse-spark-1.1": openaiReasoning, | ||||||||||||||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Missing max-output token capHigh Severity
Reviewed by Cursor Bugbot for commit ace3832. Configure here. |
||||||||||||||||||
|
|
||||||||||||||||||
| "gpt-5.4": openaiReasoning, | ||||||||||||||||||
| "gpt-5.4-pro": openaiReasoning, | ||||||||||||||||||
| "gpt-5.4-mini": openaiReasoning, | ||||||||||||||||||
|
|
||||||||||||||||||
| Original file line number | Diff line number | Diff line change | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -46,6 +46,10 @@ var defaultMechanismProviders = map[string]struct{}{ | |||||||||
| providers.ProviderFireworks: {}, | ||||||||||
| providers.ProviderMakora: {}, | ||||||||||
| providers.ProviderTogether: {}, | ||||||||||
| // Meta's docs advertise prompt caching but don't document a stickiness | ||||||||||
| // header (unlike xAI's x-grok-conv-id) — generic x-session-affinity is | ||||||||||
| // the safe default until proven otherwise. | ||||||||||
|
Comment on lines
+49
to
+51
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
Was 3 lines; the WHY fits in one. |
||||||||||
| providers.ProviderMeta: {}, | ||||||||||
| } | ||||||||||
|
|
||||||||||
| // TestSessionAffinityCoversEveryOpenAICompatProvider guards against a new | ||||||||||
|
|
||||||||||


There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Was 4 lines; the last 2 restate what the constant name and value already show (OpenAI-compat surface, no ID rewrite needed).