Просмотр исходного кода

feat: add MiniMax M2 model to Fireworks.ai provider (#8962)

Co-authored-by: Roo Code <[email protected]>
roomote[bot] 2 месяцев назад
Родитель
Сommit
d863010673

+ 11 - 0
packages/types/src/providers/fireworks.ts

@@ -3,6 +3,7 @@ import type { ModelInfo } from "../model.js"
 export type FireworksModelId =
 	| "accounts/fireworks/models/kimi-k2-instruct"
 	| "accounts/fireworks/models/kimi-k2-instruct-0905"
+	| "accounts/fireworks/models/minimax-m2"
 	| "accounts/fireworks/models/qwen3-235b-a22b-instruct-2507"
 	| "accounts/fireworks/models/qwen3-coder-480b-a35b-instruct"
 	| "accounts/fireworks/models/deepseek-r1-0528"
@@ -38,6 +39,16 @@ export const fireworksModels = {
 		description:
 			"Kimi K2 is a state-of-the-art mixture-of-experts (MoE) language model with 32 billion activated parameters and 1 trillion total parameters. Trained with the Muon optimizer, Kimi K2 achieves exceptional performance across frontier knowledge, reasoning, and coding tasks while being meticulously optimized for agentic capabilities.",
 	},
+	"accounts/fireworks/models/minimax-m2": {
+		maxTokens: 4096,
+		contextWindow: 204800,
+		supportsImages: false,
+		supportsPromptCache: false,
+		inputPrice: 0.3,
+		outputPrice: 1.2,
+		description:
+			"MiniMax M2 is a high-performance language model with 204.8K context window, optimized for long-context understanding and generation tasks.",
+	},
 	"accounts/fireworks/models/qwen3-235b-a22b-instruct-2507": {
 		maxTokens: 32768,
 		contextWindow: 256000,

+ 21 - 0
src/api/providers/__tests__/fireworks.spec.ts

@@ -115,6 +115,27 @@ describe("FireworksHandler", () => {
 		)
 	})
 
+	it("should return MiniMax M2 model with correct configuration", () => {
+		const testModelId: FireworksModelId = "accounts/fireworks/models/minimax-m2"
+		const handlerWithModel = new FireworksHandler({
+			apiModelId: testModelId,
+			fireworksApiKey: "test-fireworks-api-key",
+		})
+		const model = handlerWithModel.getModel()
+		expect(model.id).toBe(testModelId)
+		expect(model.info).toEqual(
+			expect.objectContaining({
+				maxTokens: 4096,
+				contextWindow: 204800,
+				supportsImages: false,
+				supportsPromptCache: false,
+				inputPrice: 0.3,
+				outputPrice: 1.2,
+				description: expect.stringContaining("MiniMax M2 is a high-performance language model"),
+			}),
+		)
+	})
+
 	it("should return Qwen3 235B model with correct configuration", () => {
 		const testModelId: FireworksModelId = "accounts/fireworks/models/qwen3-235b-a22b-instruct-2507"
 		const handlerWithModel = new FireworksHandler({