From 262033ddd0fec06a4e1327c2d634db08f4bb4bbf Mon Sep 17 00:00:00 2001 From: "roomote[bot]" <219738659+roomote[bot]@users.noreply.github.com> Date: Fri, 22 Aug 2025 12:18:55 -0700 Subject: [PATCH] feat: add DeepSeek V3.1 model to Chutes AI provider (#7295) Co-authored-by: Roo Code --- packages/types/src/providers/chutes.ts | 10 ++++++++++ src/api/providers/__tests__/chutes.spec.ts | 22 ++++++++++++++++++++++ 2 files changed, 32 insertions(+) diff --git a/packages/types/src/providers/chutes.ts b/packages/types/src/providers/chutes.ts index 539d251f2a..bdb4a6c8c0 100644 --- a/packages/types/src/providers/chutes.ts +++ b/packages/types/src/providers/chutes.ts @@ -5,6 +5,7 @@ export type ChutesModelId = | "deepseek-ai/DeepSeek-R1-0528" | "deepseek-ai/DeepSeek-R1" | "deepseek-ai/DeepSeek-V3" + | "deepseek-ai/DeepSeek-V3.1" | "unsloth/Llama-3.3-70B-Instruct" | "chutesai/Llama-4-Scout-17B-16E-Instruct" | "unsloth/Mistral-Nemo-Instruct-2407" @@ -60,6 +61,15 @@ export const chutesModels = { outputPrice: 0, description: "DeepSeek V3 model.", }, + "deepseek-ai/DeepSeek-V3.1": { + maxTokens: 32768, + contextWindow: 163840, + supportsImages: false, + supportsPromptCache: false, + inputPrice: 0, + outputPrice: 0, + description: "DeepSeek V3.1 model.", + }, "unsloth/Llama-3.3-70B-Instruct": { maxTokens: 32768, // From Groq contextWindow: 131072, // From Groq diff --git a/src/api/providers/__tests__/chutes.spec.ts b/src/api/providers/__tests__/chutes.spec.ts index 22ac6d67e9..7a6b1aaa70 100644 --- a/src/api/providers/__tests__/chutes.spec.ts +++ b/src/api/providers/__tests__/chutes.spec.ts @@ -163,6 +163,28 @@ describe("ChutesHandler", () => { expect(model.info).toEqual(expect.objectContaining(chutesModels[testModelId])) }) + it("should return DeepSeek V3.1 model with correct configuration", () => { + const testModelId: ChutesModelId = "deepseek-ai/DeepSeek-V3.1" + const handlerWithModel = new ChutesHandler({ + apiModelId: testModelId, + chutesApiKey: "test-chutes-api-key", + }) + const model = handlerWithModel.getModel() + expect(model.id).toBe(testModelId) + expect(model.info).toEqual( + expect.objectContaining({ + maxTokens: 32768, + contextWindow: 163840, + supportsImages: false, + supportsPromptCache: false, + inputPrice: 0, + outputPrice: 0, + description: "DeepSeek V3.1 model.", + temperature: 0.5, // Non-R1 DeepSeek models use default temperature + }), + ) + }) + it("should return Qwen3-235B-A22B-Instruct-2507 model with correct configuration", () => { const testModelId: ChutesModelId = "Qwen/Qwen3-235B-A22B-Instruct-2507" const handlerWithModel = new ChutesHandler({