feat(providers): add Fireworks AI provider preset#772
Conversation
Add an OpenAI-compatible Fireworks catalog entry with curated coding models, models.dev alias mapping, onboarding tests, and README setup.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (5)
🚧 Files skipped from review as they are similar to previous changes (4)
WalkthroughFireworks AI is added as an OpenAI-compatible runtime provider with a descriptor, curated models, models.dev alias mapping, onboarding test coverage, and README setup instructions. ChangesFireworks AI provider
Estimated code review effort: 2 (Simple) | ~10 minutes Sequence Diagram(s)sequenceDiagram
participant User
participant CLI
participant ProviderCatalog
participant ModelCatalog
User->>CLI: run providers setup fireworks --set-active
CLI->>ProviderCatalog: resolve fireworks descriptor
ProviderCatalog-->>CLI: return endpoint, model, and API key configuration
CLI->>ModelCatalog: resolve curated Fireworks models
ModelCatalog-->>CLI: return provider model list
CLI-->>User: activate Fireworks provider
Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@internal/providermodelcatalog/catalog.go`:
- Around line 114-119: Update the Fireworks catalog entry in the provider model
mapping so the DeepSeek V3 model ID uses
accounts/fireworks/models/deepseek-v3-0324 instead of the current slug, while
preserving its existing description and other model entries.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: ed105ef8-087d-433b-b5a7-ca39a7d2da8c
📒 Files selected for processing (8)
README.mdinternal/cli/provider_catalog_onboarding_test.gointernal/providercatalog/catalog.gointernal/providercatalog/catalog_test.gointernal/providermodelcatalog/catalog.gointernal/providermodelcatalog/catalog_test.gointernal/providermodelcatalog/remote.gointernal/providermodelcatalog/remote_test.go
Keep upstream aimlapi provider ordering while retaining fireworks in expectedCatalogIDs and TransportOpenAICompat expectations.
Update default and catalog model IDs to deepseek-v3-0324 per Fireworks API.
|
Addressed CodeRabbit review: updated Fireworks DeepSeek V3 model ID to |
jatmn
left a comment
There was a problem hiding this comment.
I found issues that need to be addressed before this is ready.
Findings
-
[P1] Use a serverless-capable Fireworks default (and picker models)
internal/providercatalog/catalog.go:141
The documented flow saves this base-model ID and sends normal chat-completions traffic to the serverless/inference/v1endpoint. Fireworks marksaccounts/fireworks/models/deepseek-v3-0324as “Serverless: Not supported”; its on-demand API instead requires a user deployment ID such asaccounts/<account>/deployments/<deployment>. The three new curated fallback models ininternal/providermodelcatalog/catalog.goare also not serverless-capable, so a user who follows the README cannot recover by changing models in the picker. Please select verified serverless model IDs for this ordinary API-key preset, or make the setup explicitly collect/provision a deployment model. -
[P2] Link the required approved parent issue before accepting this external feature PR
CONTRIBUTING.md:72
The PR author is aCONTRIBUTOR, but the PR body and timeline contain no parent issue (and therefore noissue-approvedlabel). The repository policy requires every community PR to link an already-approved issue, and explicitly says PRs opened before that approval are closed without review. Please link the approved issue or obtain the required approval before this proceeds.
Summary
fireworks)fireworks→fireworks-aifor models.dev hydrationTest plan
go test ./internal/providercatalog/ ./internal/providermodelcatalog/ ./internal/cli/ -count=1go veton changed packagesgolangci-lint(unused/ineffassign/staticcheck) — 0 issuesgovulncheck— no vulnerabilitiesexport FIREWORKS_API_KEY=... && zero providers setup fireworks --set-activeSummary by CodeRabbit
FIREWORKS_API_KEYhandling and onboarding setup hints.FIREWORKS_API_KEY.zero providers setup fireworks --set-active.